Lines Matching refs:limit
70 static void set32x64Bits(uint32_t table[64], int32_t start, int32_t limit) { in set32x64Bits() argument
71 U_ASSERT(start<limit); in set32x64Bits()
72 U_ASSERT(limit<=0x800); in set32x64Bits()
79 if((start+1)==limit) { // Single-character shortcut. in set32x64Bits()
84 int32_t limitLead=limit>>6; in set32x64Bits()
85 int32_t limitTrail=limit&0x3f; in set32x64Bits()
122 UChar32 start, limit; in initBits() local
129 limit=list[listIndex++]; in initBits()
131 limit=0x110000; in initBits()
138 } while(start<limit && start<0x100); in initBits()
139 } while(limit<=0x100); in initBits()
146 limit=list[listIndex++]; in initBits()
148 limit=0x110000; in initBits()
150 if(limit>0x80) { in initBits()
160 set32x64Bits(table7FF, start, limit<=0x800 ? limit : 0x800); in initBits()
161 if(limit>0x800) { in initBits()
168 limit=list[listIndex++]; in initBits()
170 limit=0x110000; in initBits()
177 if(limit>0x10000) { in initBits()
178 limit=0x10000; in initBits()
184 if(start<limit) { // Else: Another range entirely in a known mixed-value block. in initBits()
192 if(start<limit) { in initBits()
193 if(start<(limit&~0x3f)) { in initBits()
195 set32x64Bits(bmpBlockBits, start>>6, limit>>6); in initBits()
198 if(limit&0x3f) { in initBits()
200 limit>>=6; in initBits()
201 bmpBlockBits[limit&0x3f]|=0x10001<<(limit>>6); in initBits()
202 limit=(limit+1)<<6; // Round up to the next block boundary. in initBits()
203 minStart=limit; // Ignore further ranges in this block. in initBits()
208 if(limit==0x10000) { in initBits()
214 limit=list[listIndex++]; in initBits()
216 limit=0x110000; in initBits()
323 BMPSet::span(const UChar *s, const UChar *limit, USetSpanCondition spanCondition) const { in span() argument
353 } else if(c>=0xdc00 || (s+1)==limit || (c2=s[1])<0xdc00 || c2>=0xe000) { in span()
365 } while(++s<limit); in span()
393 } else if(c>=0xdc00 || (s+1)==limit || (c2=s[1])<0xdc00 || c2>=0xe000) { in span()
405 } while(++s<limit); in span()
412 BMPSet::spanBack(const UChar *s, const UChar *limit, USetSpanCondition spanCondition) const { in spanBack() argument
418 c=*(--limit); in spanBack()
442 } else if(c<0xdc00 || s==limit || (c2=*(limit-1))<0xd800 || c2>=0xdc00) { in spanBack()
452 --limit; in spanBack()
454 if(s==limit) { in spanBack()
461 c=*(--limit); in spanBack()
485 } else if(c<0xdc00 || s==limit || (c2=*(limit-1))<0xd800 || c2>=0xdc00) { in spanBack()
495 --limit; in spanBack()
497 if(s==limit) { in spanBack()
502 return limit+1; in spanBack()
511 const uint8_t *limit=s+length; in spanUTF8() local
517 if(!latin1Contains[b] || ++s==limit) { in spanUTF8()
524 if(latin1Contains[b] || ++s==limit) { in spanUTF8()
530 length=(int32_t)(limit-s); in spanUTF8()
537 const uint8_t *limit0=limit; in spanUTF8()
549 b=*(limit-1); in spanUTF8()
554 if(length>=2 && (b=*(limit-2))>=0xe0) { in spanUTF8()
555 limit-=2; in spanUTF8()
557 limit0=limit; in spanUTF8()
559 } else if(b<0xc0 && b>=0x80 && length>=3 && (b=*(limit-3))>=0xf0) { in spanUTF8()
561 limit-=3; in spanUTF8()
563 limit0=limit; in spanUTF8()
568 --limit; in spanUTF8()
570 limit0=limit; in spanUTF8()
577 while(s<limit) { in spanUTF8()
585 } else if(++s==limit) { in spanUTF8()
594 } else if(++s==limit) { in spanUTF8()