module DeepCover::KernelAutoloadOverride

Public Instance Methods

autoload(name, path) click to toggle source

JRuby has different semantics for Kernel.autoload and Kernel#autoload

# File lib/deep_cover/core_ext/autoload_overrides.rb, line 89
def autoload(name, path)
  if Kernel.equal?(self)
    # Yeah, this is weird
    # https://github.com/jruby/jruby/issues/5466
    mod = Object.singleton_class
  elsif self.is_a?(Module)
    mod = self
  else
    mod = self.class
  end
  autoload_path = DeepCover.autoload_tracker.autoload_path_for(mod, name, path)
  mod.autoload_without_deep_cover(name, autoload_path)
end