public override SyntaxNode VisitXmlDeclarationOption(XmlDeclarationOptionSyntax node)
        {
            bool anyChanges = false;
            var  newName    = ((XmlNameTokenSyntax)Visit(node.Name));

            if (node.Name != newName)
            {
                anyChanges = true;
            }

            var newEquals = ((PunctuationSyntax)Visit(node.Equals));

            if (node.Equals != newEquals)
            {
                anyChanges = true;
            }

            var newValue = ((XmlStringSyntax)Visit(node.Value));

            if (node.Value != newValue)
            {
                anyChanges = true;
            }

            if (anyChanges)
            {
                return(new XmlDeclarationOptionSyntax(node.Kind, newName, newEquals, newValue));
            }
            else
            {
                return(node);
            }
        }
 public XmlDeclarationSyntax(SyntaxKind kind,
     PunctuationSyntax lessThanQuestionToken,
     SyntaxToken xmlKeyword,
     XmlDeclarationOptionSyntax version,
     XmlDeclarationOptionSyntax encoding,
     XmlDeclarationOptionSyntax standalone,
     PunctuationSyntax questionGreaterThanToken)
     : base(kind)
 {
     this.SlotCount = 6;
     this.LessThanQuestionToken = lessThanQuestionToken;
     this.XmlKeyword = xmlKeyword;
     this.Version = version;
     this.Encoding = encoding;
     this.Standalone = standalone;
     this.QuestionGreaterThanToken = questionGreaterThanToken;
 }
Exemple #3
0
 public XmlDeclarationSyntax(SyntaxKind kind,
                             PunctuationSyntax lessThanQuestionToken,
                             SyntaxToken xmlKeyword,
                             XmlDeclarationOptionSyntax version,
                             XmlDeclarationOptionSyntax encoding,
                             XmlDeclarationOptionSyntax standalone,
                             PunctuationSyntax questionGreaterThanToken)
     : base(kind)
 {
     this.SlotCount             = 6;
     this.LessThanQuestionToken = lessThanQuestionToken;
     this.XmlKeyword            = xmlKeyword;
     this.Version    = version;
     this.Encoding   = encoding;
     this.Standalone = standalone;
     this.QuestionGreaterThanToken = questionGreaterThanToken;
 }
Exemple #4
0
        /*  <summary>
         * ''' Represents an XML document prologue option - version, encoding, standalone or
         * ''' whitespace in an XML literal expression.
         * ''' </summary>
         */
        public static XmlDeclarationOptionSyntax XmlDeclarationOption(XmlNameTokenSyntax name, PunctuationSyntax equals, XmlStringSyntax value)
        {
            Debug.Assert(name != null && name.Kind == SyntaxKind.XmlNameToken);
            Debug.Assert(equals != null && equals.Kind == SyntaxKind.EqualsToken);
            Debug.Assert(value != null);
            //int hash;
            //var cached = SyntaxNodeCache.TryGetNode(SyntaxKind.XmlDeclarationOption, _factoryContext, name, equals, value, hash);
            //if (cached != null)
            //{
            //    return ((XmlDeclarationOptionSyntax)cached);
            //}

            var result = new XmlDeclarationOptionSyntax(SyntaxKind.XmlDeclarationOption, name, equals, value);

            //if (hash >= 0)
            //{
            //    SyntaxNodeCache.AddNode(result, hash);
            //}

            return(result);
        }
Exemple #5
0
 /*  <summary>
  * ''' Represents the XML declaration prologue in an XML literal expression.
  * ''' </summary>
  */
 public static XmlDeclarationSyntax XmlDeclaration(PunctuationSyntax lessThanQuestionToken, SyntaxToken xmlKeyword, XmlDeclarationOptionSyntax version, XmlDeclarationOptionSyntax encoding, XmlDeclarationOptionSyntax standalone, PunctuationSyntax questionGreaterThanToken)
 {
     Debug.Assert(lessThanQuestionToken != null && lessThanQuestionToken.Kind == SyntaxKind.LessThanQuestionToken);
     //Debug.Assert(xmlKeyword != null && xmlKeyword.Kind == SyntaxKind.XmlKeyword);
     Debug.Assert(version != null);
     Debug.Assert(questionGreaterThanToken != null && questionGreaterThanToken.Kind == SyntaxKind.QuestionGreaterThanToken);
     return((XmlDeclarationSyntax) new XmlDeclarationSyntax.Green(lessThanQuestionToken?.GreenNode, xmlKeyword?.GreenNode, version?.GreenNode, encoding?.GreenNode, standalone?.GreenNode, questionGreaterThanToken.GreenNode).CreateRed());
 }
Exemple #6
0
 public virtual SyntaxNode VisitXmlDeclarationOption(XmlDeclarationOptionSyntax node)
 {
     return(VisitSyntaxNode(node));
 }
Exemple #7
0
 /*  <summary>
  * ''' Represents the XML declaration prologue in an XML literal expression.
  * ''' </summary>
  */
 public static XmlDeclarationSyntax XmlDeclaration(PunctuationSyntax lessThanQuestionToken, SyntaxToken xmlKeyword, XmlDeclarationOptionSyntax version, XmlDeclarationOptionSyntax encoding, XmlDeclarationOptionSyntax standalone, PunctuationSyntax questionGreaterThanToken)
 {
     Debug.Assert(lessThanQuestionToken != null && lessThanQuestionToken.Kind == SyntaxKind.LessThanQuestionToken);
     //Debug.Assert(xmlKeyword != null && xmlKeyword.Kind == SyntaxKind.XmlKeyword);
     Debug.Assert(version != null);
     Debug.Assert(questionGreaterThanToken != null && questionGreaterThanToken.Kind == SyntaxKind.QuestionGreaterThanToken);
     return(new XmlDeclarationSyntax(SyntaxKind.XmlDeclaration, lessThanQuestionToken, xmlKeyword, version, encoding, standalone, questionGreaterThanToken));
 }
 public virtual SyntaxNode VisitXmlDeclarationOption(XmlDeclarationOptionSyntax node)
 {
     return VisitSyntaxNode(node);
 }
 /*  <summary>
 ''' Represents the XML declaration prologue in an XML literal expression.
 ''' </summary>
 */
 internal static XmlDeclarationSyntax XmlDeclaration(PunctuationSyntax lessThanQuestionToken, SyntaxToken xmlKeyword, XmlDeclarationOptionSyntax version, XmlDeclarationOptionSyntax encoding, XmlDeclarationOptionSyntax standalone, PunctuationSyntax questionGreaterThanToken)
 {
     Debug.Assert(lessThanQuestionToken != null && lessThanQuestionToken.Kind == SyntaxKind.LessThanQuestionToken);
     //Debug.Assert(xmlKeyword != null && xmlKeyword.Kind == SyntaxKind.XmlKeyword);
     Debug.Assert(version != null);
     Debug.Assert(questionGreaterThanToken != null && questionGreaterThanToken.Kind == SyntaxKind.QuestionGreaterThanToken);
     return new XmlDeclarationSyntax(SyntaxKind.XmlDeclaration, lessThanQuestionToken, xmlKeyword, version, encoding, standalone, questionGreaterThanToken);
 }
        /*  <summary>
        ''' Represents an XML document prologue option - version, encoding, standalone or
        ''' whitespace in an XML literal expression.
        ''' </summary>
        */
        internal static XmlDeclarationOptionSyntax XmlDeclarationOption(XmlNameTokenSyntax name, PunctuationSyntax equals, XmlStringSyntax value)
        {
            Debug.Assert(name != null && name.Kind == SyntaxKind.XmlNameToken);
            Debug.Assert(equals != null && equals.Kind == SyntaxKind.EqualsToken);
            Debug.Assert(value != null);
            //int hash;
            //var cached = SyntaxNodeCache.TryGetNode(SyntaxKind.XmlDeclarationOption, _factoryContext, name, equals, value, hash);
            //if (cached != null)
            //{
            //    return ((XmlDeclarationOptionSyntax)cached);
            //}

            var result = new XmlDeclarationOptionSyntax(SyntaxKind.XmlDeclarationOption, name, equals, value);
            //if (hash >= 0)
            //{
            //    SyntaxNodeCache.AddNode(result, hash);
            //}

            return result;
        }