Home | History | Annotate | Download | only in common

Lines Matching refs:states

37      * chars and states either use the static buffers
40 * They are parallel arrays with states[] holding the getState() values
44 uint32_t *states;
49 * api.limit: one past the last valid character in chars[], but states[limit] is valid
93 uint32_t *states;
97 states=(uint32_t *)uprv_malloc((capacity+1)*4+capacity*2);
98 if(states==NULL) {
102 chars=(UChar *)(states+(capacity+1));
113 uprv_memcpy(states+delta+start, uni->states+start, (limit-start+1)*4);
121 uprv_memcpy(states+start, uni->states+start, (limit-start+1)*4);
126 uni->states=states;
132 moveContentsTowardStart(UCharIterator *api, UChar chars[], uint32_t states[], int32_t delta) {
140 while(srcIndex<limit && states[srcIndex]==UITER_NO_STATE) {
149 states[destIndex++]=states[srcIndex++];
152 /* copy states[limit] as well! */
153 states[destIndex]=states[srcIndex];
159 moveContentsTowardEnd(UCharIterator *api, UChar chars[], uint32_t states[], int32_t delta) {
168 while(srcIndex>start && states[srcIndex]==UITER_NO_STATE) {
176 /* copy states[limit] as well! */
177 states[destIndex]=states[srcIndex];
181 states[destIndex]=states[srcIndex];
202 moveContentsTowardStart(api, uni->chars, uni->states, room);
209 if(uni->state!=uni->states[limit]) {
210 uiter_setState(iter, uni->states[limit], &errorCode);
222 uni->states[0]=uni->states[limit];
236 uiter_setState(iter, uni->states[limit], &errorCode);
246 ++limit; /* leave the known states[limit] alone */
248 /* set unknown states for all but the normalization boundaries */
249 uni->states[limit++]=UITER_NO_STATE;
251 uni->states[limit]=uni->state=uiter_getState(iter);
272 moveContentsTowardEnd(api, uni->chars, uni->states, room);
279 if(uni->state!=uni->states[start]) {
280 uiter_setState(iter, uni->states[start], &errorCode);
292 uni->states[capacity]=uni->states[start];
306 uiter_setState(iter, uni->states[start], &errorCode);
319 /* set unknown states for all but the normalization boundaries */
320 uni->states[start]=UITER_NO_STATE;
322 uni->states[start]=uni->state=uiter_getState(iter);
360 uni->states[api->limit]=uni->state=uiter_getState(iter);
376 uni->states[api->limit]=uni->state=uiter_getState(iter);
484 return ((UNormIterator *)api)->states[api->index];
509 if(state==uni->states[api->index]) {
511 } else if(state==uni->states[api->limit]) {
519 if(state==uni->states[i]) {
528 uni->states[api->limit]=state;
590 uni->states=uni->statesBuffer;
604 if(uni->states!=uni->statesBuffer) {
605 /* chars and states are allocated in the same memory block */
606 uprv_free(uni->states);
640 uni->states[uni->api.limit]=uni->state=uiter_getState(iter);