@Override public int compareTo(DocumentPath that) { return Comparators.lexicographical(Comparator.<String>naturalOrder()) .compare(this.pathElements, that.pathElements); } }
@SuppressWarnings("unchecked") // dang varargs public void testLexicographical() { Comparator<String> comparator = Ordering.natural(); Comparator<Iterable<String>> lexy = Comparators.lexicographical(comparator); ImmutableList<String> empty = ImmutableList.of(); ImmutableList<String> a = ImmutableList.of("a"); ImmutableList<String> aa = ImmutableList.of("a", "a"); ImmutableList<String> ab = ImmutableList.of("a", "b"); ImmutableList<String> b = ImmutableList.of("b"); Helpers.testComparator(lexy, empty, a, aa, ab, b); new EqualsTester() .addEqualityGroup(lexy, Comparators.lexicographical(comparator)) .addEqualityGroup(Comparators.lexicographical(String.CASE_INSENSITIVE_ORDER)) .addEqualityGroup(Ordering.natural()) .testEquals(); }
@Override public final int compareTo(Path other) { return Comparators.lexicographical(Comparator.<String>naturalOrder()) .compare(getNames(), ((ZipPath) other).getNames()); }
@Override public int compareTo(DocumentPath that) { return Comparators.lexicographical(Comparator.<String>naturalOrder()) .compare(this.pathElements, that.pathElements); } }
@Override public int compareTo(AsPath rhs) { return Comparators.lexicographical(Ordering.<AsSet>natural()).compare(_asSets, rhs._asSets); }
@Override public int compareTo(AsSet o) { return Comparators.lexicographical(Ordering.<Long>natural()).compare(_value, o._value); }
public static <C extends Comparable<? super C>> int compareIterable( Iterable<C> lhs, Iterable<C> rhs) { return Comparators.lexicographical(Ordering.<C>natural()).compare(lhs, rhs); }
@Override public int compareTo(FlowTrace rhs) { return Comparator.comparing(FlowTrace::getHops, Comparators.lexicographical(Ordering.natural())) .thenComparing(FlowTrace::getDisposition) .thenComparing(FlowTrace::getNotes, Comparator.nullsFirst(Ordering.natural())) .compare(this, rhs); }
@Override public int compareTo(FlowTraceHop o) { return Comparator.comparing(FlowTraceHop::getEdge) .thenComparing( FlowTraceHop::getTransformedFlow, Comparator.nullsFirst(Comparator.naturalOrder())) .thenComparing(FlowTraceHop::getRoutes, Comparators.lexicographical(Ordering.natural())) .thenComparing(FlowTraceHop::getFilterIn, Comparator.nullsFirst(Comparator.naturalOrder())) .thenComparing(FlowTraceHop::getFilterOut, Comparator.nullsFirst(Comparator.naturalOrder())) .compare(this, o); } }
@SuppressWarnings("unchecked") // dang varargs public void testLexicographical() { Comparator<String> comparator = Ordering.natural(); Comparator<Iterable<String>> lexy = Comparators.lexicographical(comparator); ImmutableList<String> empty = ImmutableList.of(); ImmutableList<String> a = ImmutableList.of("a"); ImmutableList<String> aa = ImmutableList.of("a", "a"); ImmutableList<String> ab = ImmutableList.of("a", "b"); ImmutableList<String> b = ImmutableList.of("b"); Helpers.testComparator(lexy, empty, a, aa, ab, b); new EqualsTester() .addEqualityGroup(lexy, Comparators.lexicographical(comparator)) .addEqualityGroup(Comparators.lexicographical(String.CASE_INSENSITIVE_ORDER)) .addEqualityGroup(Ordering.natural()) .testEquals(); }
} else if (schema.getType() == Type.LIST) { Comparator schemaComparator = schemaComparator(schema.getInnerSchema()); return lexicographical(nullsFirst(schemaComparator)); } else if (schema.equals(Schema.LONG)) { return naturalOrder(); } else if (schema.getType() == Type.SET) { Comparator schemaComparator = schemaComparator(schema.getInnerSchema()); return lexicographical(nullsFirst(schemaComparator)); } else if (schema.equals(Schema.STRING)) { return naturalOrder();