class Module

Public Instance Methods

lazy_attr_reader(name, &block) click to toggle source
# File lib/inline_acceleration.rb, line 37
def lazy_attr_reader(name, &block)
  attr_name = name.to_s.gsub('?', '')
  define_method("lazy_attr_initialization_#{attr_name}".to_sym, block)
  class_eval <<-CODE_END
    def #{name.to_s}
      @#{attr_name} = lazy_attr_initialization_#{attr_name} if @#{attr_name}.nil?
      @#{attr_name}
    end
  CODE_END
end
parent_module() click to toggle source
# File lib/inline_acceleration.rb, line 33
def parent_module
  self.name.split('::')[0..-2].join('::').to_class
end