public virtual Expression visit(LogicalAndExpression expression) { write('('); expression.leftExpression.visitExpression(this); write(" && "); expression.rightExpression.visitExpression(this); write(')'); return(expression); }
private Expression parseLogicalAndExpression(bool inFlag) { Expression left = parseBitwiseOrExpression(inFlag); Expression right; // logical and expressions are left associative while (true) { if (nextToken == Token.OPERATOR_LOGICALAND) { readToken(Token.OPERATOR_LOGICALAND); right = parseBitwiseOrExpression(inFlag); left = new LogicalAndExpression(left, right); } else { return left; } } }
public virtual Expression visit(LogicalAndExpression expression) { write("&&"); return(expression); }