Lines Matching full:overlap
195 * does not overlap other index-2 blocks with the gap.
975 * - overlaps adjacent blocks as much as possible (if overlap==TRUE)
977 * - moves and overlaps blocks that overlap with multiple values in the overlap region
980 * - try to move and overlap blocks that are not already adjacent
985 int32_t blockLength, overlap;
1038 /* look for maximum overlap (modulo granularity) with the previous, adjacent block */
1039 for(overlap=blockLength-UTRIE2_DATA_GRANULARITY;
1040 overlap>0 && !equal_uint32(trie->data+(newStart-overlap), trie->data+start, overlap);
1041 overlap-=UTRIE2_DATA_GRANULARITY) {}
1043 if(overlap>0 || newStart<start) {
1044 /* some overlap, or just move the whole block */
1045 movedStart=newStart-overlap;
1052 start+=overlap;
1053 for(i=blockLength-overlap; i>0; --i) {
1056 } else /* no overlap && newStart==start */ {
1091 int32_t i, start, newStart, movedStart, overlap;
1124 /* look for maximum overlap with the previous, adjacent block */
1125 for(overlap=UTRIE2_INDEX_2_BLOCK_LENGTH-1;
1126 overlap>0 && !equal_int32(trie->index2+(newStart-overlap), trie->index2+start, overlap);
1127 --overlap) {}
1129 if(overlap>0 || newStart<start) {
1130 /* some overlap, or just move the whole block */
1131 trie->map[start>>UTRIE2_SHIFT_1_2]=newStart-overlap;
1134 start+=overlap;
1135 for(i=UTRIE2_INDEX_2_BLOCK_LENGTH-overlap; i>0; --i) {
1138 } else /* no overlap && newStart==start */ {