Module: Cartage::StructDig

Includes:
Dig
Defined in:
lib/cartage/backport.rb

Overview

Struct gets a different override.

Instance Method Summary collapse

Instance Method Details

#dig(name, *rest) ⇒ Object

This override is necessary because Struct.new(:a).new(1)[0] is legal. So we don’t just care about NameError, but IndexError as well.



32
33
34
35
36
# File 'lib/cartage/backport.rb', line 32

def dig(name, *rest)
  super
rescue IndexError, NameError
  nil
end