Module: SimpleAMS::Options::Concerns::ValueHash
Instance Attribute Summary collapse
-
#options ⇒ Object
readonly
Returns the value of attribute options.
-
#value ⇒ Object
(also: #name)
readonly
Returns the value of attribute value.
Instance Method Summary collapse
- #initialize(value, options = {}, resource:, serializer:) ⇒ Object
- #raw ⇒ Object
- #volatile? ⇒ Boolean
Instance Attribute Details
#options ⇒ Object
Returns the value of attribute options.
6 7 8 |
# File 'lib/simple_ams/options/concerns/value_hash.rb', line 6 def @options end |
#value ⇒ Object Also known as: name
Returns the value of attribute value.
6 7 8 |
# File 'lib/simple_ams/options/concerns/value_hash.rb', line 6 def value @value end |
Instance Method Details
#initialize(value, options = {}, resource:, serializer:) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/simple_ams/options/concerns/value_hash.rb', line 9 def initialize(value, = {}, resource:, serializer:) if value.respond_to?(:call) @volatile = true _value = value.call(resource, serializer) if _value.is_a?(Array) && _value.length > 1 @value = _value[0] @options = (_value[-1] || {}).merge( || {}) else @value = _value @options = || {} end else @value = value.is_a?(String) ? value.to_sym : value @options = || {} end end |
#raw ⇒ Object
26 27 28 |
# File 'lib/simple_ams/options/concerns/value_hash.rb', line 26 def raw [value, ] end |
#volatile? ⇒ Boolean
30 31 32 |
# File 'lib/simple_ams/options/concerns/value_hash.rb', line 30 def volatile? return @volatile || false end |