if (left instanceof XObject && right instanceof XObject)
{
switch (op)
{
case OpCodes.OP_NOTEQUALS :
return new XBoolean(((XObject) left).notEquals((XObject) right));
case OpCodes.OP_EQUALS :
return new XBoolean(((XObject) left).equals((XObject) right));
case OpCodes.OP_LTE :
return new XBoolean(((XObject) left).lessThanOrEqual((XObject) right));
case OpCodes.OP_LT :
return new XBoolean(((XObject) left).lessThan((XObject) right));
case OpCodes.OP_GTE :
return new XBoolean(((XObject) left).greaterThanOrEqual((XObject) right));
case OpCodes.OP_GT :
return new XBoolean(((XObject) left).greaterThan((XObject) right));
default :
return null; // Won't happen
}
}