# perldoc > Dpkg::Deps::OR

---
type: CommandReference
command: Dpkg::Deps::OR
mode: perldoc
section: 3pm
source: perldoc
---

## Quick Reference

- `$dep->output([$fh])` — Outputs the dependency with " | " joining sub-dependencies
- `$dep->implies($other_dep)` — Returns 1 (implies), 0 (implies NOT), or undef (no implication)
- `$dep->get_evaluation($facts)` — Evaluates dependency against installed packages; returns 1/0/undef
- `$dep->simplify_deps($facts, @assumed_deps)` — Simplifies dependency given facts and assumed true deps

## Name

Dpkg::Deps::OR - list of OR dependencies (public since dpkg 1.15.6)

## Synopsis

perl
use Dpkg::Deps::OR;
my $dep = Dpkg::Deps::OR->new();
$dep->add('package-a | package-b');
## Options

### Methods

- `$dep->output([$fh])` — Outputs the dependency using " | " to join the list of sub-dependencies.
- `$dep->implies($other_dep)` — Returns 1 when `$dep` implies `$other_dep`, 0 when `$dep` implies NOT(`$other_dep`), undef when there is no implication. `$dep` and `$other_dep` need not be of the same type.
- `$dep->get_evaluation($facts)` — Evaluates the dependency given a list of installed packages and virtual packages provided. `$facts` is a [Dpkg::Deps::KnownFacts](https://manpages.debian.org/unstable/dpkg-dev/Dpkg::Deps::KnownFacts.3pm.html) object. Returns 1 (true), 0 (false), or undef when information is insufficient.
- `$dep->simplify_deps($facts, @assumed_deps)` — Simplifies the dependency as much as possible given the facts (a [Dpkg::Deps::KnownFacts](https://manpages.debian.org/unstable/dpkg-dev/Dpkg::Deps::KnownFacts.3pm.html) object) and a list of other dependencies known to be true.

## See Also

- [Dpkg::Deps::Multiple](https://manpages.debian.org/unstable/dpkg-dev/Dpkg::Deps::Multiple.3pm.html) — parent class
- [Dpkg::Deps::KnownFacts](https://manpages.debian.org/unstable/dpkg-dev/Dpkg::Deps::KnownFacts.3pm.html) — facts object used by `get_evaluation` and `simplify_deps`
- [dpkg](https://manpages.debian.org/unstable/dpkg-dev/dpkg.1.html) — the Debian package manager