class BasicObject

def __binding__

Returns:
  • (Binding) -
def __binding__
  # BasicObjects don't have respond_to?, so we just define the method
  # every time. As they also don't have `.freeze`, this call won't
  # fail as it can for normal Objects.
  (class << self; self; end).class_eval(<<-METHOD, __FILE__, __LINE__ + 1)
    # Get a binding with 'self' set to self, and no locals.
    #
    # The default definee is determined by the context in which the
    # definition is eval'd.
    #
    # Please don't call this method directly, see {__binding__}.
    #
    # @return [Binding]
    def __pry__
      ::Kernel.binding
    end
  METHOD
  __pry__
end