コード例 #1
0
 public SyntaxTree(Uri fileUri, ImmutableArray <int> lineStarts, ProgramSyntax programSyntax)
 {
     FileUri       = fileUri;
     LineStarts    = lineStarts;
     ProgramSyntax = programSyntax;
     Hierarchy     = new SyntaxHierarchy();
     Hierarchy.AddRoot(ProgramSyntax);
 }
コード例 #2
0
        protected virtual SyntaxBase ReplaceProgramSyntax(ProgramSyntax syntax)
        {
            var hasChanges = TryRewrite(syntax.Children, out var children);

            hasChanges |= TryRewriteStrict(syntax.EndOfFile, out var endOfFile);

            if (!hasChanges)
            {
                return(syntax);
            }

            return(new ProgramSyntax(children, endOfFile, Enumerable.Empty <IDiagnostic>()));
        }
コード例 #3
0
 void ISyntaxVisitor.VisitProgramSyntax(ProgramSyntax syntax) => ReplaceCurrent(syntax, ReplaceProgramSyntax);
コード例 #4
0
 public virtual void VisitProgramSyntax(ProgramSyntax syntax)
 {
     this.VisitNodes(syntax.Children);
     this.Visit(syntax.EndOfFile);
 }
コード例 #5
0
ファイル: SyntaxTree.cs プロジェクト: rwsanders/bicep
 public SyntaxTree(string filePath, ImmutableArray <int> lineStarts, ProgramSyntax programSyntax)
 {
     FilePath      = filePath;
     LineStarts    = lineStarts;
     ProgramSyntax = programSyntax;
 }
コード例 #6
0
ファイル: SyntaxVisitor.cs プロジェクト: steeleprice/bicep
 public virtual void VisitProgramSyntax(ProgramSyntax syntax)
 {
     this.VisitNodes(syntax.Statements);
     this.Visit(syntax.EndOfFile);
 }
コード例 #7
0
ファイル: SyntaxTree.cs プロジェクト: ikemerrix/bicep
 public SyntaxTree(Uri fileUri, ImmutableArray <int> lineStarts, ProgramSyntax programSyntax)
 {
     FileUri       = fileUri;
     LineStarts    = lineStarts;
     ProgramSyntax = programSyntax;
 }