class Gem::Resolver::ActivationRequest
def ==(other) # :nodoc:
def ==(other) # :nodoc: case other when Gem::Specification @spec == other when Gem::Resolver::ActivationRequest @spec == other.spec else false end end
def development?
def development? @request.development? end
def download(path)
def download(path) Gem.ensure_gem_subdirectories path if @spec.respond_to? :sources exception = nil path = @spec.sources.find do |source| source.download full_spec, path rescue exception end return path if path raise exception if exception elsif @spec.respond_to? :source source = @spec.source source.download full_spec, path else source = Gem.sources.first source.download full_spec, path end end
def eql?(other)
def eql?(other) self == other end
def full_name
def full_name name_tuple.full_name end
def full_spec
def full_spec Gem::Specification === @spec ? @spec : @spec.spec end
def hash
def hash @spec.hash end
def initialize(spec, request)
def initialize(spec, request) @spec = spec @request = request end
def inspect # :nodoc:
def inspect # :nodoc: format("#<%s for %p from %s>", self.class, @spec, @request) end
def installed?
def installed? case @spec when Gem::Resolver::VendorSpecification then true else this_spec = full_spec Gem::Specification.any? do |s| s == this_spec && s.base_dir == this_spec.base_dir end end end
def name
def name @spec.name end
def name_tuple
def name_tuple @name_tuple ||= Gem::NameTuple.new(name, version, platform) end
def parent
def parent @request.requester end
def platform
def platform @spec.platform end
def pretty_print(q) # :nodoc:
def pretty_print(q) # :nodoc: q.group 2, "[Activation request", "]" do q.breakable q.pp @spec q.breakable q.text " for " q.pp @request end end
def version
def version @spec.version end