Support check for arity
diff --git a/org.eclipse.equinox.p2.cudf/src/main/java/org/eclipse/equinox/p2/cudf/solver/Projector.java b/org.eclipse.equinox.p2.cudf/src/main/java/org/eclipse/equinox/p2/cudf/solver/Projector.java
index 83ee843..a45eb39 100644
--- a/org.eclipse.equinox.p2.cudf/src/main/java/org/eclipse/equinox/p2/cudf/solver/Projector.java
+++ b/org.eclipse.equinox.p2.cudf/src/main/java/org/eclipse/equinox/p2/cudf/solver/Projector.java
@@ -243,10 +243,10 @@
if (matches.isEmpty()) {
missingRequirement(iu, req);
} else {
- // if (req.getArity() == 1) {
- // InstallableUnit[] array = new InstallableUnit[matches.size()];
- // dependencyHelper.atMost(new Explanation.Singleton(array), 1, array);
- // }
+ if (req.getArity() == 1) {
+ createAtMostOne((InstallableUnit[]) matches.toArray(new InstallableUnit[matches.size()]));
+ return;
+ }
InstallableUnit reqIu = (InstallableUnit) matches.iterator().next();
Explanation explanation = new Explanation.IUToInstall(reqIu);
createImplication(iu, matches, explanation);