module RSpec::Core::Hooks

def find_hook(hook, scope, example_group_class, example = nil)

Other tags:
    Private: -
def find_hook(hook, scope, example_group_class, example = nil)
  found_hooks = hooks[hook][scope].find_hooks_for(example || example_group_class)
  # ensure we don't re-run :all hooks that were applied to any of the parent groups
  if scope == :all
    super_klass = example_group_class.superclass
    while super_klass != RSpec::Core::ExampleGroup
      found_hooks = found_hooks.without_hooks_for(super_klass)
      super_klass = super_klass.superclass
    end
  end
  found_hooks
end