Sha256: 9efa35915dfaf8686cf32ac70ac689676e6ca361f28e305c81df10561434debc
Contents?: true
Size: 741 Bytes
Versions: 1
Compression:
Stored size: 741 Bytes
Contents
module Draper class DecoratedEnumerableProxy include Enumerable def initialize(collection, klass, context) @wrapped_collection, @klass, @context = collection, klass, context end # Implementation of Enumerable#each that proxyes to the wrapped collection def each(&block) @wrapped_collection.each { |member| block.call(@klass.new(member, @context)) } end # Implement to_arry so that render @decorated_collection is happy def to_ary @wrapped_collection.to_ary end def method_missing (meth, *args, &block) @wrapped_collection.send(meth, *args, &block) 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.3 | lib/draper/decorated_enumerable_proxy.rb |