Lines Matching refs:collator
155 // note for tertiary we can't use the collator->tertiaryMask, that
306 coleiter = ucol_openElements(strsrch->collator, pattern->text,
314 uprv_init_collIterate(strsrch->collator, pattern->text,
381 coleiter = ucol_openElements(strsrch->collator, pattern->text,
388 uprv_init_collIterate(strsrch->collator, pattern->text,
795 * @param collator collation sata
802 inline int32_t getNextSafeOffset(const UCollator *collator,
808 while (result != textlength && ucol_unsafeCP(text[result], collator)) {
853 int32_t safeoffset = getNextSafeOffset(strsrch->collator,
1179 const UCollator *collator = strsrch->collator;
1190 if ((*end < textlength && ucol_unsafeCP(text[*end], collator)) ||
1192 && ucol_unsafeCP(text[*start + 1], collator))) {
1512 // run the collator iterator through this match
1531 * @param collator collation sata
1538 inline uint32_t getPreviousSafeOffset(const UCollator *collator,
1543 while (result != 0 && ucol_unsafeCP(text[result - 1], collator)) {
1591 const UCollator *collator = strsrch->collator;
1600 collator)) {
1601 safeoffset = getPreviousSafeOffset(collator, text, textoffset);
1829 const UCollator *collator = strsrch->collator;
1833 if ((*end < textlength && ucol_unsafeCP(text[*end], collator)) ||
1835 && ucol_unsafeCP(text[*start + 1], collator))) {
2026 const UCollator *collator = strsrch->collator;
2033 if (*start < textlength && ucol_unsafeCP(text[*start], collator)) {
2095 * @param collator
2213 // run the collator iterator through this match
2251 const UCollator *collator = strsrch->collator;
2261 ], collator)) {
2262 safeoffset = getNextSafeOffset(collator, text, textoffset,
2466 const UCollator *collator = strsrch->collator;
2473 if (*start < textlength && ucol_unsafeCP(text[*start], collator)) {
2621 UCollator *collator = ucol_open(locale, status);
2625 collator, breakiter, status);
2628 if (collator) {
2629 ucol_close(collator);
2647 const UCollator *collator,
2660 if (pattern == NULL || text == NULL || collator == NULL) {
2666 if(ucol_getAttribute(collator, UCOL_NUMERIC_COLLATION, status) == UCOL_ON) {
2695 result->collator = collator;
2696 result->strength = ucol_getStrength(collator);
2699 ucol_getAttribute(collator, UCOL_ALTERNATE_HANDLING, status) ==
2701 result->variableTop = ucol_getVariableTop(collator, status);
2727 result->search->internalBreakIter = ubrk_open(UBRK_CHARACTER, ucol_getLocaleByType(result->collator, ULOC_VALID_LOCALE, status), text, textlength, status);
2737 result->textIter = ucol_openElements(collator, text,
2778 if (strsrch->ownCollator && strsrch->collator) {
2779 ucol_close((UCollator *)strsrch->collator);
3003 const UCollator *collator,
3007 if (collator == NULL) {
3013 if (strsrch->ownCollator && (strsrch->collator != collator)) {
3014 ucol_close((UCollator *)strsrch->collator);
3017 strsrch->collator = collator;
3018 strsrch->strength = ucol_getStrength(collator);
3022 strsrch->search->internalBreakIter = ubrk_open(UBRK_CHARACTER, ucol_getLocaleByType(collator, ULOC_VALID_LOCALE, status),
3027 ucol_getAttribute(collator, UCOL_ALTERNATE_HANDLING, status) ==
3030 strsrch->variableTop = ucol_getVariableTop(collator, status);
3036 uprv_init_collIterate(collator, strsrch->search->text,
3040 strsrch->utilIter->iteratordata_.coll = collator;
3058 return (UCollator *)strsrch->collator;
3378 string search, hence all attributes in the collator should
3389 UCollationStrength newStrength = ucol_getStrength(strsrch->collator);
3395 strsrch->strength = ucol_getStrength(strsrch->collator);
3403 shift = ucol_getAttribute(strsrch->collator, UCOL_ALTERNATE_HANDLING,
3411 varTop = ucol_getVariableTop(strsrch->collator, &status);
3421 uprv_init_collIterate(strsrch->collator, strsrch->search->text,
3863 // fields that are for strengths below that of the collator are set to 0. If this makes the int64_t
3864 // CE weight 0 (as for a combining diacritic with secondary weight when the collator strentgh is primary),