Class: PackAPI::Mapping::AttributeMap::ValueTransformationChain
- Inherits:
-
Object
- Object
- PackAPI::Mapping::AttributeMap::ValueTransformationChain
- Defined in:
- lib/pack_api/mapping/attribute_map.rb
Instance Attribute Summary collapse
-
#transformations ⇒ Object
readonly
Returns the value of attribute transformations.
Instance Method Summary collapse
- #call(attribute_map, attribute_value) ⇒ Object
-
#initialize(transformations) ⇒ ValueTransformationChain
constructor
A new instance of ValueTransformationChain.
- #kwargs=(new_kwargs) ⇒ Object
Constructor Details
#initialize(transformations) ⇒ ValueTransformationChain
Returns a new instance of ValueTransformationChain.
261 262 263 |
# File 'lib/pack_api/mapping/attribute_map.rb', line 261 def initialize(transformations) @transformations = transformations end |
Instance Attribute Details
#transformations ⇒ Object (readonly)
Returns the value of attribute transformations.
260 261 262 |
# File 'lib/pack_api/mapping/attribute_map.rb', line 260 def transformations @transformations end |
Instance Method Details
#call(attribute_map, attribute_value) ⇒ Object
269 270 271 272 273 |
# File 'lib/pack_api/mapping/attribute_map.rb', line 269 def call(attribute_map, attribute_value) transformations.reduce(attribute_value) do |prev_result, next_transformation| next_transformation.call(attribute_map, prev_result) end end |
#kwargs=(new_kwargs) ⇒ Object
265 266 267 |
# File 'lib/pack_api/mapping/attribute_map.rb', line 265 def kwargs=(new_kwargs) transformations.each { it.kwargs = new_kwargs } end |