Method: Gem::Dependency#match?
- Defined in:
- lib/rubygems/dependency.rb
#match?(obj, version = nil, allow_prerelease = false) ⇒ Boolean
:call-seq:
dep.match? name => true or false
dep.match? name, version => true or false
dep.match? spec => true or false
Does this dependency match the specification described by name
and version
or match spec
?
NOTE: Unlike #matches_spec? this method does not return true when the version is a prerelease version unless this is a prerelease dependency.
220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 |
# File 'lib/rubygems/dependency.rb', line 220 def match?(obj, version=nil, allow_prerelease=false) if !version name = obj.name version = obj.version else name = obj end return false unless self.name === name version = Gem::Version.new version return true if requirement.none? && !version.prerelease? return false if version.prerelease? && !allow_prerelease && !prerelease? requirement.satisfied_by? version end |