示例#1
0
            public TwoEnumeratorListStack(SyntaxNode startingNode, Func <SyntaxNode, bool> descendIntoChildren)
            {
                _nodeStack   = new ChildSyntaxListEnumeratorStack(startingNode, descendIntoChildren);
                _triviaStack = new TriviaListEnumeratorStack();
                if (_nodeStack.IsNotEmpty)
                {
                    _discriminatorStack = ArrayBuilder <Which> .GetInstance();

                    _discriminatorStack.Push(Which.Node);
                }
                else
                {
                    _discriminatorStack = null;
                }
            }
            public ThreeEnumeratorListStack(SyntaxNode startingNode, Func <SyntaxNode, bool> descendIntoChildren)
            {
                this.triviaStack = new TriviaListEnumeratorStack();
                this.nodeStack   = new ChildSyntaxListEnumeratorStack(startingNode, descendIntoChildren);
                if (this.nodeStack.IsNotEmpty)
                {
                    this.tokenStack = ArrayBuilder <SyntaxNodeOrToken> .GetInstance();

                    this.discriminatorStack = ArrayBuilder <Which> .GetInstance();

                    this.discriminatorStack.Push(Which.Node);
                }
                else
                {
                    this.tokenStack         = null;
                    this.discriminatorStack = null;
                }
            }
示例#3
0
 public ThreeEnumeratorListStack(SyntaxNode startingNode, Func<SyntaxNode, bool> descendIntoChildren)
 {
     this.triviaStack = new TriviaListEnumeratorStack();
     this.nodeStack = new ChildSyntaxListEnumeratorStack(startingNode, descendIntoChildren);
     if (this.nodeStack.IsNotEmpty)
     {
         this.tokenStack = ArrayBuilder<SyntaxNodeOrToken>.GetInstance();
         this.discriminatorStack = ArrayBuilder<Which>.GetInstance();
         this.discriminatorStack.Push(Which.Node);
     }
     else
     {
         this.tokenStack = null;
         this.discriminatorStack = null;
     }
 }
示例#4
0
 public TwoEnumeratorListStack(SyntaxNode startingNode, Func<SyntaxNode, bool> descendIntoChildren)
 {
     _nodeStack = new ChildSyntaxListEnumeratorStack(startingNode, descendIntoChildren);
     _triviaStack = new TriviaListEnumeratorStack();
     if (_nodeStack.IsNotEmpty)
     {
         _discriminatorStack = ArrayBuilder<Which>.GetInstance();
         _discriminatorStack.Push(Which.Node);
     }
     else
     {
         _discriminatorStack = null;
     }
 }