Example #1
0
 public Node LoopStatement()
 {
     var loop_node = new Loop_Statement()
     {
         AnchorToken = Expect(TokenCategory.LOOP)
     };
     loop_node.Add(ZeroOrMore(firstOfStatement, Statement));
     Expect(TokenCategory.END);
     Expect(TokenCategory.SEMICOLON);
     return loop_node;
 }
Example #2
0
        public Node LoopStatement()
        {
            var loopNode = new Loop_Statement()
            {
                AnchorToken = Expect(TokenCategory.LOOP)
            };
            var stmtList = new Statement_List();

            while (firstOfStatement.Contains(CurrentToken))
            {
                stmtList.Add(Statement());
            }

            Expect(TokenCategory.END);
            Expect(TokenCategory.EOL);

            loopNode.Add(stmtList);
            return(loopNode);
        }