2017-02-23 21:06:49 +03:00
|
|
|
(Program
|
|
|
|
(Module
|
|
|
|
(Identifier))
|
|
|
|
(Function
|
|
|
|
(Identifier)
|
2017-03-29 23:03:28 +03:00
|
|
|
(Args)
|
2017-02-23 21:06:49 +03:00
|
|
|
{+(For
|
|
|
|
(FunctionCall
|
|
|
|
(Identifier))
|
|
|
|
(Other "goto_statement"
|
|
|
|
(Identifier)))+}
|
|
|
|
{+(For
|
|
|
|
(Other "expression_list"
|
|
|
|
(Identifier))
|
|
|
|
(Identifier)
|
|
|
|
(FunctionCall
|
|
|
|
(Identifier))
|
|
|
|
(Break
|
|
|
|
(Identifier)))+}
|
|
|
|
{+(For
|
|
|
|
(FunctionCall
|
|
|
|
(Identifier))
|
|
|
|
(Continue
|
|
|
|
(Identifier)))+}
|
|
|
|
{+(For
|
|
|
|
(RelationalOperator
|
|
|
|
(Identifier)
|
|
|
|
(NumberLiteral))
|
|
|
|
(IncrementStatement)
|
|
|
|
(FunctionCall
|
|
|
|
(Identifier))
|
|
|
|
(Continue))+}
|
|
|
|
(For
|
|
|
|
(ExpressionStatements
|
|
|
|
(FunctionCall
|
|
|
|
(Identifier)
|
|
|
|
{+(Identifier)+})
|
|
|
|
{+(Break)+}
|
|
|
|
{-(Other "goto_statement"
|
|
|
|
(Identifier))-}))
|
|
|
|
{-(For
|
|
|
|
(VarDecl
|
|
|
|
(Other "expression_list"
|
|
|
|
(Identifier))
|
|
|
|
(Other "expression_list"
|
|
|
|
(NumberLiteral)))
|
|
|
|
(RelationalOperator
|
|
|
|
(Identifier)
|
|
|
|
(NumberLiteral))
|
|
|
|
(IncrementStatement)
|
|
|
|
(FunctionCall
|
|
|
|
(Identifier))
|
|
|
|
(Break
|
|
|
|
(Identifier)))-}
|
|
|
|
{-(For
|
|
|
|
(RelationalOperator
|
|
|
|
(Identifier)
|
|
|
|
(NumberLiteral))
|
|
|
|
(IncrementStatement)
|
|
|
|
(FunctionCall
|
|
|
|
(Identifier))
|
|
|
|
(Continue
|
|
|
|
(Identifier)))-}
|
|
|
|
{-(For
|
|
|
|
(FunctionCall
|
|
|
|
(Identifier))
|
|
|
|
(Continue))-}
|
|
|
|
{-(For
|
|
|
|
(Other "expression_list"
|
|
|
|
(Identifier))
|
|
|
|
(Identifier)
|
|
|
|
(FunctionCall
|
|
|
|
(Identifier)
|
|
|
|
(Identifier))
|
2017-02-24 19:44:03 +03:00
|
|
|
(Break))-}))
|