module Shrink::Wrap::ClassMethods

Public Instance Methods

coerce(opts = {}) click to toggle source
# File lib/shrink/wrap.rb, line 26
def coerce(opts = {})
  opts.each do |key, value|
    metadata.add_coercion(key, value)
  end
end
shrink_wrap(data) click to toggle source
# File lib/shrink/wrap.rb, line 32
def shrink_wrap(data)
  transformed = metadata.transform(data)
  translated = metadata.translate(transformed)
  coerced = metadata.coerce(translated)
  new(coerced)
end
transform(klass, opts = {}) click to toggle source
# File lib/shrink/wrap.rb, line 12
def transform(klass, opts = {})
  metadata.add_transformer(klass, opts)
end
translate(opts = {}) click to toggle source
# File lib/shrink/wrap.rb, line 16
def translate(opts = {})
  opts.each do |key, value|
    metadata.add_translation(key, value)
  end
end
translate_all() click to toggle source
# File lib/shrink/wrap.rb, line 22
def translate_all
  metadata.translate_all!
end

Private Instance Methods

metadata() click to toggle source
# File lib/shrink/wrap.rb, line 41
def metadata
  @metadata ||= Metadata.new
end