public class UntypedNumericComparer extends java.lang.Object implements AtomicComparer
| Constructor and Description |
|---|
UntypedNumericComparer() |
| Modifier and Type | Method and Description |
|---|---|
int |
compareAtomicValues(AtomicValue a,
AtomicValue b)
Compare two AtomicValue objects according to the rules for their data type.
|
boolean |
comparesEqual(AtomicValue a,
AtomicValue b)
Compare two AtomicValue objects for equality according to the rules for their data type.
|
StringCollator |
getCollator()
Get the collation used by this AtomicComparer if any
|
AtomicComparer |
provideContext(XPathContext context)
Supply the dynamic context in case this is needed for the comparison
|
static boolean |
quickCompare(UntypedAtomicValue a0,
NumericValue a1,
int operator,
ConversionRules rules)
Optimized routine to compare an untyped atomic value with a numeric value.
|
java.lang.String |
save()
Create a string representation of this AtomicComparer that can be saved in a compiled
package and used to reconstitute the AtomicComparer when the package is reloaded
|
public static boolean quickCompare(UntypedAtomicValue a0, NumericValue a1, int operator, ConversionRules rules) throws XPathException
a0 - the untypedAtomic comparanda1 - the numeric comparandoperator - the comparison operator: a singleton operator such as Token.FEQrules - the conversion rulesXPathException - if the first operand is not convertible to a doublepublic int compareAtomicValues(AtomicValue a, AtomicValue b)
compareAtomicValues in interface AtomicComparera - the first object to be compared. It is intended that this should be an instance
of AtomicValue, though this restriction is not enforced. If it is a StringValue, the
collator is used to compare the values, otherwise the value must implement the java.util.Comparable
interface.b - the second object to be compared. This must be comparable with the first object: for
example, if one is a string, they must both be strings.java.lang.ClassCastException - if the objects are not comparablepublic StringCollator getCollator()
getCollator in interface AtomicComparerpublic AtomicComparer provideContext(XPathContext context)
provideContext in interface AtomicComparercontext - the dynamic evaluation contextpublic boolean comparesEqual(AtomicValue a, AtomicValue b)
comparesEqual in interface AtomicComparera - the first object to be compared.b - the second object to be compared.java.lang.ClassCastException - if the objects are not comparablepublic java.lang.String save()
save in interface AtomicComparerCopyright (c) 2004-2020 Saxonica Limited.