![]() |
v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
|
#include <hashmap.h>
Classes | |
| struct | Impl |
Public Types | |
| using | Entry = TemplateHashMapEntry<Key, Value> |
Public Member Functions | |
| TemplateHashMapImpl (uint32_t capacity=kDefaultHashMapCapacity, MatchFun match=MatchFun(), AllocationPolicy allocator=AllocationPolicy()) | |
| TemplateHashMapImpl (const TemplateHashMapImpl &)=delete | |
| TemplateHashMapImpl & | operator= (const TemplateHashMapImpl &)=delete |
| TemplateHashMapImpl (const TemplateHashMapImpl *original, AllocationPolicy allocator=AllocationPolicy()) | |
| TemplateHashMapImpl (TemplateHashMapImpl &&other) V8_NOEXCEPT=default | |
| ~TemplateHashMapImpl () | |
| TemplateHashMapImpl & | operator= (TemplateHashMapImpl &&other) V8_NOEXCEPT=default |
| Entry * | Lookup (const Key &key, uint32_t hash) const |
| Entry * | LookupOrInsert (const Key &key, uint32_t hash) |
| template<typename Func > | |
| Entry * | LookupOrInsert (const Key &key, uint32_t hash, const Func &value_func) |
| template<typename LookupKey , typename KeyFunc , typename ValueFunc > | |
| Entry * | LookupOrInsert (const LookupKey &lookup_key, uint32_t hash, const KeyFunc &key_func, const ValueFunc &value_func) |
| Entry * | InsertNew (const Key &key, uint32_t hash) |
| Value | Remove (const Key &key, uint32_t hash) |
| void | Clear () |
| void | Invalidate () |
| uint32_t | occupancy () const |
| uint32_t | capacity () const |
| Entry * | Start () const |
| Entry * | Next (Entry *entry) const |
| AllocationPolicy | allocator () const |
Static Public Attributes | |
| static const uint32_t | kDefaultHashMapCapacity = 8 |
Protected Member Functions | |
| void | Initialize (uint32_t capacity) |
Private Member Functions | |
| Entry * | map_end () const |
| template<typename LookupKey > | |
| Entry * | Probe (const LookupKey &key, uint32_t hash) const |
| Entry * | FillEmptyEntry (Entry *entry, const Key &key, const Value &value, uint32_t hash) |
| void | Resize () |
Private Attributes | |
| v8::base::TemplateHashMapImpl::Impl | impl_ |
| using v8::base::TemplateHashMapImpl< Key, Value, MatchFun, AllocationPolicy >::Entry = TemplateHashMapEntry<Key, Value> |
|
explicit |
|
delete |
|
explicit |
|
default |
| v8::base::TemplateHashMapImpl< Key, Value, MatchFun, AllocationPolicy >::~TemplateHashMapImpl | ( | ) |
|
inline |
|
inline |
| void v8::base::TemplateHashMapImpl< Key, Value, MatchFun, AllocationPolicy >::Clear | ( | ) |
|
private |
|
protected |
| TemplateHashMapImpl< Key, Value, MatchFun, AllocationPolicy >::Entry * v8::base::TemplateHashMapImpl< Key, Value, MatchFun, AllocationPolicy >::InsertNew | ( | const Key & | key, |
| uint32_t | hash ) |
|
inline |
| TemplateHashMapImpl< Key, Value, MatchFun, AllocationPolicy >::Entry * v8::base::TemplateHashMapImpl< Key, Value, MatchFun, AllocationPolicy >::Lookup | ( | const Key & | key, |
| uint32_t | hash ) const |
| TemplateHashMapImpl< Key, Value, MatchFun, AllocationPolicy >::Entry * v8::base::TemplateHashMapImpl< Key, Value, MatchFun, AllocationPolicy >::LookupOrInsert | ( | const Key & | key, |
| uint32_t | hash ) |
| TemplateHashMapImpl< Key, Value, MatchFun, AllocationPolicy >::Entry * v8::base::TemplateHashMapImpl< Key, Value, MatchFun, AllocationPolicy >::LookupOrInsert | ( | const Key & | key, |
| uint32_t | hash, | ||
| const Func & | value_func ) |
| TemplateHashMapImpl< Key, Value, MatchFun, AllocationPolicy >::Entry * v8::base::TemplateHashMapImpl< Key, Value, MatchFun, AllocationPolicy >::LookupOrInsert | ( | const LookupKey & | lookup_key, |
| uint32_t | hash, | ||
| const KeyFunc & | key_func, | ||
| const ValueFunc & | value_func ) |
|
inlineprivate |
| TemplateHashMapImpl< Key, Value, MatchFun, AllocationPolicy >::Entry * v8::base::TemplateHashMapImpl< Key, Value, MatchFun, AllocationPolicy >::Next | ( | Entry * | entry | ) | const |
|
inline |
|
delete |
|
default |
|
private |
| Value v8::base::TemplateHashMapImpl< Key, Value, MatchFun, AllocationPolicy >::Remove | ( | const Key & | key, |
| uint32_t | hash ) |
|
private |
| TemplateHashMapImpl< Key, Value, MatchFun, AllocationPolicy >::Entry * v8::base::TemplateHashMapImpl< Key, Value, MatchFun, AllocationPolicy >::Start | ( | ) | const |
|
private |
|
static |