public Node expr_mul() { //Console.WriteLine("expr_mul"); Node expr_pow_ = expr_pow(); if (CurrentToken == TokenCategory.TIMES || CurrentToken == TokenCategory.DIV || CurrentToken == TokenCategory.REM) { //Console.WriteLine("while10"); var mul = new Mul_(); var r = op_mul(); mul.AnchorToken = r; mul.Add(expr_pow_); mul.Add(expr_pow()); return(mul); } return(expr_pow_); }
public string Visit(Mul_ node, int modo) { var str = ""; str = str + Visit((dynamic)node[0], 4) + "\n"; str = str + Visit((dynamic)node[1], 4) + "\n"; if (node.AnchorToken.lexeme == "/") { str = "\t\tdiv\n"; } else if (node.AnchorToken.lexeme == "*") { str = str + "\t\tmul\n"; } else if (node.AnchorToken.lexeme == "%") { str = str + "\t\trem\n"; } return(str); }
public void Visit(Mul_ node, int modo) { VisitChildren(node, modo); }