## Uses of Interface
org.eclipse.equinox.p2.metadata.IRequirement

Packages that use IRequirement
org.eclipse.equinox.p2.metadata: Defines the metadata being handled by p2.
org.eclipse.equinox.p2.planner: Provides core support for interacting with a dependency resolution mechanism.

### Uses of IRequirement in org.eclipse.equinox.p2.metadata

Methods in org.eclipse.equinox.p2.metadata that return IRequirement
`static IRequirement` MetadataFactory.`createRequirement(IMatchExpression<IInstallableUnit> requirement, IMatchExpression<IInstallableUnit> filter, int minCard, int maxCard, boolean greedy)` Create and return a new requirement (`IRequirement`) with the specified values.
`static IRequirement` MetadataFactory.`createRequirement(IMatchExpression<IInstallableUnit> requirement, IMatchExpression<IInstallableUnit> filter, int minCard, int maxCard, boolean greedy, String description)` Create and return a new requirement (`IRequirement`) with the specified values.
`static IRequirement` MetadataFactory.`createRequirement(String namespace, String name, VersionRange range, IMatchExpression<IInstallableUnit> filter, boolean optional, boolean multiple)` Returns a `IRequirement` with the given values.
`static IRequirement` MetadataFactory.`createRequirement(String namespace, String name, VersionRange range, IMatchExpression<IInstallableUnit> filter, int minCard, int maxCard, boolean greedy)` Create and return a new requirement (`IRequirement`) with the specified values.
`static IRequirement` MetadataFactory.`createRequirement(String namespace, String name, VersionRange range, IMatchExpression<IInstallableUnit> filter, int minCard, int maxCard, boolean greedy, String description)` Create and return a new requirement (`IRequirement`) with the specified values.
`static IRequirement` MetadataFactory.`createRequirement(String namespace, String name, VersionRange range, String filter, boolean optional, boolean multiple, boolean greedy)` Create and return a new requirement (`IRequirement`) with the specified values.
`IRequirement[][]` IInstallableUnitPatch.`getApplicabilityScope()` The applicability scope of a patch describes the installable units that this patch should be applied to.
`IRequirement` IInstallableUnitPatch.`getLifeCycle()` Returns the required capability that defines the lifecycle of this patch.

Methods in org.eclipse.equinox.p2.metadata that return types with arguments of type IRequirement
`Collection<IRequirement>` IInstallableUnitFragment.`getHost()`
`Collection<IRequirement>` MetadataFactory.InstallableUnitDescription.`getMetaRequiredCapabilities()` Deprecated. Use getMetaRequirements() instead
`Collection<IRequirement>` IInstallableUnit.`getMetaRequirements()`
`Collection<IRequirement>` MetadataFactory.InstallableUnitDescription.`getMetaRequirements()` Return a collection of the meta requirements specified on this installable unit.
`List<IRequirement>` MetadataFactory.InstallableUnitDescription.`getRequiredCapabilities()` Deprecated. Use getRequirements() instead
`Collection<IRequirement>` IInstallableUnit.`getRequirements()`
`List<IRequirement>` MetadataFactory.InstallableUnitDescription.`getRequirements()` Return a collection of the requirements specified on this installable unit.

Methods in org.eclipse.equinox.p2.metadata with parameters of type IRequirement
`static IRequirementChange` MetadataFactory.`createRequirementChange(IRequirement applyOn, IRequirement newValue)` Returns a new requirement change.
`boolean` IInstallableUnit.`satisfies(IRequirement candidate)` Returns whether this unit has a provided capability that satisfies the given requirement.
`void` MetadataFactory.InstallableUnitPatchDescription.`setApplicabilityScope(IRequirement[][] applyTo)` Set the applicability scope for the installable unit patch.
`void` MetadataFactory.InstallableUnitFragmentDescription.`setHost(IRequirement... hostRequirement)` Specify the requirements identifying the host to which the installable unit fragment should be attached to.
`void` MetadataFactory.InstallableUnitPatchDescription.`setLifeCycle(IRequirement lifeCycle)` Set the lifecycle change for the installable unit patch.
`void` MetadataFactory.InstallableUnitDescription.`setMetaRequiredCapabilities(IRequirement[] metaRequirements)` Deprecated. Use setMetaRequirements(requirements) instead
`void` MetadataFactory.InstallableUnitDescription.`setMetaRequirements(IRequirement[] metaRequirements)` Set the meta requirements for the installable unit.
`void` MetadataFactory.InstallableUnitDescription.`setRequiredCapabilities(IRequirement[] requirements)` Deprecated. Use setRequirements(requirements) instead
`void` MetadataFactory.InstallableUnitDescription.`setRequirements(IRequirement[] requirements)` Set the requirements for the installable unit.

Method parameters in org.eclipse.equinox.p2.metadata with type arguments of type IRequirement
`void` MetadataFactory.InstallableUnitDescription.`addRequiredCapabilities(Collection<IRequirement> additional)` Deprecated. Use addRequirements(additional) instead
`void` MetadataFactory.InstallableUnitDescription.`addRequirements(Collection<IRequirement> additional)` Add the specified requirements to the installable unit.

### Uses of IRequirement in org.eclipse.equinox.p2.planner

Methods in org.eclipse.equinox.p2.planner that return types with arguments of type IRequirement
`Collection<IRequirement>` IProfileChangeRequest.`getExtraRequirements()` Get the extra requirements that have been specified through method `IProfileChangeRequest.addExtraRequirements(Collection)`

Method parameters in org.eclipse.equinox.p2.planner with type arguments of type IRequirement
`void` IProfileChangeRequest.`addExtraRequirements(Collection<IRequirement> requirements)` Add extra requirements that must be satisfied by the planner.