Skip to content

Instantly share code, notes, and snippets.

@trevmex
Created May 8, 2012 19:15
Show Gist options
  • Save trevmex/2638597 to your computer and use it in GitHub Desktop.
Save trevmex/2638597 to your computer and use it in GitHub Desktop.
The diff between !foo == nil and !foo.nil?
jruby-1.6.7.2 :013 > !foo == nil
NameError: undefined local variable or method `foo' for #<Object:0x26796e1c>
from (irb):13:in `evaluate'
from org/jruby/RubyKernel.java:1083:in `eval'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:158:in `eval_input'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:271:in `signal_status'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:155:in `eval_input'
from org/jruby/RubyKernel.java:1410:in `loop'
from org/jruby/RubyKernel.java:1183:in `catch'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:154:in `eval_input'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:71:in `start'
from org/jruby/RubyKernel.java:1183:in `catch'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:70:in `start'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/bin/irb:17:in `(root)'
jruby-1.6.7.2 :014 > !foo.nil?
NameError: undefined local variable or method `foo' for #<Object:0x26796e1c>
from (irb):14:in `evaluate'
from org/jruby/RubyKernel.java:1083:in `eval'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:158:in `eval_input'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:271:in `signal_status'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:155:in `eval_input'
from org/jruby/RubyKernel.java:1410:in `loop'
from org/jruby/RubyKernel.java:1183:in `catch'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:154:in `eval_input'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:71:in `start'
from org/jruby/RubyKernel.java:1183:in `catch'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:70:in `start'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/bin/irb:17:in `(root)'
jruby-1.6.7.2 :015 > foo = :bar
=> :bar
jruby-1.6.7.2 :016 > !foo == nil
=> false
jruby-1.6.7.2 :017 > !foo.nil?
=> true
jruby-1.6.7.2 :018 > foo = nil
=> nil
jruby-1.6.7.2 :019 > !foo == nil
=> false
jruby-1.6.7.2 :020 > !foo.nil?
=> false
jruby-1.6.7.2 :002 > !src_file['model'] == nil
NameError: undefined local variable or method `src_file' for #<Object:0x26796e1c>
from (irb):2:in `evaluate'
from org/jruby/RubyKernel.java:1083:in `eval'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:158:in `eval_input'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:271:in `signal_status'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:155:in `eval_input'
from org/jruby/RubyKernel.java:1410:in `loop'
from org/jruby/RubyKernel.java:1183:in `catch'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:154:in `eval_input'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:71:in `start'
from org/jruby/RubyKernel.java:1183:in `catch'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:70:in `start'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/bin/irb:17:in `(root)'
jruby-1.6.7.2 :003 > !src_file['model'].nil?
NameError: undefined local variable or method `src_file' for #<Object:0x26796e1c>
from (irb):3:in `evaluate'
from org/jruby/RubyKernel.java:1083:in `eval'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:158:in `eval_input'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:271:in `signal_status'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:155:in `eval_input'
from org/jruby/RubyKernel.java:1410:in `loop'
from org/jruby/RubyKernel.java:1183:in `catch'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:154:in `eval_input'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:71:in `start'
from org/jruby/RubyKernel.java:1183:in `catch'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:70:in `start'
from /Users/tmenag200/.rvm/rubies/jruby-1.6.7.2/bin/irb:17:in `(root)'
jruby-1.6.7.2 :004 > src_file = {}
=> {}
jruby-1.6.7.2 :005 > !src_file['model'] == nil
=> false
jruby-1.6.7.2 :006 > !src_file['model'].nil?
=> false
jruby-1.6.7.2 :007 > src_file = {'model' => 'foo'}
=> {"model"=>"foo"}
jruby-1.6.7.2 :008 > !src_file['model'] == nil
=> false
jruby-1.6.7.2 :009 > !src_file['model'].nil?
=> true
jruby-1.6.7.2 :010 > src_file = {'model' => nil}
=> {"model"=>nil}
jruby-1.6.7.2 :011 > !src_file['model'] == nil
=> false
jruby-1.6.7.2 :012 > !src_file['model'].nil?
=> false
jruby-1.6.7.2 :013 >
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment