class Tapioca::Gem::Listeners::Base

def dispatch(event)

def dispatch(event)
  return if ignore?(event)
  case event
  when ConstNodeAdded
    on_const(event)
  when ScopeNodeAdded
    on_scope(event)
  when MethodNodeAdded
    on_method(event)
  else
    raise "Unsupported event #{event.class}"
  end
end

def ignore?(event)

def ignore?(event)
  # Some listeners do not have to take any action on certain events. For example,
  # almost every listener should skip ForeignScopeNodeAdded events in order not to generate
  # unnecessary RBIs for foreign constants. This method should be overridden by listener
  # subclasses to skip any events that aren't relevant to them.
  false
end

def initialize(pipeline)

def initialize(pipeline)
  @pipeline = pipeline
end

def on_const(event)

def on_const(event)
end

def on_method(event)

def on_method(event)
end

def on_scope(event)

def on_scope(event)
end