Sha256: 5e62fdb53a298100da7f10a1d3068ca57369278e592ed6b9946bc6062e395804

Contents?: true

Size: 582 Bytes

Versions: 1

Compression:

Stored size: 582 Bytes

Contents

require "active_support/lazy_load_hooks"
require "active_support/lazy_load_patch/version"

module ActiveSupport
  @loaded_prev = @loaded
  @loaded = Hash.new { |h,k| h[k] = [] }
  @loaded_prev.each { |k, v| @loaded[k] << v }

  def self.on_load(name, options = {}, &block)
    @loaded[name].each do |base|
      execute_hook(base, options, block)
    end

    @load_hooks[name] << [block, options]
  end

  def self.run_load_hooks(name, base = Object)
    @loaded[name] << base
    @load_hooks[name].each do |hook, options|
      execute_hook(base, options, hook)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
active_support-lazy_load_patch-0.0.2 lib/active_support/lazy_load_patch.rb