Exemplo n.º 1
0
 public bool ParseMatch(TokenReader tr, SyntaxTree.Node node)
 {
     if (tr.Peek()?.type == this)
     {
         tr.Next();
         if (createNode)
         {
             node.AddChild(new SyntaxTree.Node(this, tr.Current.value));
         }
         return(true);
     }
     return(false);
 }
Exemplo n.º 2
0
        public bool ParseMatch(TokenReader tr, SyntaxTree.Node node)
        {
            var n = createNode ? new SyntaxTree.Node(this, "") : node;

            for (int i = 0; i < patterns.Length; i++)
            {
                if (patterns[i].Match(tr, n))
                {
                    if (createNode)
                    {
                        node.AddChild(n);
                    }
                    return(true);
                }
            }
            return(false);
        }