class RSpec::Core::Hooks::HookCollections

def process(host, parent_groups, globals, position, scope)

def process(host, parent_groups, globals, position, scope)
  hooks_to_process = globals.processable_hooks_for(position, scope, host)
  return if hooks_to_process.empty?
  hooks_to_process -= FlatMap.flat_map(parent_groups) do |group|
    group.hooks.all_hooks_for(position, scope)
  end
  return if hooks_to_process.empty?
  repository = ensure_hooks_initialized_for(position, scope)
  hooks_to_process.each { |hook| repository.append hook, (yield hook) }
end