tvm
|
A specialization of small-sized hash map. More...
#include <map.h>
Public Types | |
using | KVType = std::pair< ObjectRef, ObjectRef > |
Type of value stored in the hash map. More... | |
Public Types inherited from tvm::runtime::MapNode | |
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 | |
~SmallMapNode ()=default | |
Defaults to the destructor of InplaceArrayBase. More... | |
size_t | count (const key_type &key) const |
Count the number of times a key exists in the SmallMapNode. 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... | |
Public Member Functions inherited from tvm::runtime::MapNode | |
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) |
Public Member Functions inherited from tvm::runtime::InplaceArrayBase< SmallMapNode, MapNode::KVType > | |
const MapNode::KVType & | operator[] (size_t idx) const |
Access element at index. More... | |
MapNode::KVType & | operator[] (size_t idx) |
Access element at index. More... | |
~InplaceArrayBase () | |
Destroy the Inplace Array Base object. More... | |
Friends | |
class | MapNode |
class | DenseMapNode |
class | runtime::InplaceArrayBase< SmallMapNode, MapNode::KVType > |
Additional Inherited Members | |
Static Public Member Functions inherited from tvm::runtime::MapNode | |
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 inherited from tvm::runtime::MapNode | |
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 |
Protected Member Functions inherited from tvm::runtime::Object | |
void | IncRef () |
developer function, increases reference counter. More... | |
void | DecRef () |
developer function, decrease reference counter. More... | |
Protected Member Functions inherited from tvm::runtime::InplaceArrayBase< SmallMapNode, MapNode::KVType > | |
void | EmplaceInit (size_t idx, Args &&... args) |
Construct a value in place with the arguments. More... | |
SmallMapNode * | Self () const |
Return the self object for the array. More... | |
void * | AddressOf (size_t idx) const |
Return the raw pointer to the element at idx. More... | |
Static Protected Member Functions inherited from tvm::runtime::MapNode | |
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 inherited from tvm::runtime::MapNode | |
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... | |
A specialization of small-sized hash map.
using tvm::runtime::MapNode::KVType = std::pair<ObjectRef, ObjectRef> |
Type of value stored in the hash map.
|
default |
Defaults to the destructor of InplaceArrayBase.
|
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 |
|
inline |
Count the number of times a key exists in the SmallMapNode.
key | The indexing key |
|
inline |
|
inline |
Erase the entry associated with the iterator.
position | The iterator |
Index value associated with a key.
key | The indexing key |
|
friend |
|
friend |
|
friend |