Method: Packwerk::PackageSet#initialize

Defined in:
lib/packwerk/package_set.rb

#initialize(packages) ⇒ PackageSet

Returns a new instance of PackageSet.



79
80
81
82
83
84
85
# File 'lib/packwerk/package_set.rb', line 79

def initialize(packages)
  # We want to match more specific paths first
  sorted_packages = packages.sort_by { |package| -package.name.length }
  packages = sorted_packages.each_with_object({}) { |package, hash| hash[package.name] = package }
  @packages = T.let(packages, T::Hash[String, Package])
  @package_from_path = T.let({}, T::Hash[String, T.nilable(Package)])
end