module ActiveSupport::LazyLoadHooks

def execute_hook(name, base, options, block)

def execute_hook(name, base, options, block)
  with_execution_control(name, block, options[:run_once]) do
    if options[:yield]
      block.call(base)
    else
      if base.is_a?(Module)
        base.class_eval(&block)
      else
        base.instance_eval(&block)
      end
    end
  end
end