class Module

TODO move to mumukit-core

Public Instance Methods

define_once(selector, *args, &block) click to toggle source
# 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) click to toggle source
# 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) click to toggle source
# 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