End of Life Ruby 3.2 has reached end of life and gets no more fixes. Switch to Ruby 4.0 →
instance method
BigDecimal#sign
sign
ext/bigdecimal/bigdecimal.c
View on GitHub ↗
static VALUE
BigDecimal_sign(VALUE self)
{ /* sign */
int s = GetVpValue(self, 1)->sign;
return INT2FIX(s);
}
Returns the sign of the value.
Returns a positive value if > 0, a negative value if < 0. It behaves the same with zeros - it returns a positive value for a positive zero (BigDecimal(‘0’)) and a negative value for a negative zero (BigDecimal(‘-0’)).
The specific value returned indicates the type and sign of the BigDecimal, as follows:
BigDecimal::SIGN_NaN-
value is Not a Number
BigDecimal::SIGN_POSITIVE_ZERO-
value is +0
BigDecimal::SIGN_NEGATIVE_ZERO-
value is -0
BigDecimal::SIGN_POSITIVE_INFINITE-
value is +Infinity
BigDecimal::SIGN_NEGATIVE_INFINITE-
value is -Infinity
BigDecimal::SIGN_POSITIVE_FINITE-
value is positive
BigDecimal::SIGN_NEGATIVE_FINITE-
value is negative