# Dpkg::Deps::Multiple - phpMan

## NAME
    [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().

  Version 1.01 (dpkg 1.16.1)
    New method: Add $dep->reset().

  Version 1.00 (dpkg 1.15.6)
    Mark the module as public.

