public PullThroughInfo(
     ISymbol targetMember,
     CancellationToken cancellation)
 {
     _targetMember = targetMember;
     _cancellation = cancellation;
     _targetMemberTriviaProvider = new SourceCodeSyntaxTriviaProvider(_targetMember, cancellation);
 }
        public SyntaxTriviaList GetBaseMemberTrivia()
        {
            if (!_lazyBaseMemberTrivia.HasValue)
            {
                if (!SupportsPullingThroughDoc())
                {
                    return(new SyntaxTriviaList());
                }

                var summaryDoc = GetBaseSummaryDocSymbol();
                if (summaryDoc == null)
                {
                    return(new SyntaxTriviaList());
                }
                SyntaxTriviaProvider prov = GetTriviaProviderForSymbol(summaryDoc);
                _lazyBaseMemberTrivia = prov.GetSyntaxTrivia();
            }

            return(_lazyBaseMemberTrivia.Value);
        }