net.sf.saxon.sort
Class AtomicSortComparer.ComparisonKey

java.lang.Object
  extended by net.sf.saxon.sort.AtomicSortComparer.ComparisonKey
Enclosing class:
AtomicSortComparer

public static class AtomicSortComparer.ComparisonKey
extends java.lang.Object

Inner class: an object used as a comparison key. Two XPath atomic values are equal if and only if their comparison keys are equal.


Field Summary
(package private)  int category
           
(package private)  java.lang.Object value
           
 
Constructor Summary
AtomicSortComparer.ComparisonKey(int category, java.lang.Object value)
          Create a comparison key for a value in a particular category.
 
Method Summary
 boolean equals(java.lang.Object other)
          Test if two comparison keys are equal
 int hashCode()
          Get a hashcode for a comparison key.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

category

int category

value

java.lang.Object value
Constructor Detail

AtomicSortComparer.ComparisonKey

public AtomicSortComparer.ComparisonKey(int category,
                                        java.lang.Object value)
Create a comparison key for a value in a particular category. The "category" here represents a set of primitive types that allow mutual comparison (so all numeric values are in the same category).

Parameters:
category - the category
value - the value within the category
Method Detail

equals

public boolean equals(java.lang.Object other)
Test if two comparison keys are equal

Overrides:
equals in class java.lang.Object
Parameters:
other - the other comparison key
Returns:
true if they are equal
Throws:
java.lang.ClassCastException - if the other object is not a ComparisonKey

hashCode

public int hashCode()
Get a hashcode for a comparison key. If two comparison keys are equal, they must have the same hash code.

Overrides:
hashCode in class java.lang.Object
Returns:
the hash code.