public Object eval(Scope scope) { Object leftValue = left.eval(scope); Object rightValue = right.eval(scope); switch(op) { case EQUAL: return equal(leftValue, rightValue); case NOTEQUAL: return ! equal(leftValue, rightValue); case GT: return gt(leftValue, rightValue); case GE: return ge(leftValue, rightValue); case LT: return lt(leftValue, rightValue); case LE: return le(leftValue, rightValue); default: String l = leftValue != null ? leftValue.getClass().getSimpleName() : "null"; String r = rightValue != null ? rightValue.getClass().getSimpleName() : "null"; throw new TemplateException("Unsupported operation: " + l + " \"" + op.value() + "\" " + r, location); } }
public Object eval(Scope scope) { Object leftValue = left.eval(scope); Object rightValue = right.eval(scope); switch(op) { case EQUAL: return equal(leftValue, rightValue); case NOTEQUAL: return ! equal(leftValue, rightValue); case GT: return gt(leftValue, rightValue); case GE: return ge(leftValue, rightValue); case LT: return lt(leftValue, rightValue); case LE: return le(leftValue, rightValue); default: String l = leftValue != null ? leftValue.getClass().getSimpleName() : "null"; String r = rightValue != null ? rightValue.getClass().getSimpleName() : "null"; throw new TemplateException("Unsupported operation: " + l + " \"" + op.value() + "\" " + r, location); } }
public Object eval(Scope scope) { Object leftValue = left.eval(scope); Object rightValue = right.eval(scope); switch(op) { case EQUAL: return equal(leftValue, rightValue); case NOTEQUAL: return ! equal(leftValue, rightValue); case GT: return gt(leftValue, rightValue); case GE: return ge(leftValue, rightValue); case LT: return lt(leftValue, rightValue); case LE: return le(leftValue, rightValue); default: String l = leftValue != null ? leftValue.getClass().getSimpleName() : "null"; String r = rightValue != null ? rightValue.getClass().getSimpleName() : "null"; throw new TemplateException("Unsupported operation: " + l + " \"" + op.value() + "\" " + r, location); } }