MCPcopy Create free account
hub / github.com/audacity/audacity / MergeItemsAscendingNamesPass

Method MergeItemsAscendingNamesPass

libraries/lib-registries/Registry.cpp:500–523  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

498};
499
500void CollectedItems::MergeItemsAscendingNamesPass(ItemOrdering &itemOrdering,
501 NewItems &newItems, const int iPass, size_t endItemsCount, bool force)
502{
503 // Inner loop over ranges of like-named items.
504 auto rright = newItems.rbegin();
505 auto rend = newItems.rend();
506 while ( rright != rend ) {
507 // Find the range
508 using namespace std::placeholders;
509 auto rleft = std::find_if(
510 rright + 1, rend, std::bind( MajorComp, _1, *rright ) );
511
512 bool success = MergeLikeNamedItems(itemOrdering,
513 rleft.base(), rright.base(), iPass, endItemsCount, force);
514
515 if ( success ) {
516 auto diff = rend - rleft;
517 newItems.erase( rleft.base(), rright.base() );
518 rend = newItems.rend();
519 rleft = rend - diff;
520 }
521 rright = rleft;
522 }
523}
524
525void CollectedItems::MergeItemsDescendingNamesPass(ItemOrdering &itemOrdering,
526 NewItems &newItems, const int iPass, size_t endItemsCount, bool force)

Callers

nothing calls this directly

Calls 3

rbeginMethod · 0.45
rendMethod · 0.45
baseMethod · 0.45

Tested by

no test coverage detected