module Enumerize::Base::ClassMethods
def _enumerize_module
def _enumerize_module @_enumerize_module ||= begin mod = Module.new include mod mod end end
def enumerize(name, options={})
def enumerize(name, options={}) attr = Attribute.new(self, name, options) enumerized_attributes << attr unless methods.include?(attr.name) _enumerize_module._class_methods.module_eval <<-RUBY, __FILE__, __LINE__ + 1 def #{attr.name} enumerized_attributes[:#{attr.name}] end RUBY end attr.define_methods!(_enumerize_module) end
def enumerized_attributes
def enumerized_attributes @enumerized_attributes ||= AttributeMap.new end