#include "_rulevalue.ih"

RuleValue &RuleValue::operator-=(RuleValue const &other)
{
    if (d_tag == DOUBLE || other.d_tag == DOUBLE)
    {
        d_value.d = asDouble() - other.asDouble();
        d_tag = DOUBLE;
    }
    else
    {
        d_value.i = asInt() - other.asInt();
        d_tag = INT;
    }
    return *this;
}
