Struct DenseMapObj::ListNode#
Defined in File map.h
Nested Relationships#
This struct is a nested type of Class DenseMapObj.
Struct Documentation#
-
struct ListNode#
The implicit in-place linked list used to index a chain.
Public Functions
-
inline ListNode()#
Construct None.
-
inline ListNode(uint64_t index, const DenseMapObj *self)#
Construct from position.
-
inline uint8_t &Meta() const#
Metadata on the entry.
-
inline KVType &Data() const#
Data on the entry.
-
inline key_type &Key() const#
Key on the entry.
-
inline mapped_type &Val() const#
Value on the entry.
-
inline bool IsHead() const#
If the entry is head of linked list.
-
inline bool IsNone() const#
If the entry is none.
-
inline bool IsEmpty() const#
If the entry is empty slot.
-
inline bool IsProtected() const#
If the entry is protected slot.
-
inline void SetEmpty() const#
Set the entry to be empty.
-
inline void DestructData() const#
Destruct the item in the entry.
-
inline void SetProtected() const#
Set the entry to be protected.
-
inline void SetJump(uint8_t jump) const#
Set the entry’s jump to its next entry.
-
inline bool HasNext() const#
If the entry has next entry on the linked list.
-
inline bool MoveToNext(const DenseMapObj *self, uint8_t meta)#
Move the entry to the next entry on the linked list.
-
inline bool MoveToNext(const DenseMapObj *self)#
Move the entry to the next entry on the linked list.
-
inline ListNode FindPrev(const DenseMapObj *self) const#
Get the previous entry on the linked list.
-
inline bool GetNextEmpty(const DenseMapObj *self, uint8_t *jump, ListNode *result) const#
Get the next empty jump.
-
inline ListNode()#