From: samuel@... Date: 2016-06-06T03:39:45+00:00 Subject: [ruby-core:75850] [Ruby trunk Feature#12039] Fixnum#infinite?/Bignum#infinite or Numeric#infinte, consistent with Float#infinite? and BigDecimal#infinite? Issue #12039 has been updated by Samuel Williams. This looks good, do you think we can integrate this at some point? What do we need to do? ---------------------------------------- Feature #12039: Fixnum#infinite?/Bignum#infinite or Numeric#infinte, consistent with Float#infinite? and BigDecimal#infinite? https://bugs.ruby-lang.org/issues/12039#change-59025 * Author: Samuel Williams * Status: Open * Priority: Normal * Assignee: ---------------------------------------- We have an issue where it is not easy to ask if a number is +ve or -ve infinity. https://github.com/rails/arel/issues/411 Both Float and BigDecimal do respond to infinite? but Integer derivatives don't. It sort of makes sense, since we don't have an infinity value for Fixnum/Bignum. However, it makes polymorphic code hard. ``` [13] pry(main)> Float::INFINITY.infinite? => 1 [14] pry(main)> -Float::INFINITY.infinite? => -1 [15] pry(main)> BigDecimal::INFINITY.infinite? => 1 [16] pry(main)> -BigDecimal::INFINITY.infinite? => -1 ``` Given a Numeric value x, it would be nice to query if it is INFINITY or not. Propose adding a default implementation to Numeric, which always returns false or nil. -- https://bugs.ruby-lang.org/ Unsubscribe: