286N/A * reserved comment block 286N/A * DO NOT REMOVE OR ALTER! 286N/A * Copyright 2001-2004 The Apache Software Foundation. 286N/A * Licensed under the Apache License, Version 2.0 (the "License"); 286N/A * you may not use this file except in compliance with the License. 286N/A * You may obtain a copy of the License at 286N/A * Unless required by applicable law or agreed to in writing, software 286N/A * distributed under the License is distributed on an "AS IS" BASIS, 286N/A * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 286N/A * See the License for the specific language governing permissions and 286N/A * limitations under the License. 286N/A * Base class for sort records containing application specific sort keys 286N/A * A reference to a collator. May be updated by subclass if the stylesheet 286N/A * specifies a different language (will be updated iff _locale is updated). 286N/A * @deprecated This field continues to exist for binary compatibility. 286N/A * New code should not refer to it. 286N/A * A reference to the first Collator 286N/A * @deprecated This field continues to exist for binary compatibility. 286N/A * New code should not refer to it. 286N/A * A locale field that might be set by an instance of a subclass. 286N/A * @deprecated This field continues to exist for binary compatibility. 286N/A * New code should not refer to it. 286N/A private int _node;
// The position in the current iterator 286N/A private int _last =
0;
// Number of nodes in the current iterator 286N/A private int _scanned =
0;
// Number of key levels extracted from DOM 286N/A * This constructor is run by a call to ClassLoader in the 286N/A * makeNodeSortRecord method in the NodeSortRecordFactory class. Since we 286N/A * cannot pass any parameters to the constructor in that case we just set 286N/A * the default values here and wait for new values through initialize(). 286N/A * This method allows the caller to set the values that could not be passed 286N/A * to the default constructor. 286N/A // -- W. Eliot Kimber (eliot@isogen.com) 286N/A // If we can't read the propery, just use default collator 286N/A * Returns the node for this sort object 286N/A * Get the string or numeric value of a specific level key for this sort 286N/A * element. The value is extracted from the DOM if it is not already in 286N/A // Get value from our array if possible 286N/A // Get value from DOM if accessed for the first time 286N/A // Get value from our vector if possible 286N/A // Get value from DOM if accessed for the first time 286N/A // Treat number as NaN if it cannot be parsed as a double 286N/A * Compare this sort element to another. The first level is checked first, 286N/A * and we proceed to the next level only if the first level keys are 286N/A * identical (and so the key values may not even be extracted from the DOM) 286N/A * !!!!MUST OPTIMISE - THIS IS REALLY, REALLY SLOW!!!! 286N/A // Compare the two nodes either as numeric or text values 286N/A // Return inverse compare value if inverse sort order 286N/A // Compare based on document order if all sort keys are equal 286N/A * Returns the array of Collators used for text comparisons in this object. 286N/A * May be overridden by inheriting classes 286N/A * Extract the sort value for a level of this key.