class ActiveSupport::Notifications::Fanout::Subscribers::Matcher

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

# sig/active_support/notifications/fanout.rbs

class ActiveSupport::Notifications::Fanout::Subscribers::Matcher
  def self.wrap: (String pattern) -> String
  def ===: (String name) -> true
end

:nodoc:

def self.wrap(pattern)

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

def self.wrap: (String pattern) -> String

This signature was generated using 21 samples from 2 applications.

def self.wrap(pattern)
  if String === pattern
    pattern
  elsif pattern.nil?
    AllMessages.new
  else
    new(pattern)
  end
end

def ===(name)

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

def ===: (String name) -> true

This signature was generated using 1 sample from 1 application.

def ===(name)
  pattern === name && !exclusions.include?(name)
end

def initialize(pattern)

def initialize(pattern)
  @pattern = pattern
  @exclusions = Set.new
end

def unsubscribe!(name)

def unsubscribe!(name)
  exclusions << -name if pattern === name
end