class PipeRpc::BasicInterface

Public Class Methods

add_instance_eval() click to toggle source
# File lib/pipe_rpc/basic_interface.rb, line 24
def add_instance_eval
  __send__(:remove_method, :instance_eval)
end
const_missing(name) click to toggle source
# File lib/pipe_rpc/basic_interface.rb, line 4
def const_missing(name)
  ::Object.const_get(name)
end
instance_eval(*args) click to toggle source
# File lib/pipe_rpc/basic_interface.rb, line 17
def instance_eval(*args)
  caller = (Kernel.respond_to? :caller) ? [Kernel.caller(1)] : nil
  Kernel.raise ::NoMethodError, "undefined method `instance_eval'", *caller
end
instance_eval_for(object, *args, &block) click to toggle source
# File lib/pipe_rpc/basic_interface.rb, line 8
def instance_eval_for(object, *args, &block)
  BasicInterface.add_instance_eval
  object.instance_eval(*args, &block)
ensure
  BasicInterface.remove_instance_eval
end
remove_instance_eval() click to toggle source
# File lib/pipe_rpc/basic_interface.rb, line 15
def remove_instance_eval
  class_eval do
    def instance_eval(*args)
      caller = (Kernel.respond_to? :caller) ? [Kernel.caller(1)] : nil
      Kernel.raise ::NoMethodError, "undefined method `instance_eval'", *caller
    end
  end
end