module LazyRecord::Nesting
Apply the same namespace nesting as self to another object.
Public Instance Methods
apply_nesting(class_name)
click to toggle source
# File lib/lazy_record/nesting.rb, line 6 def apply_nesting(class_name) "#{to_s.split('::')[0..-2].join('::')}::#{class_name}" end
apply_nesting_one_level_back(class_name)
click to toggle source
# File lib/lazy_record/nesting.rb, line 10 def apply_nesting_one_level_back(class_name) "#{to_s.split('::')[0..-3].join('::')}::#{class_name}" end
lazy_const_get(class_name)
click to toggle source
# File lib/lazy_record/nesting.rb, line 14 def lazy_const_get(class_name) lambda do begin const_get(class_name) rescue NameError const_get apply_nesting(class_name) end end end
lazy_const_get_one_level_back(class_name)
click to toggle source
# File lib/lazy_record/nesting.rb, line 24 def lazy_const_get_one_level_back(class_name) lambda do begin const_get(class_name) rescue NameError const_get apply_nesting_one_level_back(class_name) end end end