module Kernel

Public Instance Methods

define_singleton_method(*args, &block) click to toggle source
# File lib/as/backports/define_singleton_method.rb, line 6
def define_singleton_method(*args, &block)
  class << self
    self
  end.send(:define_method, *args, &block)
end
public_send(method, *args, &block) click to toggle source
# File lib/as/backports/public_send.rb, line 6
def public_send(method, *args, &block)
  if respond_to?(method) && !protected_methods.include?(method.to_s)
    send(method, *args, &block)
  else
    :foo.generate_a_no_method_error_in_preparation_for_method_missing rescue nil
    # otherwise a NameError might be raised when we call method_missing ourselves
    method_missing(method.to_sym, *args, &block)
  end
end