Lines Matching refs:lcc

85 	struct lc_collate *lcc;  in __lc_collate_load()  local
146 if ((ldata = __locdata_alloc(locname, sizeof (*lcc))) == NULL) { in __lc_collate_load()
150 lcc = ldata->l_data[0]; in __lc_collate_load()
154 lcc->lc_info = info; in __lc_collate_load()
155 lcc->lc_directive_count = info->directive_count; in __lc_collate_load()
156 lcc->lc_large_count = info->large_count; in __lc_collate_load()
159 lcc->lc_directive[z] = info->directive[z]; in __lc_collate_load()
160 lcc->lc_subst_count[z] = info->subst_count[z]; in __lc_collate_load()
161 lcc->lc_pri_count[z] = info->pri_count[z]; in __lc_collate_load()
162 lcc->lc_undef_pri[z] = info->undef_pri[z]; in __lc_collate_load()
165 lcc->lc_char_table = (void *)TMP; in __lc_collate_load()
168 for (z = 0; z < lcc->lc_directive_count; z++) { in __lc_collate_load()
170 if ((count = lcc->lc_subst_count[z]) > 0) { in __lc_collate_load()
171 lcc->lc_subst_table[z] = (void *)TMP; in __lc_collate_load()
174 lcc->lc_subst_table[z] = NULL; in __lc_collate_load()
179 lcc->lc_chain_table = (void *)TMP; in __lc_collate_load()
182 lcc->lc_chain_table = NULL; in __lc_collate_load()
183 lcc->lc_chain_count = chains; in __lc_collate_load()
184 if (lcc->lc_large_count > 0) in __lc_collate_load()
185 lcc->lc_large_table = (void *)TMP; in __lc_collate_load()
187 lcc->lc_large_table = NULL; in __lc_collate_load()
193 substsearch(const struct lc_collate *lcc, const wchar_t key, int pass) in substsearch() argument
196 int n = lcc->lc_subst_count[pass]; in substsearch()
201 if (pass >= lcc->lc_directive_count) in substsearch()
207 p = lcc->lc_subst_table[pass] + (key & ~COLLATE_SUBST_PRIORITY); in substsearch()
213 chainsearch(const struct lc_collate *lcc, const wchar_t *key, int *len) in chainsearch() argument
216 int high = lcc->lc_info->chain_count - 1; in chainsearch()
219 collate_chain_t *tab = lcc->lc_chain_table; in chainsearch()
245 largesearch(const struct lc_collate *lcc, const wchar_t key) in largesearch() argument
248 int high = lcc->lc_info->large_count - 1; in largesearch()
251 collate_large_t *tab = lcc->lc_large_table; in largesearch()
271 _collate_lookup(const struct lc_collate *lcc, const wchar_t *t, in _collate_lookup() argument
283 if (which >= lcc->lc_directive_count) { in _collate_lookup()
312 if (((p2 = chainsearch(lcc, t, &l)) != NULL) && in _collate_lookup()
324 *pri = lcc->lc_char_table[*t].pri[which]; in _collate_lookup()
326 } else if ((lcc->lc_info->large_count > 0) && in _collate_lookup()
327 ((match = largesearch(lcc, *t)) != NULL)) { in _collate_lookup()
338 if (lcc->lc_directive[which] & DIRECTIVE_UNDEFINED) { in _collate_lookup()
342 *pri = lcc->lc_undef_pri[which]; in _collate_lookup()
360 if ((sptr = substsearch(lcc, *pri, which)) != NULL) { in _collate_lookup()
374 _collate_wxfrm(const struct lc_collate *lcc, const wchar_t *src, wchar_t *xf, in _collate_wxfrm() argument
386 int ndir = lcc->lc_directive_count; in _collate_wxfrm()
407 direc = lcc->lc_directive[pass]; in _collate_wxfrm()
432 _collate_lookup(lcc, t, &len, &pri, pass, in _collate_wxfrm()
452 _collate_lookup(lcc, t, &len, &pri, pass, in _collate_wxfrm()
536 const struct lc_collate *lcc = loc->collate; in _collate_sxfrm() local
537 int ndir = lcc->lc_directive_count; in _collate_sxfrm()
558 direc = lcc->lc_directive[pass]; in _collate_sxfrm()
584 _collate_lookup(lcc, t, &len, &pri, pass, in _collate_sxfrm()
611 _collate_lookup(lcc, t, &len, &pri, pass, in _collate_sxfrm()