public int evaluate(DBType left, DBType right, int op) {
		switch (op) {
		case Expression.EQ:
			return evaluateEQOrLike(left, right);
		case Expression.LIKE:
			if (right instanceof StringType) {
				right = new StringLikeType(((StringType) right).get());
			}
			return evaluateEQOrLike(left, right);
		case Expression.GE:
			return evaluateGE(left, right);
		case Expression.GT:
			return evaluateGT(left, right);
		case Expression.LE:
			return evaluateLE(left, right);
		case Expression.LT:
			return evaluateLT(left, right);
			
		}
		return -1;
	}