MCPcopy Create free account
hub / github.com/catboost/catboost / erase

Method erase

library/cpp/containers/paged_vector/paged_vector.h:309–323  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

307 }
308
309 iterator erase(iterator it) {
310 size_t pnum = PageNumber(it.Offset);
311 size_t pidx = InPageIndex(it.Offset);
312
313 if (CurrentPage().empty())
314 TPages::pop_back();
315
316 for (size_t p = NPages() - 1; p > pnum; --p) {
317 PageAt(p - 1).push_back(PageAt(p).front());
318 PageAt(p).erase(PageAt(p).begin());
319 }
320
321 PageAt(pnum).erase(PageAt(pnum).begin() + pidx);
322 return it;
323 }
324
325 iterator erase(iterator b, iterator e) {
326 // todo : suboptimal!

Callers 1

Test6Method · 0.45

Calls 6

pop_backFunction · 0.50
eraseFunction · 0.50
emptyMethod · 0.45
push_backMethod · 0.45
frontMethod · 0.45
beginMethod · 0.45

Tested by 1

Test6Method · 0.36