PHP 8.2.31
Preview: dependency_request.rb Size: 2.25 KB
/proc/thread-self/root/opt/alt/ruby31/share/rubygems/rubygems/resolver/dependency_request.rb

# frozen_string_literal: true
##
# Used Internally. Wraps a Dependency object to also track which spec
# contained the Dependency.

class Gem::Resolver::DependencyRequest
  ##
  # The wrapped Gem::Dependency

  attr_reader :dependency

  ##
  # The request for this dependency.

  attr_reader :requester

  ##
  # Creates a new DependencyRequest for +dependency+ from +requester+.
  # +requester may be nil if the request came from a user.

  def initialize(dependency, requester)
    @dependency = dependency
    @requester  = requester
  end

  def ==(other) # :nodoc:
    case other
    when Gem::Dependency
      @dependency == other
    when Gem::Resolver::DependencyRequest
      @dependency == other.dependency
    else
      false
    end
  end

  ##
  # Is this dependency a development dependency?

  def development?
    @dependency.type == :development
  end

  ##
  # Does this dependency request match +spec+?
  #
  # NOTE:  #match? only matches prerelease versions when #dependency is a
  # prerelease dependency.

  def match?(spec, allow_prerelease = false)
    @dependency.match? spec, nil, allow_prerelease
  end

  ##
  # Does this dependency request match +spec+?
  #
  # NOTE:  #matches_spec? matches prerelease versions.  See also #match?

  def matches_spec?(spec)
    @dependency.matches_spec? spec
  end

  ##
  # The name of the gem this dependency request is requesting.

  def name
    @dependency.name
  end

  def type
    @dependency.type
  end

  ##
  # Indicate that the request is for a gem explicitly requested by the user

  def explicit?
    @requester.nil?
  end

  ##
  # Indicate that the request is for a gem requested as a dependency of
  # another gem

  def implicit?
    !explicit?
  end

  ##
  # Return a String indicating who caused this request to be added (only
  # valid for implicit requests)

  def request_context
    @requester ? @requester.request : "(unknown)"
  end

  def pretty_print(q) # :nodoc:
    q.group 2, "[Dependency request ", "]" do
      q.breakable
      q.text @dependency.to_s

      q.breakable
      q.text " requested by "
      q.pp @requester
    end
  end

  ##
  # The version requirement for this dependency request

  def requirement
    @dependency.requirement
  end

  def to_s # :nodoc:
    @dependency.to_s
  end
end

Directory Contents

Dirs: 2 × Files: 26

Name Size Perms Modified Actions
api_set DIR
- drwxr-xr-x 2025-05-13 07:36:00
Edit Download
molinillo DIR
- drwxr-xr-x 2025-04-28 17:36:04
Edit Download
2.90 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
2.84 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
2.74 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
1.62 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
1.18 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
3.25 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
280 B lrw-r--r-- 2025-04-28 17:36:10
Edit Download
2.25 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
2.88 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
1.27 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
1.41 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
2.36 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
1.21 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
6.30 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
805 B lrw-r--r-- 2025-04-28 17:36:10
Edit Download
1.67 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
1.81 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
73 B lrw-r--r-- 2025-04-28 17:36:10
Edit Download
1.33 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
1.22 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
900 B lrw-r--r-- 2025-04-28 17:36:10
Edit Download
2.66 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
1.33 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
957 B lrw-r--r-- 2025-04-28 17:36:10
Edit Download
1.91 KB lrw-r--r-- 2025-04-28 17:36:10
Edit Download
576 B lrw-r--r-- 2025-04-28 17:36:10
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).