tvm
|
Shared content of all specializations of hash map. More...
#include <map.h>
Classes | |
class | iterator |
Public Types | |
using | key_type = ObjectRef |
Type of the keys in the hash map. More... | |
using | mapped_type = ObjectRef |
Type of the values in the hash map. More... | |
using | KVType = std::pair< ObjectRef, ObjectRef > |
Type of value stored in the hash map. More... | |
Public Types inherited from tvm::runtime::Object | |
typedef void(* | FDeleter) (Object *self) |
Object deleter. More... | |
using | RefCounterType = std::atomic< int32_t > |
Public Member Functions | |
TVM_DECLARE_FINAL_OBJECT_INFO (MapNode, Object) | |
size_t | size () const |
Number of elements in the SmallMapNode. More... | |
size_t | count (const key_type &key) const |
Count the number of times a key exists in the hash map. More... | |
const mapped_type & | at (const key_type &key) const |
Index value associated with a key, throw exception if the key does not exist. More... | |
mapped_type & | at (const key_type &key) |
Index value associated with a key, throw exception if the key does not exist. More... | |
iterator | begin () const |
iterator | end () const |
iterator | find (const key_type &key) const |
Index value associated with a key. More... | |
void | erase (const iterator &position) |
Erase the entry associated with the iterator. More... | |
void | erase (const key_type &key) |
Erase the entry associated with the key, do nothing if not exists. More... | |
Public Member Functions inherited from tvm::runtime::Object | |
uint32_t | type_index () const |
std::string | GetTypeKey () const |
size_t | GetTypeKeyHash () const |
template<typename TargetType > | |
bool | IsInstance () const |
bool | unique () const |
Object () | |
Object (const Object &other) | |
Object (Object &&other) | |
Object & | operator= (const Object &other) |
Object & | operator= (Object &&other) |
Static Public Member Functions | |
static ObjectPtr< MapNode > | Empty () |
Create an empty container. More... | |
Static Public Member Functions inherited from tvm::runtime::Object | |
static std::string | TypeIndex2Key (uint32_t tindex) |
Get the type key of the corresponding index from runtime. More... | |
static size_t | TypeIndex2KeyHash (uint32_t tindex) |
Get the type key hash of the corresponding index from runtime. More... | |
static uint32_t | TypeKey2Index (const std::string &key) |
Get the type index of the corresponding key from runtime. More... | |
static uint32_t | _GetOrAllocRuntimeTypeIndex () |
static uint32_t | RuntimeTypeIndex () |
Static Public Attributes | |
static constexpr const uint32_t | _type_index = runtime::TypeIndex::kRuntimeMap |
static constexpr const char * | _type_key = "Map" |
Static Public Attributes inherited from tvm::runtime::Object | |
static constexpr const char * | _type_key = "runtime.Object" |
static constexpr bool | _type_final = false |
static constexpr uint32_t | _type_child_slots = 0 |
static constexpr bool | _type_child_slots_can_overflow = true |
static constexpr bool | _type_has_method_visit_attrs = true |
static constexpr bool | _type_has_method_sequal_reduce = false |
static constexpr bool | _type_has_method_shash_reduce = false |
static constexpr uint32_t | _type_index = TypeIndex::kDynamic |
Static Protected Member Functions | |
template<typename IterType > | |
static ObjectPtr< Object > | CreateFromRange (IterType first, IterType last) |
Create the map using contents from the given iterators. More... | |
static void | InsertMaybeReHash (const KVType &kv, ObjectPtr< Object > *map) |
InsertMaybeReHash an entry into the given hash map. More... | |
static ObjectPtr< MapNode > | CopyFrom (MapNode *from) |
Create an empty container with elements copying from another SmallMapNode. More... | |
Static Protected Member Functions inherited from tvm::runtime::Object | |
static uint32_t | GetOrAllocRuntimeTypeIndex (const std::string &key, uint32_t static_tindex, uint32_t parent_tindex, uint32_t type_child_slots, bool type_child_slots_can_overflow) |
Get the type index using type key. More... | |
Protected Attributes | |
uint64_t | slots_ |
number of slots minus 1 More... | |
uint64_t | size_ |
number of entries in the container More... | |
Protected Attributes inherited from tvm::runtime::Object | |
uint32_t | type_index_ {0} |
Type index(tag) that indicates the type of the object. More... | |
RefCounterType | ref_counter_ {0} |
The internal reference counter. More... | |
FDeleter | deleter_ = nullptr |
deleter of this object to enable customized allocation. If the deleter is nullptr, no deletion will be performed. The creator of the object must always set the deleter field properly. More... | |
Friends | |
template<typename , typename , typename , typename > | |
class | Map |
Additional Inherited Members | |
Protected Member Functions inherited from tvm::runtime::Object | |
void | IncRef () |
developer function, increases reference counter. More... | |
void | DecRef () |
developer function, decrease reference counter. More... | |
Shared content of all specializations of hash map.
Type of the keys in the hash map.
using tvm::runtime::MapNode::KVType = std::pair<ObjectRef, ObjectRef> |
Type of value stored in the hash map.
Type of the values in the hash map.
|
inline |
Index value associated with a key, throw exception if the key does not exist.
key | The indexing key |
|
inline |
Index value associated with a key, throw exception if the key does not exist.
key | The indexing key |
|
inline |
Create an empty container with elements copying from another SmallMapNode.
from | The source container |
|
inline |
Count the number of times a key exists in the hash map.
key | The indexing key |
|
inlinestaticprotected |
Create the map using contents from the given iterators.
first | Begin of iterator |
last | End of iterator |
IterType | The type of iterator |
Create an empty container.
|
inline |
|
inline |
Erase the entry associated with the iterator.
position | The iterator |
|
inline |
Erase the entry associated with the key, do nothing if not exists.
key | The indexing key |
|
inline |
Index value associated with a key.
key | The indexing key |
|
inlinestaticprotected |
InsertMaybeReHash an entry into the given hash map.
kv | The entry to be inserted |
map | The pointer to the map, can be changed if re-hashing happens |
|
inline |
Number of elements in the SmallMapNode.
|
friend |
|
staticconstexpr |
|
staticconstexpr |
|
protected |
number of entries in the container
|
protected |
number of slots minus 1