Method: Forwarder::Meta#forward_object
- Defined in:
- lib/forwarder/meta.rb
#forward_object ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/forwarder/meta.rb', line 31 def forward_object a = arguments forwardee.module_eval do define_method a. do |*args, &blk| args = instance_exec( *args, &a.before ) if a.before? a.object_target( self ) .send( a.translation( a. ), *a.complete_args(*args), &a.lambda( blk ) ).tap do | result | break instance_exec( result, &a.after ) if a.after? end end end end |