class Steep::Index::SourceIndex::MethodEntry

def add_definition(node)

def add_definition(node)
  case node.type
  when :def, :defs
    @definitions << node
  else
    raise "Unexpected method definition: #{node.type}"
  end
  self
end

def add_reference(node)

def add_reference(node)
  case node.type
  when :send, :block
    @references << node
  else
    raise "Unexpected method reference: #{node.type}"
  end
  self
end

def initialize(name:)

def initialize(name:)
  @name = name
  @definitions = Set[].compare_by_identity
  @references = Set[].compare_by_identity
end

def merge!(other)

def merge!(other)
  definitions.merge(other.definitions)
  references.merge(other.references)
  self
end