Module: Degu::Renum
- Included in:
- Object
- Defined in:
- lib/degu/renum.rb,
lib/degu/renum/enumerated_value.rb,
lib/degu/renum/enumerated_value_type_factory.rb
Overview
Requiring ‘renum’ mixes the Renum module into both the main Object and Module, so it can be called from anywhere that you might reasonably define an enumeration with an implicit receiver.
Defined Under Namespace
Modules: EnumeratedValueTypeFactory Classes: EnumeratedValue
Instance Method Summary collapse
-
#renum(type_name, values = :defined_in_block, &block) ⇒ Object
Figures out whether the new enumeration will live in Object or the receiving Module, then delegates to EnumeratedValueTypeFactory#create for all the real work.
Instance Method Details
#renum(type_name, values = :defined_in_block, &block) ⇒ Object
Figures out whether the new enumeration will live in Object or the receiving Module, then delegates to EnumeratedValueTypeFactory#create for all the real work.
12 13 14 15 |
# File 'lib/degu/renum.rb', line 12 def renum(type_name, values = :defined_in_block, &block) nest = self.is_a?(Module) ? self : Object EnumeratedValueTypeFactory.create(nest, type_name, values, &block) end |