pgsOperand pgsRecord::pgs_almost_equal(const pgsVariable &rhs) const { if (rhs.is_record()) { const pgsRecord &rhs_op = dynamic_cast<const pgsRecord &>(rhs); return pnew pgsNumber(this->almost_equal(rhs_op) ? wxT("1") : wxT("0")); } else { throw pgsArithmeticException(value(), rhs.value()); } }
pgsOperand pgsRecord::pgs_different(const pgsVariable &rhs) const { if (rhs.is_record()) { const pgsRecord &rhs_op = dynamic_cast<const pgsRecord &>(rhs); return pnew pgsNumber(*this != rhs_op ? wxT("1") : wxT("0")); } else { throw pgsArithmeticException(value(), rhs.value()); } }