Exemplo n.º 1
0
        public string Visit(Unary_ 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 = str + "\t\tadd\n";
            }
            else if (node.AnchorToken.lexeme == "-")
            {
                str = str + "\t\tsub\n";
            }
            return(str);
        }
Exemplo n.º 2
0
        public Node expr_unary()
        {
            //Console.WriteLine("expr_unitary");
            Node expr_primary_ = expr_primary();

            if (CurrentToken == TokenCategory.PLUS || CurrentToken == TokenCategory.MINUS || CurrentToken == TokenCategory.EXCLAMATION || CurrentToken == TokenCategory.FLOW)
            {
                //Console.WriteLine("while12");
                var unary = new Unary_();
                var r     = op_unary();
                unary.AnchorToken = r;
                unary.Add(expr_primary_);
                unary.Add(expr_primary());
                return(unary);
            }
            return(expr_primary_);
        }
Exemplo n.º 3
0
 public void Visit(Unary_ node, int modo)
 {
     //Console.WriteLine("en unary  "+modo);
     VisitChildren(node, modo);
 }