Changeset ed9df7d in mainline


Ignore:
Timestamp:
2018-07-05T21:41:21Z (6 years ago)
Author:
Dzejrou <dzejrou@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
e912cdf
Parents:
3be3752
git-author:
Dzejrou <dzejrou@…> (2018-04-25 00:37:20)
git-committer:
Dzejrou <dzejrou@…> (2018-07-05 21:41:21)
Message:

cpp: functions that are implemented in map now properly increase size of the underlying table and rehash if needed

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/cpp/include/impl/unordered_map.hpp

    r3be3752 red9df7d  
    272272                auto node = new node_type{move(val)};
    273273                bucket->append(node);
     274                table_.increment_size();
    274275
    275276                return make_pair(iterator{
     
    316317                auto node = new node_type{val};
    317318                bucket->append(node);
     319                table_.increment_size();
    318320
    319321                return make_pair(iterator{
     
    354356                auto node = new node_type{forward<value_type>(val)};
    355357                bucket->append(node);
     358                table_.increment_size();
     359                // TODO: problem: rehashing here would invalidate the intel we have...
    356360
    357361                return make_pair(iterator{
     
    543547                bucket->append(node);
    544548
     549                table_.increment_size();
     550                table_.rehash_if_needed();
    545551                return node->value.second;
    546552            }
     
    569575                bucket->append(node);
    570576
     577                table_.increment_size();
     578                table_.rehash_if_needed();
    571579                return node->value.second;
    572580            }
Note: See TracChangeset for help on using the changeset viewer.