def p_for(self, p): 'loop_i : FOR LPAREN assign_e SEMICOLON expr SEMICOLON assign_e RPAREN instr' pre = syntax.evaluation(p[3]) mid = p[5] post = syntax.evaluation(p[7]) body = p[9] p[0] = syntax.block_statement([pre, syntax.while_loop(mid, post, body, p.lexpos(1))])
def p_complex_i(self, p): 'complex_i : LBRACE i_list RBRACE' p[0] = syntax.block_statement(p[2])