| Module | CoreEx::Object::InstanceEvalWithArgs |
| In: |
lib/core_ex/object/instance_eval_with_args.rb
|
# File lib/core_ex/object/instance_eval_with_args.rb, line 15 def instance_eval_with_args ( *args, &block ) raise ArgumentError, "no block given" if block.nil? method_name = "instance_eval_temporary_method#{object_id}.#{@@seed}""instance_eval_temporary_method#{object_id}.#{@@seed}" @@seed += 1 define_singleton_method(method_name, &block) begin result = __send__(method_name, *args) ensure undef_singleton_method(method_name) end result end