Class RPM::DB
In: lib/rpm/db.rb
Parent: Object

Methods

close   closed?   count_packages   each   each   each_match   home   init_iterator   new   open   open_for_transaction   ptr   root  

Included Modules

Enumerable

Public Class methods

@deprecated Use RPM::Transaction#each

@visibility private @param ts [Transaction] transaction object

The package database is opened, but transactional processing (@see RPM::DB#transaction) cannot be done for when writable is false. When writable is false then the generated object gets freezed. @param [Boolean] writable Whether the database is writable. Default is false. @param [String] root Root path for the database, default is empty. @return [RPM::DB]

@example

  db = RPM::DB.open
  db.each do |pkg|
    puts pkg.name
  end

Public Instance methods

@return number of instances of name in the database

@yield [Package] Called for each package in the database @example

  db.each do |pkg|
    puts pkg.name
  end

@yield [Package] Called for each match @param [Number] key RPM tag key @param [String] val Value to match @example

  RPM.transaction do |t|
    t.each_match(RPM::TAG_ARCH, "x86_64") do |pkg|
      puts pkg.name
    end
  end

@deprecated Not possible to get home value in

  newer RPM versions

@return [RPM::MatchIterator] Creates an iterator for tag and val

@visibility private

@return [String] The root path of the database

[Validate]