From: w_a_x_man Date: 2010-10-22T20:45:23+09:00 Subject: Re: more idiomatic way to avoid errors when calling method on variable that may be nil? On Oct 11, 3:02 pm, Charles Calvert wrote: > I'm using Ruby 1.8.7 patchlevel 249 > > Is there a more idiomatic way to do the following? > > var = hash[key].nil? ? nil : hash[key].downcase > > Note that if hash[key] is nil, I want nil assigned to var, so this > won't work: > > var = hash[key].downcase unless hash[key].nil? > > Obviously I could do this, but I'm trying to keep it on one line: > > var = hash[key] > var = var.downcase unless var.nil? s = hash[:foo] and s.downcase!