Lines Matching refs:textOffset
665 * @param textoffset current offset
672 int32_t textoffset,
675 if (textoffset < textlength) {
676 int32_t temp = textoffset;
688 return textoffset;
695 * @param textoffset current offset, one offset away from the last character
702 int32_t textoffset)
706 textoffset < textlength) {
707 int32_t temp = textoffset;
711 return getNextBaseOffset(text, textoffset, textlength);
714 return textoffset;
723 * @param textoffset start text position to do search
731 int32_t textoffset,
744 textoffset += shift;
747 textoffset += pattern->defaultShiftSize;
750 textoffset = getNextUStringSearchBaseOffset(strsrch, textoffset);
757 return textoffset;
786 * @param textoffset offset in string
793 int32_t textoffset,
796 int32_t result = textoffset; // first contraction character
1241 * @param textoffset offset in the collation element text. the returned value
1249 int32_t *textoffset, UErrorCode *status)
1254 if (!checkNextExactContractionMatch(strsrch, &start, textoffset, status)) {
1259 if (!isBreakUnit(strsrch, start, *textoffset) ||
1260 checkRepeatedMatch(strsrch, start, *textoffset) ||
1261 hasAccentsBeforeMatch(strsrch, start, *textoffset) ||
1262 !checkIdentical(strsrch, start, *textoffset) ||
1263 hasAccentsAfterMatch(strsrch, start, *textoffset)) {
1265 (*textoffset) ++;
1266 *textoffset = getNextUStringSearchBaseOffset(strsrch, *textoffset);
1272 checkBreakBoundary(strsrch, &start, textoffset);
1277 strsrch->search->matchedLength = *textoffset - start;
1285 * @param textoffset one offset after the current character
1291 int32_t textoffset)
1293 if (textoffset > 0) {
1295 int32_t result = textoffset;
1296 U16_BACK_1(text, 0, textoffset);
1297 int32_t temp = textoffset;
1301 return textoffset;
1305 if (textoffset == 0) {
1310 return textoffset;
1517 * Gets the offset to the safe point in text before textoffset.
1522 * @param textoffset offset in string
1529 int32_t textoffset)
1531 int32_t result = textoffset; // first contraction character
1569 * @param textoffset of the start of the rearranged accent
1576 int32_t textoffset,
1586 int32_t safeoffset = textoffset;
1588 if (textoffset != 0 && ucol_unsafeCP(strsrch->canonicalSuffixAccents[0],
1590 safeoffset = getPreviousSafeOffset(collator, text, textoffset);
1591 safelength = textoffset - safeoffset;
1651 failedoffset, textoffset, status);
1673 result = textoffset;
1702 * @param textoffset end offset in the collation element text that ends with
1709 int32_t textoffset,
1713 int32_t temp = textoffset;
1715 if ((getFCD(text, &temp, textoffset) & LAST_BYTE_MASK_) == 0) {
1719 offset = doNextCanonicalPrefixMatch(strsrch, offset, textoffset,
1735 int32_t baseoffset = getPreviousBaseOffset(text, textoffset);
1737 unorm_normalize(text + baseoffset, textoffset - baseoffset, UNORM_NFD,
1777 * @param textoffset current offset, current character
1783 int32_t textoffset)
1785 if (strsrch->pattern.hasPrefixAccents && textoffset > 0) {
1787 int32_t offset = textoffset;
1790 return getPreviousBaseOffset(text, textoffset);
1793 return textoffset;
1901 * @param textoffset offset in the collation element text. the returned value
1909 int32_t *textoffset,
1922 strsrch->search->matchedLength = *textoffset -
1928 if (!checkNextCanonicalContractionMatch(strsrch, &start, textoffset,
1935 if (checkRepeatedMatch(strsrch, start, *textoffset) ||
1936 !isBreakUnit(strsrch, start, *textoffset) ||
1937 !checkIdentical(strsrch, start, *textoffset)) {
1938 (*textoffset) ++;
1939 *textoffset = getNextBaseOffset(strsrch->search->text, *textoffset,
1945 strsrch->search->matchedLength = *textoffset - start;
1956 * @param textoffset start text position to do search
1964 int32_t textoffset,
1969 if (textoffset != strsrch->search->textLength) {
1970 textoffset --;
1973 textoffset -= strsrch->pattern.defaultShiftSize;
1986 textoffset -= shift;
1989 textoffset -= strsrch->pattern.defaultShiftSize;
1992 textoffset = getPreviousUStringSearchBaseOffset(strsrch, textoffset);
1993 return textoffset;
2087 * @param textoffset offset in the collation element text. the returned value
2095 int32_t *textoffset,
2100 if (!checkPreviousExactContractionMatch(strsrch, textoffset, &end, status)
2107 if (checkRepeatedMatch(strsrch, *textoffset, end) ||
2108 !isBreakUnit(strsrch, *textoffset, end) ||
2109 hasAccentsBeforeMatch(strsrch, *textoffset, end) ||
2110 !checkIdentical(strsrch, *textoffset, end) ||
2111 hasAccentsAfterMatch(strsrch, *textoffset, end)) {
2112 (*textoffset) --;
2113 *textoffset = getPreviousBaseOffset(strsrch->search->text,
2114 *textoffset);
2120 checkBreakBoundary(strsrch, textoffset, &end);
2123 strsrch->search->matchedIndex = *textoffset;
2124 strsrch->search->matchedLength = end - *textoffset;
2229 * @param textoffset of the ends of the rearranged accent
2236 int32_t textoffset,
2245 int32_t safeoffset = textoffset;
2247 if (textoffset &&
2251 safeoffset = getNextSafeOffset(collator, text, textoffset,
2253 safelength = safeoffset - textoffset;
2257 text + textoffset, safelength,
2315 textoffset, failedoffset, status);
2337 result = textoffset;
2340 result = textoffset + (safeoffset - result);
2365 * @param textoffset start offset in the collation element text that starts
2372 int32_t textoffset,
2376 int32_t temp = textoffset;
2382 offset = doPreviousCanonicalSuffixMatch(strsrch, textoffset,
2398 int32_t baseoffset = getNextBaseOffset(text, textoffset, textlength);
2400 unorm_normalize(text + textoffset, baseoffset - textoffset, UNORM_NFD,
2539 * @param textoffset offset in the collation element text. the returned value
2547 int32_t *textoffset,
2557 strsrch->search->matchedIndex = *textoffset;
2561 - *textoffset;
2566 if (!checkPreviousCanonicalContractionMatch(strsrch, textoffset, &end,
2574 if (checkRepeatedMatch(strsrch, *textoffset, end) ||
2575 !isBreakUnit(strsrch, *textoffset, end) ||
2576 !checkIdentical(strsrch, *textoffset, end)) {
2577 (*textoffset) --;
2578 *textoffset = getPreviousBaseOffset(strsrch->search->text,
2579 *textoffset);
2583 strsrch->search->matchedIndex = *textoffset;
2584 strsrch->search->matchedLength = end - *textoffset;
4431 int32_t textoffset = ucol_getOffset(coleiter);
4436 textoffset = shiftForward(strsrch, textoffset, UCOL_NULLORDER,
4438 while (textoffset <= textlength)
4445 setColEIterOffset(coleiter, textoffset);
4502 textoffset = shiftForward(strsrch, textoffset, lastce,
4509 if (checkNextExactMatch(strsrch, &textoffset, status)) {
4518 int32_t textOffset = ucol_getOffset(strsrch->textIter);
4522 if (usearch_search(strsrch, textOffset, &start, &end, status)) {
4545 int32_t textoffset = ucol_getOffset(coleiter);
4549 textoffset = shiftForward(strsrch, textoffset, UCOL_NULLORDER,
4554 while (textoffset <= textlength)
4561 setColEIterOffset(coleiter, textoffset);
4611 found = doNextCanonicalMatch(strsrch, textoffset, status);
4618 textoffset = shiftForward(strsrch, textoffset, lastce,
4625 if (checkNextCanonicalMatch(strsrch, &textoffset, status)) {
4633 int32_t textOffset = ucol_getOffset(strsrch->textIter);
4637 if (usearch_search(strsrch, textOffset, &start, &end, status)) {
4659 int32_t textoffset = ucol_getOffset(coleiter);
4665 textoffset = strsrch->search->matchedIndex;
4668 textoffset = reverseShift(strsrch, textoffset, UCOL_NULLORDER,
4671 while (textoffset >= 0)
4679 setColEIterOffset(coleiter, textoffset);
4736 textoffset = reverseShift(strsrch, textoffset, targetce,
4742 if (checkPreviousExactMatch(strsrch, &textoffset, status)) {
4743 setColEIterOffset(coleiter, textoffset);
4750 int32_t textOffset;
4754 textOffset = strsrch->search->matchedIndex + strsrch->search->matchedLength - 1;
4773 textOffset = ucol_getOffset(strsrch->textIter);
4776 textOffset = ucol_getOffset(strsrch->textIter);
4782 if (usearch_searchBackwards(strsrch, textOffset, &start, &end, status)) {
4805 int32_t textoffset = ucol_getOffset(coleiter);
4813 textoffset = strsrch->search->matchedIndex;
4816 textoffset = reverseShift(strsrch, textoffset, UCOL_NULLORDER,
4821 while (textoffset >= 0)
4828 setColEIterOffset(coleiter, textoffset);
4882 found = doPreviousCanonicalMatch(strsrch, textoffset, status);
4889 textoffset = reverseShift(strsrch, textoffset, targetce,
4895 if (checkPreviousCanonicalMatch(strsrch, &textoffset, status)) {
4896 setColEIterOffset(coleiter, textoffset);
4903 int32_t textOffset;
4907 textOffset = strsrch->search->matchedIndex + strsrch->search->matchedLength - 1;
4926 textOffset = ucol_getOffset(strsrch->textIter);
4929 textOffset = ucol_getOffset(strsrch->textIter);
4935 if (usearch_searchBackwards(strsrch, textOffset, &start, &end, status)) {