- collIterate *ci = &(elems->iteratordata_);
- elems->reset_ = TRUE;
- ci->pos = ci->string;
- if ((ci->flags & UCOL_ITER_HASLEN) == 0 || ci->endp == NULL) {
- ci->endp = ci->string + u_strlen(ci->string);
- }
- ci->CEpos = ci->toReturn = ci->CEs;
- ci->flags = (ci->flags & UCOL_FORCE_HAN_IMPLICIT) | UCOL_ITER_HASLEN;
- if (ci->coll->normalizationMode == UCOL_ON) {
- ci->flags |= UCOL_ITER_NORM;
- }
-
- ci->writableBuffer.remove();
- ci->fcdPosition = NULL;
-
- //ci->offsetReturn = ci->offsetStore = NULL;
- ci->offsetRepeatCount = ci->offsetRepeatValue = 0;
-}
-
-U_CAPI void U_EXPORT2
-ucol_forceHanImplicit(UCollationElements *elems, UErrorCode *status)
-{
- if (U_FAILURE(*status)) {
- return;
- }
-
- if (elems == NULL) {
- *status = U_ILLEGAL_ARGUMENT_ERROR;
- return;
- }
-
- elems->iteratordata_.flags |= UCOL_FORCE_HAN_IMPLICIT;