154 * 0..INDEX_STAGE_1_SHIFT
155 */
156 protected static final int INDEX_STAGE_2_SHIFT_ = 2;
157 /**
158 * Number of data values in a stage 2 (data array) block.
159 */
160 protected static final int DATA_BLOCK_LENGTH=1<<INDEX_STAGE_1_SHIFT_;
161 /**
162 * Mask for getting the lower bits from the input index.
163 * DATA_BLOCK_LENGTH - 1.
164 */
165 protected static final int INDEX_STAGE_3_MASK_ = DATA_BLOCK_LENGTH - 1;
166 /**
167 * Surrogate mask to use when shifting offset to retrieve supplementary
168 * values
169 */
170 protected static final int SURROGATE_MASK_ = 0x3FF;
171 /**
172 * Index or UTF16 characters
173 */
174 protected char m_index_[];
175 /**
176 * Internal TrieValue which handles the parsing of the data value.
177 * This class is to be implemented by the user
178 */
179 protected DataManipulate m_dataManipulate_;
180 /**
181 * Start index of the data portion of the trie. CharTrie combines
182 * index and data into a char array, so this is used to indicate the
183 * initial offset to the data portion.
184 * Note this index always points to the initial value.
185 */
186 protected int m_dataOffset_;
187 /**
188 * Length of the data array
189 */
190 protected int m_dataLength_;
191
192 // protected methods -----------------------------------------------
193
194 /**
|
154 * 0..INDEX_STAGE_1_SHIFT
155 */
156 protected static final int INDEX_STAGE_2_SHIFT_ = 2;
157 /**
158 * Number of data values in a stage 2 (data array) block.
159 */
160 protected static final int DATA_BLOCK_LENGTH=1<<INDEX_STAGE_1_SHIFT_;
161 /**
162 * Mask for getting the lower bits from the input index.
163 * DATA_BLOCK_LENGTH - 1.
164 */
165 protected static final int INDEX_STAGE_3_MASK_ = DATA_BLOCK_LENGTH - 1;
166 /**
167 * Surrogate mask to use when shifting offset to retrieve supplementary
168 * values
169 */
170 protected static final int SURROGATE_MASK_ = 0x3FF;
171 /**
172 * Index or UTF16 characters
173 */
174 protected char[] m_index_;
175 /**
176 * Internal TrieValue which handles the parsing of the data value.
177 * This class is to be implemented by the user
178 */
179 protected DataManipulate m_dataManipulate_;
180 /**
181 * Start index of the data portion of the trie. CharTrie combines
182 * index and data into a char array, so this is used to indicate the
183 * initial offset to the data portion.
184 * Note this index always points to the initial value.
185 */
186 protected int m_dataOffset_;
187 /**
188 * Length of the data array
189 */
190 protected int m_dataLength_;
191
192 // protected methods -----------------------------------------------
193
194 /**
|