@Override public boolean evaluate(PropertyValue p1, PropertyValue p2) { return p1.compareTo(p2) <= 0; } },
static PropertyValue minValue(PropertyValue a, PropertyValue b) { if (a == null) { return b; } return a.compareTo(b) <= 0 ? a : b; }
@Override public boolean evaluate(PropertyValue p1, PropertyValue p2) { return p1.compareTo(p2) < 0; } },
static PropertyValue maxValue(PropertyValue a, PropertyValue b) { if (a == null) { return b; } return a.compareTo(b) < 0 ? b : a; }
@Override public boolean evaluate(PropertyValue p1, PropertyValue p2) { return p1.compareTo(p2) <= 0; } },
static PropertyValue minValue(PropertyValue a, PropertyValue b) { if (a == null) { return b; } return a.compareTo(b) <= 0 ? a : b; }
@Override public boolean evaluate(PropertyValue p1, PropertyValue p2) { return p1.compareTo(p2) > 0; } },
@Override public boolean evaluate(PropertyValue p1, PropertyValue p2) { return p1.compareTo(p2) >= 0; } },
@Override public boolean evaluate(PropertyValue p1, PropertyValue p2) { return p1.compareTo(p2) <= 0; } },
@Override public boolean evaluate(PropertyValue p1, PropertyValue p2) { return p1.compareTo(p2) >= 0; } },
@Override public boolean evaluate(PropertyValue p1, PropertyValue p2) { return p1.compareTo(p2) < 0; } },
@Override public boolean evaluate(PropertyValue p1, PropertyValue p2) { return p1.compareTo(p2) > 0; } },
@Override public boolean evaluate(PropertyValue p1, PropertyValue p2) { return p1.compareTo(p2) >= 0; } },
@Override public boolean evaluate(PropertyValue p1, PropertyValue p2) { return p1.compareTo(p2) < 0; } },
static PropertyValue maxValue(PropertyValue a, PropertyValue b) { if (a == null) { return b; } return a.compareTo(b) < 0 ? b : a; }
static PropertyValue minValue(PropertyValue a, PropertyValue b) { if (a == null) { return b; } return a.compareTo(b) <= 0 ? a : b; }
@Override public boolean evaluate(PropertyValue p1, PropertyValue p2) { return p1.compareTo(p2) > 0; } },
static PropertyValue maxValue(PropertyValue a, PropertyValue b) { if (a == null) { return b; } return a.compareTo(b) < 0 ? b : a; }
comp = a.compareTo(b);
public static boolean match(@NotNull PropertyValue p1, @NotNull PropertyValue p2) { if (p1.getType().tag() != p2.getType().tag()) { return false; } switch (p1.getType().tag()) { case PropertyType.BINARY: if (p1.isArray() && !p2.isArray()) { return contains(p1.getValue(Type.BINARIES), p2.getValue(Type.BINARY)); } if (!p1.isArray() && p2.isArray()) { return contains(p2.getValue(Type.BINARIES), p1.getValue(Type.BINARY)); } break; default: if (p1.isArray() && !p2.isArray()) { return contains(p1.getValue(Type.STRINGS), p2.getValue(Type.STRING)); } if (!p1.isArray() && p2.isArray()) { return contains(p2.getValue(Type.STRINGS), p1.getValue(Type.STRING)); } } // both arrays or both single values return p1.compareTo(p2) == 0; }