summaryrefslogtreecommitdiff
path: root/lib/bundler/incomplete_specification.rb
blob: addf7554d80428d2a1926f81eea4378e9d30f89f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# frozen_string_literal: true

module Bundler
  #
  # Represents a package name that was found to be incomplete when trying to
  # materialize a fresh resolution or the lockfile.
  #
  # Holds the actual partially complete set of specifications for the name.
  # These are used so that they can be unlocked in a future resolution, and fix
  # the situation.
  #
  class IncompleteSpecification
    attr_reader :name, :partially_complete_specs

    def initialize(name, partially_complete_specs = [])
      @name = name
      @partially_complete_specs = partially_complete_specs
    end

    def ==(other)
      partially_complete_specs == other.partially_complete_specs
    end
  end
end