Method: Float#infinite?

Defined in:
numeric.c

#infinite?nil, ...

Return values corresponding to the value of float:

finite:: nil

-Infinity

-1

+Infinity

1

For example:

(0.0).infinite?        #=> nil
(-1.0/0.0).infinite?   #=> -1
(+1.0/0.0).infinite?   #=> 1

Returns:

  • (nil, -1, +1)


1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
# File 'numeric.c', line 1467

static VALUE
flo_is_infinite_p(VALUE num)
{
    double value = RFLOAT_VALUE(num);

    if (isinf(value)) {
  return INT2FIX( value < 0 ? -1 : 1 );
    }

    return Qnil;
}