Only the object nil responds true to nil?.
true
nil?
Object.new.nil? #=> false nil.nil? #=> true
Returns:
1663 1664 1665 1666 1667
# File 'object.c', line 1663 VALUE rb_false(VALUE obj) { return Qfalse; }