Supporting not_nil? in rails

Ever need to do !object.nil? - I do and frequently. This patch is basically rolling up an extension i end up adding to every project i work on.

Sure using !object.nil? to see if an instance is not nil works but how much more meaningful and elegant is object.not_nil? ? Creating a separate plugin for this small but powerful feature would be crazy so heres the patch to better all the rails projects out there.

This patch extends Object and NilClass respectively: "any object".not_nil? #=> true Object.new.not_nil? #=> true Object.not_nil? #=> true nil.not_nil? #=> false

Tests included! Please add +1 to the ticket if your inclined to do so...

http://dev.rubyonrails.org/ticket/10499

matthew deiters wrote:

Ever need to do !object.nil? - I do and frequently. This patch is basically rolling up an extension i end up adding to every project i work on.

Um... why not just do

if object ....

Should be the same as !object.nil?, right?

Jeff

If readability is the objective here you can just as easily do:

"if not object.nil?" or "unless object.nil?"

Hi --

"if object" works but its a trivial example. in more complex scenarios like:

if you_are_happy? && object a&& object.is_feeling_funky?   object.do_something end

Sure it works...but it loses its meaning. The less mental translation i need to make the better...code should be easy to read. the implicit behavior of "if object" in many contexts is not sufficient.