Class: Wardrobe::Option
- Inherits:
-
Object
- Object
- Wardrobe::Option
- Defined in:
- lib/wardrobe/option.rb
Instance Attribute Summary collapse
-
#default ⇒ Object
readonly
Returns the value of attribute default.
-
#getter ⇒ Object
readonly
Returns the value of attribute getter.
-
#klass ⇒ Object
readonly
Returns the value of attribute klass.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#options ⇒ Object
readonly
Returns the value of attribute options.
-
#plugin ⇒ Object
readonly
Returns the value of attribute plugin.
-
#setter ⇒ Object
readonly
Returns the value of attribute setter.
Instance Method Summary collapse
-
#initialize(name, klass, plugin, **kargs) ⇒ Option
constructor
A new instance of Option.
- #klass_name ⇒ Object
- #use_getter_for_atr?(atr) ⇒ Boolean
- #use_setter_for_atr?(atr) ⇒ Boolean
Constructor Details
#initialize(name, klass, plugin, **kargs) ⇒ Option
Returns a new instance of Option.
7 8 9 10 11 12 13 14 15 16 |
# File 'lib/wardrobe/option.rb', line 7 def initialize(name, klass, plugin, **kargs) @name = name @klass = klass @plugin = plugin @default = kargs.fetch(:default, nil) @getter = Wardrobe.getters[kargs.fetch(:getter, nil)] @setter = Wardrobe.setters[kargs.fetch(:setter, nil)] = kargs freeze end |
Instance Attribute Details
#default ⇒ Object (readonly)
Returns the value of attribute default.
5 6 7 |
# File 'lib/wardrobe/option.rb', line 5 def default @default end |
#getter ⇒ Object (readonly)
Returns the value of attribute getter.
5 6 7 |
# File 'lib/wardrobe/option.rb', line 5 def getter @getter end |
#klass ⇒ Object (readonly)
Returns the value of attribute klass.
5 6 7 |
# File 'lib/wardrobe/option.rb', line 5 def klass @klass end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
5 6 7 |
# File 'lib/wardrobe/option.rb', line 5 def name @name end |
#options ⇒ Object (readonly)
Returns the value of attribute options.
5 6 7 |
# File 'lib/wardrobe/option.rb', line 5 def end |
#plugin ⇒ Object (readonly)
Returns the value of attribute plugin.
5 6 7 |
# File 'lib/wardrobe/option.rb', line 5 def plugin @plugin end |
#setter ⇒ Object (readonly)
Returns the value of attribute setter.
5 6 7 |
# File 'lib/wardrobe/option.rb', line 5 def setter @setter end |
Instance Method Details
#klass_name ⇒ Object
18 19 20 |
# File 'lib/wardrobe/option.rb', line 18 def klass_name klass.to_s[/([^:]+)$/,1].downcase end |
#use_getter_for_atr?(atr) ⇒ Boolean
22 23 24 |
# File 'lib/wardrobe/option.rb', line 22 def use_getter_for_atr?(atr) getter&.use_if&.call(atr) end |
#use_setter_for_atr?(atr) ⇒ Boolean
26 27 28 |
# File 'lib/wardrobe/option.rb', line 26 def use_setter_for_atr?(atr) setter&.use_if&.call(atr) end |