home *** CD-ROM | disk | FTP | other *** search
- package COM.objectspace.jgl;
-
- public final class Comparing {
- private Comparing() {
- }
-
- public static Object median(Object var0, Object var1, Object var2, BinaryPredicate var3) {
- if (var3.execute(var0, var1)) {
- if (var3.execute(var1, var2)) {
- return var1;
- } else {
- return var3.execute(var0, var2) ? var2 : var0;
- }
- } else if (var3.execute(var0, var2)) {
- return var0;
- } else {
- return var3.execute(var1, var2) ? var2 : var1;
- }
- }
-
- public static Pair mismatch(InputIterator var0, InputIterator var1, InputIterator var2) {
- InputIterator var3 = (InputIterator)var0.clone();
- InputIterator var4 = (InputIterator)var2.clone();
-
- while(!var3.equals(var1) && var3.get().equals(var4.get())) {
- var3.advance();
- var4.advance();
- }
-
- return new Pair(var3, var4);
- }
-
- public static Pair mismatch(Container var0, Container var1) {
- return mismatch((InputIterator)var0.start(), (InputIterator)var0.finish(), (InputIterator)var1.start());
- }
-
- public static Pair mismatch(InputIterator var0, InputIterator var1, InputIterator var2, BinaryPredicate var3) {
- InputIterator var4 = (InputIterator)var0.clone();
- InputIterator var5 = (InputIterator)var2.clone();
-
- while(!var4.equals(var1) && var3.execute(var4.get(), var5.get())) {
- var4.advance();
- var5.advance();
- }
-
- return new Pair(var4, var5);
- }
-
- public static Pair mismatch(Container var0, Container var1, BinaryPredicate var2) {
- return mismatch(var0.start(), var0.finish(), var1.start(), var2);
- }
-
- public static boolean equal(InputIterator var0, InputIterator var1, InputIterator var2) {
- InputIterator var3 = (InputIterator)var0.clone();
- InputIterator var4 = (InputIterator)var2.clone();
-
- while(!var3.equals(var1)) {
- if (!var3.get().equals(var4.get())) {
- return false;
- }
-
- var3.advance();
- var4.advance();
- }
-
- return true;
- }
-
- public static boolean equal(Container var0, Container var1) {
- return var0.size() == var1.size() && equal(var0.start(), var0.finish(), var1.start());
- }
-
- public static boolean lexicographicalCompare(InputIterator var0, InputIterator var1, InputIterator var2, InputIterator var3) {
- return lexicographicalCompare(var0, var1, var2, var3, new HashComparator());
- }
-
- public static boolean lexicographicalCompare(Container var0, Container var1) {
- ForwardIterator var2 = var0.start();
- ForwardIterator var3 = var0.finish();
- ForwardIterator var4 = var1.start();
- ForwardIterator var5 = var1.finish();
- return lexicographicalCompare(var2, var3, var4, var5, new HashComparator());
- }
-
- public static boolean lexicographicalCompare(InputIterator var0, InputIterator var1, InputIterator var2, InputIterator var3, BinaryPredicate var4) {
- InputIterator var5 = (InputIterator)var0.clone();
- InputIterator var6 = (InputIterator)var2.clone();
-
- while(!var5.equals(var1) && !var6.equals(var3)) {
- if (var4.execute(var5.get(), var6.get())) {
- return true;
- }
-
- if (var4.execute(var6.get(), var5.get())) {
- return false;
- }
-
- var5.advance();
- var6.advance();
- }
-
- return var5.equals(var1) && !var6.equals(var3);
- }
-
- public static boolean lexicographicalCompare(Container var0, Container var1, BinaryPredicate var2) {
- return lexicographicalCompare(var0.start(), var0.finish(), var1.start(), var1.finish(), var2);
- }
- }
-