class ActiveSupport::Notifications::Fanout

def unsubscribe(subscriber_or_name)

Experimental RBS support (using type sampling data from the type_fusion project).

def unsubscribe: (ActiveSupport::Notifications::Fanout::Subscribers::Timed subscriber_or_name) -> nil

This signature was generated using 6 samples from 1 application.

def unsubscribe(subscriber_or_name)
  synchronize do
    case subscriber_or_name
    when String
      @string_subscribers[subscriber_or_name].clear
      @listeners_for.delete(subscriber_or_name)
      @other_subscribers.each { |sub| sub.unsubscribe!(subscriber_or_name) }
    else
      pattern = subscriber_or_name.try(:pattern)
      if String === pattern
        @string_subscribers[pattern].delete(subscriber_or_name)
        @listeners_for.delete(pattern)
      else
        @other_subscribers.delete(subscriber_or_name)
        @listeners_for.clear
      end
    end
  end
end