Sha256: b7d45c7193be8ee01f8be9b075f9c1b78fd3c61eae416dcfdf8d8b2213c10d11

Contents?: true

Size: 375 Bytes

Versions: 12

Compression:

Stored size: 375 Bytes

Contents

module Kernel
 # Like instace_eval but allows parameters to be passed.
  def instance_exec(*args, &block)
    mname = "__instance_exec_#{Thread.current.object_id.abs}_#{object_id.abs}"
    Object.class_eval{ define_method(mname, &block) }
    begin
      ret = send(mname, *args)
    ensure
      Object.class_eval{ undef_method(mname) } rescue nil
    end
    ret
  end
end

Version data entries

12 entries across 12 versions & 2 rubygems

Version Path
activerdf_net7-1.7.2 lib/active_rdf/instance_exec.rb
activerdf_net7-1.7.1 lib/active_rdf/instance_exec.rb
activerdf_net7-1.7.0 lib/active_rdf/instance_exec.rb
activerdf_net7-1.6.16 lib/active_rdf/instance_exec.rb
activerdf_net7-1.6.15 lib/active_rdf/instance_exec.rb
activerdf_net7-1.6.14 lib/active_rdf/instance_exec.rb
activerdf_net7-1.6.13 lib/active_rdf/instance_exec.rb
activerdf_net7-1.6.12 lib/active_rdf/instance_exec.rb
activerdf_net7-1.6.11 lib/active_rdf/instance_exec.rb
activerdf-1.6.11 lib/active_rdf/instance_exec.rb
activerdf-1.6.10 lib/active_rdf/instance_exec.rb
activerdf-1.6.9 lib/active_rdf/instance_exec.rb