A VendorSet
represents gems that have been unpacked into a specific directory that contains a gemspec.
This is used for gem dependency file support.
Example:
set = Gem::Resolver::VendorSet.new set.add_vendor_gem 'rake', 'vendor/rake'
The directory vendor/rake must contain an unpacked rake gem along with a rake.gemspec (watching the given name).
Returns an Array
of VendorSpecification objects matching the DependencyRequest req
.
# File ruby-3.1.2/lib/rubygems/resolver/vendor_set.rb, line 54 def find_all(req) @specs.values.select do |spec| req.match? spec end.map do |spec| source = Gem::Source::Vendor.new @directories[spec] Gem::Resolver::VendorSpecification.new self, spec, source end end