class Yaks::Mapper::Attribute

Public Class Methods

create(name, options = {}, &block) click to toggle source
# File lib/yaks/mapper/attribute.rb, line 7
def self.create(name, options = {}, &block)
  new(options.merge(name: name, block: block))
end

Public Instance Methods

add_to_resource(resource, mapper, _context) click to toggle source
# File lib/yaks/mapper/attribute.rb, line 11
def add_to_resource(resource, mapper, _context)
  return resource unless Resolve(self.if, mapper)

  if block
    attribute = Resolve(block, mapper)
  else
    attribute = mapper.load_attribute(name)
  end

  resource.merge_attributes(name => attribute)
end