Inheritance: Microsoft.Language.Xml.XmlNodeSyntax, IXmlElement
コード例 #1
0
        public override SyntaxNode VisitXmlDocument(XmlDocumentSyntax node)
        {
            bool anyChanges     = false;
            var  newDeclaration = ((XmlDeclarationSyntax)Visit(node.Prologue));

            if (node.Prologue != newDeclaration)
            {
                anyChanges = true;
            }

            var newPrecedingMisc = VisitList <SyntaxNode>(node.PrecedingMisc);

            if (node.PrecedingMisc.Node != newPrecedingMisc.Node)
            {
                anyChanges = true;
            }

            var newRoot = ((XmlNodeSyntax)Visit(node.Body));

            if (node.Body != newRoot)
            {
                anyChanges = true;
            }

            var newFollowingMisc = VisitList <SyntaxNode>(node.FollowingMisc);

            if (node.FollowingMisc.Node != newFollowingMisc.Node)
            {
                anyChanges = true;
            }

            var newEof = VisitSyntaxToken(node.Eof);

            if (node.Eof != newEof)
            {
                anyChanges = true;
            }

            var newSkippedTokens = ((SkippedTokensTriviaSyntax)VisitSkippedTokensTrivia(node.SkippedTokens));

            if (node.SkippedTokens != newSkippedTokens)
            {
                anyChanges = true;
            }

            if (anyChanges)
            {
                return(XmlDocument(
                           newDeclaration,
                           newPrecedingMisc.Node,
                           newRoot,
                           newFollowingMisc.Node,
                           newSkippedTokens,
                           newEof));
            }
            else
            {
                return(node);
            }
        }
コード例 #2
0
ファイル: SyntaxVisitor.cs プロジェクト: trueouter/XmlParser
 public virtual SyntaxNode VisitXmlDocument(XmlDocumentSyntax node)
 {
     return(VisitXmlNode(node));
 }
コード例 #3
0
 public virtual SyntaxNode VisitXmlDocument(XmlDocumentSyntax node)
 {
     return VisitXmlNode(node);
 }