Exemplo n.º 1
0
        private Expression addition()
        {
            Expression e = multiplication();

            while (true)
            {
                if (isEquals(TokenType.ADD))
                {
                    e = new BinaryOP('+', e, multiplication());
                    continue;
                }
                if (isEquals(TokenType.SUB))
                {
                    e = new BinaryOP('-', e, multiplication());
                    continue;
                }
                break;
            }
            return(e);
        }
Exemplo n.º 2
0
        private Expression multiplication()
        {
            Expression e = unaryOP();

            while (true)
            {
                if (isEquals(TokenType.MUL))
                {
                    e = new BinaryOP('*', e, unaryOP());
                    continue;
                }
                if (isEquals(TokenType.DIV))
                {
                    e = new BinaryOP('/', e, unaryOP());
                    continue;
                }
                break;
            }
            return(e);
        }
Exemplo n.º 3
0
 public void visit(BinaryOP statement)
 {
     statement.a.accept(this);
     statement.b.accept(this);
 }