Dpkg::Deps::Multiple - base module to represent multiple dependencies
DESCRIPTION
The Dpkg::Deps::Multiple module provides objects implementing various types
of dependencies. It is the base class for Dpkg::Deps::{AND,OR,Union}.
METHODS
$dep = Dpkg::Deps::Multiple->new(%opts);
Creates a new object.
$dep->reset()
Clears any dependency information stored in $dep so that $dep->is_empty()
returns true.
$dep->add(@deps)
Adds new dependency objects at the end of the list.
$dep->get_deps()
Returns a list of sub-dependencies.
$dep->sort()
Sorts alphabetically the internal list of dependencies.
$dep->arch_is_concerned($arch)
Returns true if at least one of the sub-dependencies apply to this
architecture.
$dep->reduce_arch($arch)
Simplifies the dependencies to contain only information relevant to the
given architecture. The non-relevant sub-dependencies are simply removed.
This trims off the architecture restriction list of Dpkg::Deps::Simple
objects.
$dep->has_arch_restriction()
Returns the list of package names that have such a restriction.
$dep->profile_is_concerned()
Returns true if at least one of the sub-dependencies apply to this profile.
$dep->reduce_profiles()
Simplifies the dependencies to contain only information relevant to the
given profile. The non-relevant sub-dependencies are simply removed.
This trims off the profile restriction list of Dpkg::Deps::Simple objects.
$dep->is_empty()
Returns true if the dependency is empty and doesn't contain any useful
information. This is true when a (descendant of) Dpkg::Deps::Multiple
contains an empty list of dependencies.
$dep->merge_union($other_dep)
This method is not meaningful for this object, and will always croak.
CHANGES
Version 1.02 (dpkg 1.17.10)
New methods: Add $dep->profile_is_concerned() and $dep->reduce_profiles().