class Steep::Services::TypeCheckService::TargetRequest

def ==(other)

def ==(other)
  other.is_a?(TargetRequest) &&
    other.target == target &&
    other.source_paths == source_paths &&
    other.signature_updated? == signature_updated?
end

def empty?

def empty?
  !signature_updated? && source_paths.empty?
end

def hash

def hash
  self.class.hash ^ target.hash ^ source_paths.hash ^ @signature_updated.hash
end

def initialize(target:)

def initialize(target:)
  @target = target
  @source_paths = Set[]
  @signature_updated = false
end

def signature_updated!(value = true)

def signature_updated!(value = true)
  @signature_updated = value
  self
end

def signature_updated?

def signature_updated?
  @signature_updated
end