PATH:
opt
/
alt
/
ruby26
/
lib64
/
ruby
/
2.6.0
/
rubygems
# frozen_string_literal: true require 'rubygems/source' ## # The SourceList represents the sources rubygems has been configured to use. # A source may be created from an array of sources: # # Gem::SourceList.from %w[https://rubygems.example https://internal.example] # # Or by adding them: # # sources = Gem::SourceList.new # sources << 'https://rubygems.example' # # The most common way to get a SourceList is Gem.sources. class Gem::SourceList include Enumerable ## # Creates a new SourceList def initialize @sources = [] end ## # The sources in this list attr_reader :sources ## # Creates a new SourceList from an array of sources. def self.from(ary) list = new list.replace ary return list end def initialize_copy(other) # :nodoc: @sources = @sources.dup end ## # Appends +obj+ to the source list which may be a Gem::Source, URI or URI # String. def <<(obj) src = case obj when URI Gem::Source.new(obj) when Gem::Source obj else Gem::Source.new(URI.parse(obj)) end @sources << src unless @sources.include?(src) src end ## # Replaces this SourceList with the sources in +other+ See #<< for # acceptable items in +other+. def replace(other) clear other.each do |x| self << x end self end ## # Removes all sources from the SourceList. def clear @sources.clear end ## # Yields each source URI in the list. def each @sources.each { |s| yield s.uri.to_s } end ## # Yields each source in the list. def each_source(&b) @sources.each(&b) end ## # Returns true if there are no sources in this SourceList. def empty? @sources.empty? end def ==(other) # :nodoc: to_a == other end ## # Returns an Array of source URI Strings. def to_a @sources.map { |x| x.uri.to_s } end alias_method :to_ary, :to_a ## # Returns the first source in the list. def first @sources.first end ## # Returns true if this source list includes +other+ which may be a # Gem::Source or a source URI. def include?(other) if other.kind_of? Gem::Source @sources.include? other else @sources.find { |x| x.uri.to_s == other.to_s } end end ## # Deletes +source+ from the source list which may be a Gem::Source or a URI. def delete(source) if source.kind_of? Gem::Source @sources.delete source else @sources.delete_if { |x| x.uri.to_s == source.to_s } end end end
[+]
resolver
[-] dependency_installer.rb
[edit]
[-] exceptions.rb
[edit]
[-] command.rb
[edit]
[-] source.rb
[edit]
[-] specification.rb
[edit]
[-] path_support.rb
[edit]
[+]
commands
[-] rdoc.rb
[edit]
[-] syck_hack.rb
[edit]
[+]
util
[-] uri_formatter.rb
[edit]
[+]
ext
[+]
source
[-] compatibility.rb
[edit]
[-] version.rb
[edit]
[-] request.rb
[edit]
[-] request_set.rb
[edit]
[-] remote_fetcher.rb
[edit]
[-] server.rb
[edit]
[-] version_option.rb
[edit]
[-] dependency_list.rb
[edit]
[+]
request
[-] basic_specification.rb
[edit]
[-] source_local.rb
[edit]
[-] config_file.rb
[edit]
[-] platform.rb
[edit]
[-] install_message.rb
[edit]
[-] gem_runner.rb
[edit]
[-] gemcutter_utilities.rb
[edit]
[-] installer.rb
[edit]
[-] available_set.rb
[edit]
[-] safe_yaml.rb
[edit]
[-] spec_fetcher.rb
[edit]
[-] validator.rb
[edit]
[-] specification_policy.rb
[edit]
[-] util.rb
[edit]
[-] command_manager.rb
[edit]
[-] name_tuple.rb
[edit]
[-] package_task.rb
[edit]
[-] source_list.rb
[edit]
[-] security.rb
[edit]
[+]
..
[-] ext.rb
[edit]
[-] local_remote_options.rb
[edit]
[-] psych_tree.rb
[edit]
[-] security_option.rb
[edit]
[+]
request_set
[-] installer_test_case.rb
[edit]
[+]
ssl_certs
[-] psych_additions.rb
[edit]
[-] errors.rb
[edit]
[-] test_case.rb
[edit]
[-] install_update_options.rb
[edit]
[-] stub_specification.rb
[edit]
[-] dependency.rb
[edit]
[-] user_interaction.rb
[edit]
[-] source_specific_file.rb
[edit]
[-] uninstaller.rb
[edit]
[-] package.rb
[edit]
[-] deprecate.rb
[edit]
[-] mock_gem_ui.rb
[edit]
[-] test_utilities.rb
[edit]
[-] install_default_message.rb
[edit]
[-] bundler_version_finder.rb
[edit]
[+]
core_ext
[+]
package
[-] requirement.rb
[edit]
[-] doctor.rb
[edit]
[-] resolver.rb
[edit]
[-] text.rb
[edit]
[-] defaults.rb
[edit]
[-] indexer.rb
[edit]
[+]
security