Project

General

Profile

Actions

Bug #10654

closed

Nil -> Rational Inconsistency

Added by kyledecot (Kyle Decot) almost 10 years ago. Updated over 5 years ago.

Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-darwin14.0]
[ruby-core:67140]

Description

I'm not sure if this is a bug or not but there seems to be some inconsistency in creating a rational from nil.

Rational(nil) # => TypeError: can't convert nil into Rational
nil.to_r # => (1/0)

I would think that the latter would produce a TypeError.

Thoughts?

Updated by crazymykl (Mike MacDonald) almost 10 years ago

Current behavior is consistent with other number types:

Integer(nil) # => TypeError
nil.to_i # => 0

Calling the global function raises if the conversion is not well defined, whereas the explicit conversion method instead produces the zero (i. e. the additive identity) for that type.

Actions #2

Updated by naruse (Yui NARUSE) almost 7 years ago

  • Target version deleted (2.2.0)
Actions #3

Updated by jeremyevans0 (Jeremy Evans) over 5 years ago

  • Status changed from Open to Closed
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0