Searched refs:trie (Results 1 - 25 of 37) sorted by relevance

12

/external/icu4c/common/
H A Dutrie.h28 * This is a common implementation of a "folded" trie.
114 * Number of bytes for a dummy trie.
115 * A dummy trie is an empty runtime trie, used when a real data trie cannot
135 * @param data data value for a surrogate from the trie, including the folding offset
175 /** Internal trie getter from an offset (0 if c16 is a BMP/lead units) and a 16-bit unit */
176 #define _UTRIE_GET_RAW(trie, data, offset, c16) \
177 (trie)->data[ \
178 ((int32_t)((trie)
[all...]
H A Dutrie.c16 * This is a common implementation of a "folded" trie.
44 /* Building a trie ----------------------------------------------------------*/
51 UNewTrie *trie; local
61 trie=fillIn;
63 trie=(UNewTrie *)uprv_malloc(sizeof(UNewTrie));
64 if(trie==NULL) {
68 uprv_memset(trie, 0, sizeof(UNewTrie));
69 trie->isAllocated= (UBool)(fillIn==NULL);
72 trie->data=aliasData;
73 trie
115 UNewTrie *trie; local
151 utrie_close(UNewTrie *trie) argument
164 utrie_getData(UNewTrie *trie, int32_t *pLength) argument
174 utrie_allocDataBlock(UNewTrie *trie) argument
194 utrie_getDataBlock(UNewTrie *trie, UChar32 c) argument
220 utrie_set32(UNewTrie *trie, UChar32 c, uint32_t value) argument
238 utrie_get32(UNewTrie *trie, UChar32 c, UBool *pInBlockZero) argument
282 utrie_setRange32(UNewTrie *trie, UChar32 start, UChar32 limit, uint32_t value, UBool overwrite) argument
403 utrie_fold(UNewTrie *trie, UNewTrieGetFoldedValue *getFoldedValue, UErrorCode *pErrorCode) argument
544 _findUnusedBlocks(UNewTrie *trie) argument
588 utrie_compact(UNewTrie *trie, UBool overlap, UErrorCode *pErrorCode) argument
719 defaultGetFoldedValue(UNewTrie *trie, UChar32 start, int32_t offset) argument
740 utrie_serialize(UNewTrie *trie, void *dt, int32_t capacity, UNewTrieGetFoldedValue *getFoldedValue, UBool reduceTo16Bits, UErrorCode *pErrorCode) argument
855 utrie_unserialize(UTrie *trie, const void *data, int32_t length, UErrorCode *pErrorCode) argument
930 utrie_unserializeDummy(UTrie *trie, void *data, int32_t length, uint32_t initialValue, uint32_t leadUnitValue, UBool make16BitTrie, UErrorCode *pErrorCode) argument
1057 utrie_enum(const UTrie *trie, UTrieEnumValue *enumValue, UTrieEnumRange *enumRange, const void *context) argument
[all...]
H A Dutrie2.cpp16 * This is a common implementation of a Unicode trie.
19 * This is the second common version of a Unicode trie (hence the name UTrie2).
37 get32(const UNewTrie2 *trie, UChar32 c, UBool fromLSCP) { argument
40 if(c>=trie->highStart && (!U_IS_LEAD(c) || fromLSCP)) {
41 return trie->data[trie->dataLength-UTRIE2_DATA_GRANULARITY];
48 i2=trie->index1[c>>UTRIE2_SHIFT_1]+
51 block=trie->index2[i2];
52 return trie->data[block+(c&UTRIE2_DATA_MASK)];
56 utrie2_get32(const UTrie2 *trie, UChar3 argument
69 utrie2_get32FromLeadSurrogateCodeUnit(const UTrie2 *trie, UChar32 c) argument
83 u8Index(const UTrie2 *trie, UChar32 c, int32_t i) argument
93 utrie2_internalU8NextIndex(const UTrie2 *trie, UChar32 c, const uint8_t *src, const uint8_t *limit) argument
108 utrie2_internalU8PrevIndex(const UTrie2 *trie, UChar32 c, const uint8_t *start, const uint8_t *src) argument
132 UTrie2 *trie; local
234 UTrie2 *trie; local
363 utrie2_close(UTrie2 *trie) argument
403 UTrie2Header trie; local
512 enumEitherTrie(const UTrie2 *trie, UChar32 start, UChar32 limit, UTrie2EnumValue *enumValue, UTrie2EnumRange *enumRange, const void *context) argument
688 utrie2_enum(const UTrie2 *trie, UTrie2EnumValue *enumValue, UTrie2EnumRange *enumRange, const void *context) argument
694 utrie2_enumForLeadSurrogate(const UTrie2 *trie, UChar32 lead, UTrie2EnumValue *enumValue, UTrie2EnumRange *enumRange, const void *context) argument
[all...]
H A Dutrie2_builder.c16 * This is a common implementation of a Unicode trie.
19 * This is the second common version of a Unicode trie (hence the name UTrie2).
42 * have been chosen to minimize trie sizes overall.
71 /* Building a trie ----------------------------------------------------------*/
106 allocIndex2Block(UNewTrie2 *trie);
110 UTrie2 *trie; local
119 trie=(UTrie2 *)uprv_malloc(sizeof(UTrie2));
122 if(trie==NULL || newTrie==NULL || data==NULL) {
123 uprv_free(trie);
130 uprv_memset(trie,
237 UNewTrie2 *trie; local
279 UTrie2 *trie; local
322 UTrie2 *trie; member in struct:NewTrieAndStatus
347 utrie_printLengths(const UTrie *trie) argument
356 utrie2_printLengths(const UTrie2 *trie, const char *which) argument
459 isInNullBlock(UNewTrie2 *trie, UChar32 c, UBool forLSCP) argument
474 allocIndex2Block(UNewTrie2 *trie) argument
493 getIndex2Block(UNewTrie2 *trie, UChar32 c, UBool forLSCP) argument
513 allocDataBlock(UNewTrie2 *trie, int32_t copyBlock) argument
559 releaseDataBlock(UNewTrie2 *trie, int32_t block) argument
566 isWritableBlock(UNewTrie2 *trie, int32_t block) argument
571 setIndex2Entry(UNewTrie2 *trie, int32_t i2, int32_t block) argument
588 getDataBlock(UNewTrie2 *trie, UChar32 c, UBool forLSCP) argument
616 set32(UNewTrie2 *trie, UChar32 c, UBool forLSCP, uint32_t value, UErrorCode *pErrorCode) argument
636 utrie2_set32(UTrie2 *trie, UChar32 c, uint32_t value, UErrorCode *pErrorCode) argument
648 utrie2_set32ForLeadSurrogateCodeUnit(UTrie2 *trie, UChar32 c, uint32_t value, UErrorCode *pErrorCode) argument
695 utrie2_setRange32(UTrie2 *trie, UChar32 start, UChar32 end, uint32_t value, UBool overwrite, UErrorCode *pErrorCode) argument
899 findHighStart(UNewTrie2 *trie, uint32_t highValue) argument
985 compactData(UNewTrie2 *trie) argument
1092 compactIndex2(UNewTrie2 *trie) argument
1174 compactTrie(UTrie2 *trie, UErrorCode *pErrorCode) argument
1251 utrie2_freeze(UTrie2 *trie, UTrie2ValueBits valueBits, UErrorCode *pErrorCode) argument
1421 utrie2_isFrozen(const UTrie2 *trie) argument
1426 utrie2_serialize(UTrie2 *trie, void *data, int32_t capacity, UErrorCode *pErrorCode) argument
[all...]
H A Dutrie2.h33 * This is a common implementation of a Unicode trie.
37 * This is the second common version of a Unicode trie (hence the name UTrie2).
79 * Open a frozen trie from its serialized from, stored in 32-bit-aligned memory.
81 * The memory must remain valid and unchanged as long as the trie is used.
82 * You must utrie2_close() the trie once you are done using it.
89 * @param pActualLength receives the actual number of bytes at data taken up by the trie data;
92 * @return the unserialized trie
103 * Open a frozen, empty "dummy" trie.
104 * A dummy trie is an empty trie, use
633 const UTrie2 *trie; member in class:UTrie2StringIterator
[all...]
H A Ducol_swp.cpp29 * This performs data swapping for a folded trie (see utrie.c for details).
37 UTrieHeader trie; local
56 trie.signature=ds->readUInt32(inTrie->signature);
57 trie.options=ds->readUInt32(inTrie->options);
58 trie.indexLength=udata_readInt32(ds, inTrie->indexLength);
59 trie.dataLength=udata_readInt32(ds, inTrie->dataLength);
61 if( trie.signature!=0x54726965 ||
62 (trie.options&UTRIE_OPTIONS_SHIFT_MASK)!=UTRIE_SHIFT ||
63 ((trie.options>>UTRIE_OPTIONS_INDEX_SHIFT)&UTRIE_OPTIONS_SHIFT_MASK)!=UTRIE_INDEX_SHIFT ||
64 trie
[all...]
H A Dubidi_props.c37 UTrie2 trie; member in struct:UBiDiProps
73 /* add the start code point of each same-value range of the trie */
74 utrie2_enum(&bdp->trie, NULL, _enumPropertyStartsRange, sa);
131 uint16_t props=UTRIE2_GET16(&bdp->trie, c);
137 uint16_t props=UTRIE2_GET16(&bdp->trie, c);
143 uint16_t props=UTRIE2_GET16(&bdp->trie, c);
176 uint16_t props=UTRIE2_GET16(&bdp->trie, c);
182 uint16_t props=UTRIE2_GET16(&bdp->trie, c);
188 uint16_t props=UTRIE2_GET16(&bdp->trie, c);
H A Dbytestrieiterator.cpp45 BytesTrie::Iterator::Iterator(const BytesTrie &trie, int32_t maxStringLength, argument
47 : bytes_(trie.bytes_), pos_(trie.pos_), initialPos_(trie.pos_),
48 remainingMatchLength_(trie.remainingMatchLength_),
49 initialRemainingMatchLength_(trie.remainingMatchLength_),
H A Ducharstrieiterator.cpp44 UCharsTrie::Iterator::Iterator(const UCharsTrie &trie, int32_t maxStringLength, argument
46 : uchars_(trie.uchars_), pos_(trie.pos_), initialPos_(trie.pos_),
47 remainingMatchLength_(trie.remainingMatchLength_),
48 initialRemainingMatchLength_(trie.remainingMatchLength_),
H A Dpropname.cpp217 UBool PropNameData::containsName(BytesTrie &trie, const char *name) { argument
232 result=trie.next((uint8_t)c);
258 BytesTrie trie(bytesTries+bytesTrieOffset);
259 if(containsName(trie, alias)) {
260 return trie.getValue();
H A Dpropname.h109 static UBool containsName(BytesTrie &trie, const char *name);
H A Ducase.c38 UTrie2 trie; member in struct:UCaseProps
68 /* add the start code point of each same-value range of the trie */
69 utrie2_enum(&csp->trie, NULL, _enumPropertyStartsRange, sa);
133 uint16_t props=UTRIE2_GET16(&csp->trie, c);
150 uint16_t props=UTRIE2_GET16(&csp->trie, c);
167 uint16_t props=UTRIE2_GET16(&csp->trie, c);
228 props=UTRIE2_GET16(&csp->trie, c);
397 uint16_t props=UTRIE2_GET16(&csp->trie, c);
404 uint16_t props=UTRIE2_GET16(&csp->trie, c);
420 uint16_t props=UTRIE2_GET16(&csp->trie,
[all...]
H A Dpropsvec.c480 utrie2_freeze(toUTrie2.trie, UTRIE2_16_VALUE_BITS, pErrorCode);
482 utrie2_close(toUTrie2.trie);
483 toUTrie2.trie=NULL;
485 return toUTrie2.trie;
500 utrie2_setRange32(toUTrie2->trie, start, end, (uint32_t)rowIndex, TRUE, pErrorCode);
512 /* too many rows for a 16-bit trie */
515 toUTrie2->trie=utrie2_open(toUTrie2->initialValue,
H A Dpropsvec.h154 * vectors array, and freeze the trie.
160 UTrie2 *trie; member in struct:UPVecToUTrie2Context
167 /* context=UPVecToUTrie2Context, creates the trie and stores the rowIndex values */
/external/icu4c/test/intltest/
H A Ducharstrietest.cpp69 void checkFirst(UCharsTrie &trie, const StringAndValue data[], int32_t dataLength);
70 void checkNext(UCharsTrie &trie, const StringAndValue data[], int32_t dataLength);
71 void checkNextWithState(UCharsTrie &trie, const StringAndValue data[], int32_t dataLength);
72 void checkNextString(UCharsTrie &trie, const StringAndValue data[], int32_t dataLength);
73 void checkIterator(UCharsTrie &trie, const StringAndValue data[], int32_t dataLength);
296 LocalPointer<UCharsTrie> trie(buildTrie(data, LENGTHOF(data), USTRINGTRIE_BUILD_FAST));
297 if(trie.isNull()) {
301 if( (result=trie->nextForCodePoint(0x4dff))!=USTRINGTRIE_NO_VALUE || result!=trie->current() ||
302 (result=trie
818 checkFirst(UCharsTrie &trie, const StringAndValue data[], int32_t dataLength) argument
856 checkNext(UCharsTrie &trie, const StringAndValue data[], int32_t dataLength) argument
930 checkNextWithState(UCharsTrie &trie, const StringAndValue data[], int32_t dataLength) argument
990 checkNextString(UCharsTrie &trie, const StringAndValue data[], int32_t dataLength) argument
1008 checkIterator(UCharsTrie &trie, const StringAndValue data[], int32_t dataLength) argument
[all...]
H A Dbytestrietest.cpp62 void checkFirst(BytesTrie &trie, const StringAndValue data[], int32_t dataLength);
63 void checkNext(BytesTrie &trie, const StringAndValue data[], int32_t dataLength);
64 void checkNextWithState(BytesTrie &trie, const StringAndValue data[], int32_t dataLength);
65 void checkNextString(BytesTrie &trie, const StringAndValue data[], int32_t dataLength);
66 void checkIterator(const BytesTrie &trie, const StringAndValue data[], int32_t dataLength);
307 LocalPointer<BytesTrie> trie(buildMonthsTrie(USTRINGTRIE_BUILD_FAST));
308 if(trie.isNull()) {
312 if(trie->hasUniqueValue(uniqueValue)) {
315 trie->next('j');
316 trie
656 checkFirst(BytesTrie &trie, const StringAndValue data[], int32_t dataLength) argument
678 checkNext(BytesTrie &trie, const StringAndValue data[], int32_t dataLength) argument
758 checkNextWithState(BytesTrie &trie, const StringAndValue data[], int32_t dataLength) argument
818 checkNextString(BytesTrie &trie, const StringAndValue data[], int32_t dataLength) argument
835 checkIterator(const BytesTrie &trie, const StringAndValue data[], int32_t dataLength) argument
[all...]
/external/icu4c/test/perf/unisetperf/draft/
H A Dtrieset.cpp16 * Modifies the trie index to make the BMP linear, and uses the original set
23 #define UTRIE_GET8_LATIN1(trie) ((const uint8_t *)(trie)->data32+UTRIE_DATA_BLOCK_LENGTH)
25 #define UTRIE_GET8_FROM_LEAD(trie, c16) \
26 ((const uint8_t *)(trie)->data32)[ \
27 ((int32_t)((trie)->index[(c16)>>UTRIE_SHIFT])<<UTRIE_INDEX_SHIFT)+ \
63 // Preflight the trie length.
77 utrie_unserialize(&trie, trieData, length, &errorCode); // TODO: Implement for 8-bit UTrie!
82 uprv_memcpy((uint16_t *)trie.index+(0xd800>>UTRIE_SHIFT),
83 trie
109 UTrie trie; member in class:TrieSet
[all...]
/external/icu4c/test/cintltst/
H A Dtrie2test.c98 const UTrie2 *trie,
105 utrie2_enum(trie, testEnumValue, testEnumRange, &checkRanges);
111 const UTrie2 *trie, UTrie2ValueBits valueBits,
118 UBool isFrozen=utrie2_isFrozen(trie);
119 const char *const typeName= isFrozen ? "frozen trie" : "newTrie";
133 value2=UTRIE2_GET16_FROM_U16_SINGLE_LEAD(trie, start);
135 value2=UTRIE2_GET32_FROM_U16_SINGLE_LEAD(trie, start);
144 value2=UTRIE2_GET16_FROM_SUPP(trie, start);
146 value2=UTRIE2_GET32_FROM_SUPP(trie, start);
154 value2=UTRIE2_GET16(trie, star
97 testTrieEnum(const char *testName, const UTrie2 *trie, const CheckRange checkRanges[], int32_t countCheckRanges) argument
110 testTrieGetters(const char *testName, const UTrie2 *trie, UTrie2ValueBits valueBits, const CheckRange checkRanges[], int32_t countCheckRanges) argument
269 testTrieUTF16(const char *testName, const UTrie2 *trie, UTrie2ValueBits valueBits, const CheckRange checkRanges[], int32_t countCheckRanges) argument
349 testTrieUTF8(const char *testName, const UTrie2 *trie, UTrie2ValueBits valueBits, const CheckRange checkRanges[], int32_t countCheckRanges) argument
485 testFrozenTrie(const char *testName, UTrie2 *trie, UTrie2ValueBits valueBits, const CheckRange checkRanges[], int32_t countCheckRanges) argument
534 testNewTrie(const char *testName, const UTrie2 *trie, const CheckRange checkRanges[], int32_t countCheckRanges) argument
542 testTrieSerialize(const char *testName, UTrie2 *trie, UTrie2ValueBits valueBits, UBool withSwap, const CheckRange checkRanges[], int32_t countCheckRanges) argument
751 testTrieSerializeAllValueBits(const char *testName, UTrie2 *trie, UBool withClone, const CheckRange checkRanges[], int32_t countCheckRanges) argument
800 UTrie2 *trie; local
860 UTrie2 *trie=makeTrieWithRanges(testName, withClone, local
1060 UTrie2 *trie=makeTrieWithRanges(testName, FALSE, local
1108 UTrie2 *trie; local
1157 UTrie2 *trie; local
1210 UTrie2 *trie; local
[all...]
H A Dtrietest.c55 _testFoldedValue32(UNewTrie *trie, UChar32 start, int32_t offset) { argument
64 value=utrie_get32(trie, start, &inBlockZero);
86 _testFoldedValue16(UNewTrie *trie, UChar32 start, int32_t offset) { argument
95 value=utrie_get32(trie, start, &inBlockZero);
141 const UTrie *trie,
170 if(trie->data32!=NULL) {
171 UTRIE_NEXT32(trie, p, limit, c, c2, value);
173 UTRIE_NEXT16(trie, p, limit, c, c2, value);
191 if(trie->data32==NULL) {
192 value=UTRIE_GET16_FROM_LEAD(trie,
140 testTrieIteration(const char *testName, const UTrie *trie, const CheckRange checkRanges[], int32_t countCheckRanges) argument
262 UTrie trie={ 0 }; local
456 UTrie trie={ 0 }; local
824 UTrie trie; local
[all...]
H A Dsprpdata.c154 UTrie trie = data->sprepTrie; local
160 UTRIE_GET16(&trie, codepoint, result);
234 UTrie trie = data->sprepTrie; local
254 UTRIE_GET16(&trie,start, result);
/external/icu4c/i18n/
H A Duspoof_wsconf.h44 UTrie2 *trie; // Any-case or Lower-case Trie. member in class:BuilderScriptSet
H A Duspoof_wsconf.cpp233 bsset->trie = table;
301 utrie2_set32(bSet->trie, bSet->codePoint, bSet->rindex, &status);
416 trie = NULL;
/external/icu4c/test/perf/dicttrieperf/
H A Ddicttrieperf.cpp264 BytesTrie trie(nameTrieBytes);
265 if(USTRINGTRIE_HAS_VALUE(trie.next(s, -1))) {
266 return trie.getValue();
391 // Note: CompactTrieDictionary::matches() is part of its trie implementation,
394 // check the trie state each time and load/store state in the object.
397 ucharsTrieMatches(UCharsTrie &trie, argument
409 UStringTrieResult result=trie.first(c);
438 result=trie.next(c);
457 : DictLookup(perfTest), trie(NULL) {
472 trie
482 UCharsTrie *trie; member in class:UCharsTrieDictLookup
591 BytesTrie *trie; member in class:BytesTrieDictLookup
596 bytesTrieMatches(BytesTrie &trie, UText *text, int32_t textLimit, int32_t *lengths, int &count, int limit ) argument
[all...]
/external/antlr/antlr-3.4/runtime/C/src/
H A Dantlr3collections.c108 static pANTLR3_TRIE_ENTRY intTrieGet (pANTLR3_INT_TRIE trie, ANTLR3_INTKEY key);
109 static ANTLR3_BOOLEAN intTrieDel (pANTLR3_INT_TRIE trie, ANTLR3_INTKEY key);
110 static ANTLR3_BOOLEAN intTrieAdd (pANTLR3_INT_TRIE trie, ANTLR3_INTKEY key, ANTLR3_UINT32 type, ANTLR3_INTKEY intType, void * data, void (ANTLR3_CDECL *freeptr)(void *));
111 static void intTrieFree (pANTLR3_INT_TRIE trie);
1698 * patricia trie are usually a lot lower than the 64 bits we
1735 /** Rather than use the bit index of a trie node to shift
1740 * cache while ever a trie is in heavy use, such as in
1770 pANTLR3_INT_TRIE trie; local
1772 trie = (pANTLR3_INT_TRIE) ANTLR3_CALLOC(1, sizeof(ANTLR3_INT_TRIE)); /* Base memory required */
1774 if (trie
1821 intTrieGet(pANTLR3_INT_TRIE trie, ANTLR3_INTKEY key) argument
1891 intTrieDel(pANTLR3_INT_TRIE trie, ANTLR3_INTKEY key) argument
1913 intTrieAdd(pANTLR3_INT_TRIE trie, ANTLR3_INTKEY key, ANTLR3_UINT32 type, ANTLR3_INTKEY intVal, void * data, void (ANTLR3_CDECL *freeptr)(void *)) argument
2249 intTrieFree(pANTLR3_INT_TRIE trie) argument
[all...]
/external/antlr/antlr-3.4/runtime/C/include/
H A Dantlr3collections.h362 * and potentially a huge trie. This is the algorithm for a Patricia Trie.
363 * Note also that this trie [can] accept multiple entries for the same key and is
364 * therefore a kind of elastic bucket patricia trie.
377 pANTLR3_INT_TRIE_NODE root; /* Root node of this integer trie */
380 ANTLR3_BOOLEAN allowDups; /* Whether this trie accepts duplicate keys */
383 pANTLR3_TRIE_ENTRY (*get) (struct ANTLR3_INT_TRIE_struct * trie, ANTLR3_INTKEY key);
384 ANTLR3_BOOLEAN (*del) (struct ANTLR3_INT_TRIE_struct * trie, ANTLR3_INTKEY key);
385 ANTLR3_BOOLEAN (*add) (struct ANTLR3_INT_TRIE_struct * trie, ANTLR3_INTKEY key, ANTLR3_UINT32 type, ANTLR3_INTKEY intVal, void * data, void (ANTLR3_CDECL *freeptr)(void *));
386 void (*free) (struct ANTLR3_INT_TRIE_struct * trie);

Completed in 397 milliseconds

12