class RPM::Dependency
Attributes
@return [String] dependency flags
@return [String] dependency name
@return [Package] package this dependency belongs to
@return [String] dependency version
Public Class Methods
Source
# File lib/rpm/dependency.rb, line 20 def initialize(name, version, flags, owner) RPM::Utils.check_type(version, RPM::Version) @name = name @version = version @flags = flags @owner = owner end
Public Instance Methods
Source
# File lib/rpm/dependency.rb, line 67 def eq? flags & RPM::SENSE[:equal] end
@return [Boolean] true if ‘=’, ‘=<’ or ‘>=’ are used to compare the version
Source
# File lib/rpm/dependency.rb, line 77 def ge? (flags & RPM::SENSE[:greater]) && (flags & RPM::SENSE[:equal]) end
@return [Boolean] true if ‘>=’ is used to compare the version
Source
# File lib/rpm/dependency.rb, line 62 def gt? flags & RPM::SENSE[:greater] end
@return [Boolean] true if ‘>’ or ‘>=’ are used to compare the version
Source
# File lib/rpm/dependency.rb, line 72 def le? (flags & RPM::SENSE[:less]) && (flags & RPM::SENSE[:equal]) end
@return [Boolean] true if ‘=<’ is used to compare the version
Source
# File lib/rpm/dependency.rb, line 57 def lt? flags & RPM::SENSE[:less] end
@return [Boolean] true if ‘<’ or ‘=<’ are used to compare the version
Source
# File lib/rpm/dependency.rb, line 82 def pre? flags & RPM::SENSE[:prereq] end
@return [Boolean] true if this is a pre-requires
Source
# File lib/rpm/dependency.rb, line 32 def satisfy?(other) case other when RPM::Package then other.provides.each do |prov| return true if self.satisfy?(prov) end return false when RPM::Dependency then RPM::C.rpmdsCompare( RPM::C.rpmdsSingle(:providename, other.name, other.version.to_vre, other.flags), RPM::C.rpmdsSingle(:providename, name, version.to_vre, flags)) != 0 when RPM::Version then RPM::C.rpmdsCompare( RPM::C.rpmdsSingle(:providename, name, other.to_vre, other.to_vre.empty? ? 0 : :equal), RPM::C.rpmdsSingle(:providename, name, version.to_vre, flags)) != 0 else raise(TypeError, "#{other} is not a Version or Dependency") end end
@param [Package, Dependency
, Version] other @return [Boolean] true if other
satisfies this dependency