lib/yaks/mapper/attribute.rb in yaks-0.9.0 vs lib/yaks/mapper/attribute.rb in yaks-0.10.0
- old
+ new
@@ -1,15 +1,21 @@
module Yaks
class Mapper
class Attribute
- include Attributes.new(:name)
+ include Attribs.new(:name, :block)
+ include Util
- def initialize(name)
- super(name: name)
+ def self.create(name, _options = nil, &block)
+ new(name: name, block: block)
end
def add_to_resource(resource, mapper, _context)
- resource.merge_attributes(name => mapper.load_attribute(name))
+ if block
+ attribute = Resolve(block, mapper)
+ else
+ attribute = mapper.load_attribute(name)
+ end
+ resource.merge_attributes(name => attribute)
end
end
end
end