Пример #1
0
        public override SyntaxNode GetStructure(Microsoft.CodeAnalysis.SyntaxTrivia trivia)
        {
            if (trivia.HasStructure)
            {
                var parent = trivia.Token.Parent;
                if (parent != null)
                {
                    SyntaxNode structure;
                    var        structsInParent = s_structuresTable.GetOrCreateValue(parent);
                    lock (structsInParent)
                    {
                        if (!structsInParent.TryGetValue(trivia, out structure))
                        {
                            structure = CSharp.Syntax.StructuredTriviaSyntax.Create(trivia);
                            structsInParent.Add(trivia, structure);
                        }
                    }

                    return(structure);
                }
                else
                {
                    return(CSharp.Syntax.StructuredTriviaSyntax.Create(trivia));
                }
            }

            return(null);
        }
Пример #2
0
        public override void VisitTrivia(Microsoft.CodeAnalysis.SyntaxTrivia trivia)
        {
            var    st = trivia.SyntaxTree;
            string s  = trivia.ToString();
            var    p  = trivia.GetLocation();

            if (!String.IsNullOrWhiteSpace(trivia.ToString()))
            {
                if (_targetPatternRegEx.Match(trivia.ToString()).Success)
                {
                    Messages.AppendLine(String.Format("{0} >{1}<",
                                                      //GetNodeContext(trivia.SyntaxTree),
                                                      "",
                                                      trivia.ToString()));
                }
            }

            // Call base to visit children

            base.VisitTrivia(trivia);
        }
Пример #3
0
 public SuspectTrivia(SyntaxTrivia trivia, List <Cue> cues)
 {
     Trivia = trivia;
     Cues   = cues;
 }
Пример #4
0
 public override SyntaxTrivia VisitTrivia(SyntaxTrivia trivia)
 {
     if (_rejects.Contains(trivia.SpanStart))
     {
         return(default);