package interdroid.swan.swansong; public class ComparisonExpression implements TriStateExpression { private ValueExpression mLeft; private Comparator mComparator; private ValueExpression mRight; private String mLocation; public ComparisonExpression(String location, ValueExpression left, Comparator comparator, ValueExpression right) { this.mLocation = location; this.mLeft = left; this.mComparator = comparator; this.mRight = right; } @Override public String toParseString() { return mLeft.toParseString() + " " + mComparator.toParseString() + " " + mRight.toParseString(); } public ValueExpression getLeft() { return mLeft; } public ValueExpression getRight() { return mRight; } @Override public String getLocation() { return mLocation; } @Override public void setInferredLocation(String location) { if (mLocation.equals(Expression.LOCATION_INFER)) { mLocation = location; return; } throw new RuntimeException("Trying to set inferred location from '" + mLocation + "' to '" + location + "'. Please don't use this method. For internal use only."); } public Comparator getComparator() { return mComparator; } }