Module: Eva::Space
- Included in:
- Object
- Defined in:
- lib/eva/space.rb
Defined Under Namespace
Modules: ClassMethods
Instance Method Summary collapse
Instance Method Details
#namespace(name, methods = {}) ⇒ Object
8 9 10 11 12 13 14 |
# File 'lib/eva/space.rb', line 8 def namespace(name, methods={}) mod = gen_const(name, Module.new) mod.extend mod mod.extend ClassMethods methods.each { |name, block| gen_methods(mod, name, block) } mod end |
#objectspace(name, methods = {}) ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/eva/space.rb', line 16 def objectspace(name, methods={}) if Hash === name (name, superclass), *methods = *name.to_a else superclass = EvaObject end klass = gen_const(name, Class.new(superclass)) methods.each { |name, block| gen_methods(klass, name, block) } klass end |