Class: Module
- Inherits:
- 
      Object
      
        - Object
- Module
 
- Defined in:
- lib/mumuki/domain/extensions/module.rb
Overview
TODO move to mumukit-core
Instance Method Summary collapse
- #define_once(selector, *args, &block) ⇒ Object
- #ensure_defined!(selector) ⇒ Object
- #ensure_undefined!(selector) ⇒ Object
Instance Method Details
#define_once(selector, *args, &block) ⇒ Object
| 13 14 15 16 | # File 'lib/mumuki/domain/extensions/module.rb', line 13 def define_once(selector, *args, &block) ensure_undefined! selector define_method selector, *args, &block end | 
#ensure_defined!(selector) ⇒ Object
| 3 4 5 6 | # File 'lib/mumuki/domain/extensions/module.rb', line 3 def ensure_defined!(selector) # FIXME pass additional false flag in ruby 2.6 raise "method #{selector} was not previously defined here" unless method_defined?(selector) end | 
#ensure_undefined!(selector) ⇒ Object
| 8 9 10 11 | # File 'lib/mumuki/domain/extensions/module.rb', line 8 def ensure_undefined!(selector) # FIXME pass additional false flag in ruby 2.6 raise "method #{selector} was previously defined here" if method_defined?(selector) end |