예제 #1
0
        private Expression logicalOR()
        {
            Expression result = logicalAND();

            while (true)
            {
                if (isEquals(TokenType.BARBAR))
                {
                    result = new LogicExpression(LogicExpression.Operator.OR, result, logicalAND());
                    continue;
                }
                break;
            }

            return(result);
        }
예제 #2
0
        private Expression logicalAND()
        {
            Expression result = equality();

            while (true)
            {
                if (isEquals(TokenType.AMPAMP))
                {
                    result = new LogicExpression(LogicExpression.Operator.AND, result, equality());
                    continue;
                }
                break;
            }

            return(result);
        }
예제 #3
0
 public void visit(LogicExpression statement)
 {
     statement.a.accept(this);
     statement.b.accept(this);
 }