Lines Matching defs:MergeTo
164 iterator MergeTo = std::next(I);
165 for (; MergeTo != segments().end() && NewEnd >= MergeTo->end; ++MergeTo)
166 assert(MergeTo->valno == ValNo && "Cannot merge with differing values!");
169 S->end = std::max(NewEnd, std::prev(MergeTo)->end);
173 if (MergeTo != segments().end() && MergeTo->start <= I->end &&
174 MergeTo->valno == ValNo) {
175 S->end = MergeTo->end;
176 ++MergeTo;
180 segments().erase(std::next(I), MergeTo);
192 iterator MergeTo = I;
194 if (MergeTo == segments().begin()) {
196 segments().erase(MergeTo, I);
199 assert(MergeTo->valno == ValNo && "Cannot merge with differing values!");
200 --MergeTo;
201 } while (NewStart <= MergeTo->start);
205 if (MergeTo->end >= NewStart && MergeTo->valno == ValNo) {
206 segmentAt(MergeTo)->end = S->end;
209 ++MergeTo;
210 Segment *MergeToSeg = segmentAt(MergeTo);
215 segments().erase(std::next(MergeTo), std::next(I));
216 return MergeTo;