mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 14:48:21 +00:00
Merge remote-tracking branch 'origin/topic/timw/dict-cleanup'
* origin/topic/timw/dict-cleanup: A few minor cleanups in Dict
This commit is contained in:
commit
2d91f9d89f
3 changed files with 13 additions and 9 deletions
4
CHANGES
4
CHANGES
|
@ -1,4 +1,8 @@
|
||||||
|
|
||||||
|
3.2.0-dev.396 | 2020-04-14 15:45:54 -0700
|
||||||
|
|
||||||
|
* A few minor cleanups in Dict (Tim Wojtulewicz, Corelight)
|
||||||
|
|
||||||
3.2.0-dev.394 | 2020-04-14 15:29:00 -0700
|
3.2.0-dev.394 | 2020-04-14 15:29:00 -0700
|
||||||
|
|
||||||
* Fix a confusing variable name shadowing (Jon Siwek, Corelight)
|
* Fix a confusing variable name shadowing (Jon Siwek, Corelight)
|
||||||
|
|
2
VERSION
2
VERSION
|
@ -1 +1 @@
|
||||||
3.2.0-dev.394
|
3.2.0-dev.396
|
||||||
|
|
16
src/Dict.cc
16
src/Dict.cc
|
@ -270,10 +270,8 @@ void* Dictionary::Lookup(const void* key, int key_size, hash_t hash) const
|
||||||
|
|
||||||
if ( chain )
|
if ( chain )
|
||||||
{
|
{
|
||||||
for ( int i = 0; i < chain->length(); ++i )
|
for ( const auto& entry : *chain )
|
||||||
{
|
{
|
||||||
DictEntry* entry = (*chain)[i];
|
|
||||||
|
|
||||||
if ( entry->hash == hash && entry->len == key_size &&
|
if ( entry->hash == hash && entry->len == key_size &&
|
||||||
! memcmp(key, entry->key, key_size) )
|
! memcmp(key, entry->key, key_size) )
|
||||||
return entry->value;
|
return entry->value;
|
||||||
|
@ -336,7 +334,9 @@ void* Dictionary::Remove(const void* key, int key_size, hash_t hash,
|
||||||
if ( ! chain )
|
if ( ! chain )
|
||||||
return nullptr;
|
return nullptr;
|
||||||
|
|
||||||
for ( int i = 0; i < chain->length(); ++i )
|
size_t chain_length = chain->length();
|
||||||
|
|
||||||
|
for ( auto i = 0u; i < chain_length; ++i )
|
||||||
{
|
{
|
||||||
DictEntry* entry = (*chain)[i];
|
DictEntry* entry = (*chain)[i];
|
||||||
|
|
||||||
|
@ -635,7 +635,7 @@ bool Dictionary::IsPrime(int n) const
|
||||||
void Dictionary::StartChangeSize(int new_size)
|
void Dictionary::StartChangeSize(int new_size)
|
||||||
{
|
{
|
||||||
// Only start resizing if there isn't any iteration in progress.
|
// Only start resizing if there isn't any iteration in progress.
|
||||||
if ( cookies.length() > 0 )
|
if ( ! cookies.empty() )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if ( tbl2 )
|
if ( tbl2 )
|
||||||
|
@ -652,7 +652,7 @@ void Dictionary::StartChangeSize(int new_size)
|
||||||
void Dictionary::MoveChains()
|
void Dictionary::MoveChains()
|
||||||
{
|
{
|
||||||
// Do not change current distribution if there an ongoing iteration.
|
// Do not change current distribution if there an ongoing iteration.
|
||||||
if ( cookies.length() > 0 )
|
if ( ! cookies.empty() )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// Attempt to move this many entries (must do at least 2)
|
// Attempt to move this many entries (must do at least 2)
|
||||||
|
@ -667,9 +667,9 @@ void Dictionary::MoveChains()
|
||||||
|
|
||||||
tbl[tbl_next_ind - 1] = nullptr;
|
tbl[tbl_next_ind - 1] = nullptr;
|
||||||
|
|
||||||
for ( int j = 0; j < chain->length(); ++j )
|
for ( const auto& elem : *chain )
|
||||||
{
|
{
|
||||||
Insert((*chain)[j], false);
|
Insert(elem, false);
|
||||||
--num_entries;
|
--num_entries;
|
||||||
--num;
|
--num;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue