Sha256: 2de75309793d004ebee7342e4d460dfbf0bddf170d8ec086cfe4a28c767de241
Contents?: true
Size: 466 Bytes
Versions: 3
Compression:
Stored size: 466 Bytes
Contents
module Decoradar class Attribute attr_reader :name, :as, :include_if def initialize(options = {}) @name = options.fetch(:name) @as = options.fetch(:as, @name) @include_if = options[:include_if] end def including?(object) case include_if when nil then true when Proc then include_if.call(object) else false end end def serialize(hash, value) hash.merge(as => value) end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
decoradar-0.1.1 | lib/decoradar/attribute.rb |
decoradar-0.1.0 | lib/decoradar/attribute.rb |
decoradar-0.0.1 | lib/decoradar/attribute.rb |