class Gem::Resolver::DependencyRequest
内部使用。包装一个 Dependency 对象,以便同时跟踪哪个 spec 包含该 Dependency。
属性
此依赖项的请求者。
Public Class Methods
Source
# File lib/rubygems/resolver/dependency_request.rb, line 22 def initialize(dependency, requester) @dependency = dependency @requester = requester end
为 requester 中的 dependency 创建一个新的 DependencyRequest。如果请求来自用户,则 requester 可以为 nil。
Public Instance Methods
Source
# File lib/rubygems/resolver/dependency_request.rb, line 41 def development? @dependency.type == :development end
此依赖项是开发依赖项吗?
Source
# File lib/rubygems/resolver/dependency_request.rb, line 78 def explicit? @requester.nil? end
表明该请求是用户明确请求的 gem。
Source
# File lib/rubygems/resolver/dependency_request.rb, line 86 def implicit? !explicit? end
表明该请求是作为另一个 gem 的依赖项请求的 gem。
Source
# File lib/rubygems/resolver/dependency_request.rb, line 51 def match?(spec, allow_prerelease = false) @dependency.match? spec, nil, allow_prerelease end
此依赖项请求是否与 spec 匹配?
注意:只有当 dependency 是预发布依赖项时,match? 才匹配预发布版本。
Source
# File lib/rubygems/resolver/dependency_request.rb, line 60 def matches_spec?(spec) @dependency.matches_spec? spec end
此依赖项请求是否与 spec 匹配?
注意:matches_spec? 匹配预发布版本。另请参阅 match?
Source
# File lib/rubygems/resolver/dependency_request.rb, line 67 def name @dependency.name end
此依赖项请求正在请求的 gem 的名称。
Source
# File lib/rubygems/resolver/dependency_request.rb, line 94 def request_context @requester ? @requester.request : "(unknown)" end
返回一个 String,指示谁导致此请求被添加(仅对隐式请求有效)。
Source
# File lib/rubygems/resolver/dependency_request.rb, line 112 def requirement @dependency.requirement end
此依赖项请求的版本要求。
Source
# File lib/rubygems/resolver/dependency_request.rb, line 71 def type @dependency.type end