module Wardrobe

Top level Wardrobe module

rubocop:disable Metrics/CyclomaticComplexity

TODO:

Constants

VERSION

Attributes

getters[R]
options[R]
plugins[R]
setters[R]

Public Class Methods

register_getter(name:, priority:, getter:, use_if: ->(_atr) { true } click to toggle source
# File lib/wardrobe/getter_setter.rb, line 28
def self.register_getter(name:, priority:, getter:, use_if: ->(_atr) { true })
  raise 'Name taken' if getters[name]
  getters[name] = SetterGetter.new(name, priority, getter, use_if)
end
register_plugin(name, mod) click to toggle source
# File lib/wardrobe/plugin.rb, line 13
def self.register_plugin(name, mod)
  raise PluginNameTakenError, "Plugin #{name} already in use" if plugins[name]
  plugins[name] = mod
end
register_setter(name:, priority:, setter:, use_if: ->(_atr) { true } click to toggle source
# File lib/wardrobe/getter_setter.rb, line 23
def self.register_setter(name:, priority:, setter:, use_if: ->(_atr) { true })
  raise 'Name taken' if setters[name]
  setters[name] = SetterGetter.new(name, priority, setter, use_if)
end