public class NumericComparer extends java.lang.Object implements AtomicComparer
This class is used in XSLT only, so there is no need to handle XQuery's "empty least" vs "empty greatest" options.
Modifier and Type | Field and Description |
---|---|
protected StringToDouble |
converter |
Modifier | Constructor and Description |
---|---|
protected |
NumericComparer() |
Modifier and Type | Method and Description |
---|---|
int |
compareAtomicValues(AtomicValue a,
AtomicValue b)
Compare two Items by converting them to numbers and comparing the numeric values.
|
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
|
static NumericComparer |
getInstance() |
AtomicComparer |
provideContext(XPathContext context)
Supply the dynamic context in case this is needed for the comparison
|
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
|
protected StringToDouble converter
public static NumericComparer getInstance()
public StringCollator getCollator()
AtomicComparer
getCollator
in interface AtomicComparer
public AtomicComparer provideContext(XPathContext context)
provideContext
in interface AtomicComparer
context
- the dynamic evaluation contextpublic int compareAtomicValues(AtomicValue a, AtomicValue b)
compareAtomicValues
in interface AtomicComparer
a
- the first Item to be compared.b
- the second Item to be compared.java.lang.ClassCastException
- if the objects are not Itemspublic boolean comparesEqual(AtomicValue a, AtomicValue b)
comparesEqual
in interface AtomicComparer
a
- 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 AtomicComparer
Copyright (c) 2004-2020 Saxonica Limited. All rights reserved.