Module: NullObjectLoader::ClassMethods
- Defined in:
- lib/null_object_loader.rb
Instance Method Summary collapse
Instance Method Details
#load_null_object(name, opts) ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/null_object_loader.rb', line 11 def load_null_object(name, opts) null_class = opts[:null_class] load_if = opts[:load_if] || :nil? alias_method NullObjectLoader.temp_name_for_method(name), name define_method(name) do original_value = send(NullObjectLoader.temp_name_for_method(name)) return original_value if !original_value.send(load_if) null_class.new end end |