package org.fugazi.ql.evaluator.expression_value; public abstract class ExpressionValue<T> { private final T value; ExpressionValue(T _value) { this.value = _value; } public T getValue() { return this.value; } public boolean isUndefined() { return false; } public ExpressionValue add(ExpressionValue exprValue) { throw new AssertionError(); } public ExpressionValue addInt(IntValue exprValue) { throw new AssertionError(); } public ExpressionValue addString(StringValue exprValue) { throw new AssertionError(); } public ExpressionValue sub(ExpressionValue exprValue) { throw new AssertionError(); } public ExpressionValue subInt(IntValue exprValue) { throw new AssertionError(); } public ExpressionValue mul(ExpressionValue exprValue) { throw new AssertionError(); } public ExpressionValue mulInt(IntValue exprValue) { throw new AssertionError(); } public ExpressionValue div(ExpressionValue exprValue) { throw new AssertionError(); } public ExpressionValue divInt(IntValue exprValue) { throw new AssertionError(); } public ExpressionValue and(ExpressionValue exprValue) { throw new AssertionError(); } public ExpressionValue andBool(BoolValue exprValue) { throw new AssertionError(); } public ExpressionValue or(ExpressionValue exprValue) { throw new AssertionError(); } public ExpressionValue orBool(BoolValue exprValue) { throw new AssertionError(); } public ExpressionValue not() { throw new AssertionError(); } public ExpressionValue negative() { throw new AssertionError(); } public ExpressionValue positive() { throw new AssertionError(); } public BoolValue equal(ExpressionValue exprValue) { return new BoolValue(this.getValue() == exprValue.getValue()); } public BoolValue notEqual(ExpressionValue exprValue) { return new BoolValue(this.getValue() != exprValue.getValue()); } public ExpressionValue greater(ExpressionValue exprValue) { throw new AssertionError(); } public ExpressionValue greaterInt(IntValue exprValue) { throw new AssertionError(); } public ExpressionValue less(ExpressionValue exprValue) { throw new AssertionError(); } public ExpressionValue lessInt(IntValue exprValue) { throw new AssertionError(); } public ExpressionValue greaterEqual(ExpressionValue exprValue) { throw new AssertionError(); } public ExpressionValue greaterEqualInt(IntValue exprValue) { throw new AssertionError(); } public ExpressionValue lessEqual(ExpressionValue exprValue) { throw new AssertionError(); } public ExpressionValue lessEqualInt(IntValue exprValue) { throw new AssertionError(); } }