Sha256: 0704a81c5bbcdf337219c5965a06eb42debe431830178ba39d5c70ec84e831c7
Contents?: true
Size: 790 Bytes
Versions: 1
Compression:
Stored size: 790 Bytes
Contents
module Draper class DecoratedEnumerableProxy include Enumerable def initialize(collection, klass, context) @wrapped_collection, @klass, @context = collection, klass, context end def each(&block) @wrapped_collection.each { |member| block.call(@klass.new(member, @context)) } end def to_ary @wrapped_collection.map { |member| @klass.new(member, @context) } end def method_missing (method, *args, &block) @wrapped_collection.send(method, *args, &block) end def respond_to?(method) super || @wrapped_collection.respond_to?(method) end def ==(other) @wrapped_collection == other end def to_s "#<DecoratedEnumerableProxy of #{@klass} for #{@wrapped_collection.inspect}>" end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
draper-0.9.5 | lib/draper/decorated_enumerable_proxy.rb |