Lines Matching refs:trie
306 utf8trie_t *trie = um->tables->utf8data + um->ntab[n]->offset; in utf8nlookup() local
317 offlen = (*trie & OFFLEN) >> OFFLEN_SHIFT; in utf8nlookup()
318 if (*trie & NEXTBYTE) { in utf8nlookup()
323 mask = 1 << (*trie & BITNUM); in utf8nlookup()
328 node = (*trie & RIGHTNODE); in utf8nlookup()
329 offset = trie[offlen]; in utf8nlookup()
332 offset |= trie[offlen]; in utf8nlookup()
334 trie += offset; in utf8nlookup()
335 } else if (*trie & RIGHTPATH) { in utf8nlookup()
337 node = (*trie & TRIENODE); in utf8nlookup()
338 trie++; in utf8nlookup()
347 node = (*trie & LEFTNODE); in utf8nlookup()
348 trie += offlen + 1; in utf8nlookup()
349 } else if (*trie & RIGHTPATH) { in utf8nlookup()
354 node = (*trie & TRIENODE); in utf8nlookup()
355 trie++; in utf8nlookup()
365 if (LEAF_CCC(trie) == DECOMPOSE && LEAF_STR(trie)[0] == HANGUL) in utf8nlookup()
366 trie = utf8hangul(s - 2, hangul); in utf8nlookup()
367 return trie; in utf8nlookup()