KeyedStore
KeyedStore
#include <icy/collection.h>template<classTKey, classTValue>
class KeyedStoreDefined in src/base/include/icy/collection.h:37
Subclassed by:
TimedManager< TKey, TValue >
A keyed store of unique_ptr values with optional lifecycle hooks. Not thread-safe; designed for single-threaded event loop contexts.
Subclasses can override onAdd/onRemove for lifecycle reactions, and add Signal members for external observers.
List of all members
| Name | Kind | Owner |
|---|---|---|
KeyedStore | function | Declared here |
~KeyedStore | function | Declared here |
KeyedStore | function | Declared here |
operator= | function | Declared here |
KeyedStore | function | Declared here |
operator= | function | Declared here |
get | function | Declared here |
add | function | Declared here |
tryAdd | function | Declared here |
put | function | Declared here |
erase | function | Declared here |
contains | function | Declared here |
empty | function | Declared here |
size | function | Declared here |
clear | function | Declared here |
map | function | Declared here |
map | function | Declared here |
begin | function | Declared here |
end | function | Declared here |
begin | function | Declared here |
end | function | Declared here |
_map | variable | Declared here |
onAdd | function | Declared here |
onRemove | function | Declared here |
Map | typedef | Declared here |
Public Methods
| Return | Name | Description |
|---|---|---|
KeyedStore | Defaulted constructor. | |
KeyedStore | Deleted constructor. | |
KeyedStore | Defaulted constructor. | |
TValue * | get const inline | Returns the item for key, or nullptr if not found. |
TValue & | add inline | Inserts a uniquely owned item. Returns a reference to the stored item. |
bool | tryAdd inline | Inserts if absent; returns false on duplicate (never throws). |
TValue & | put inline | Inserts or replaces the item under key. |
bool | erase inline | Removes and destroys the item under key. |
bool | contains const inline | |
bool | empty const inline | |
size_t | size const inline | |
void | clear inline | |
Map & | map inline | Direct map access for iteration. |
const Map & | map const inline | |
auto | begin inline | |
auto | end inline | |
auto | begin const inline | |
auto | end const inline |
KeyedStore
KeyedStore() = defaultDefined in src/base/include/icy/collection.h:42
Defaulted constructor.
KeyedStore
KeyedStore(constKeyedStore &) = deleteDefined in src/base/include/icy/collection.h:46
Deleted constructor.
KeyedStore
KeyedStore(KeyedStore &&) = defaultDefined in src/base/include/icy/collection.h:48
Defaulted constructor.
get
const inline
inline TValue * get(constTKey & key) constDefined in src/base/include/icy/collection.h:52
Returns the item for key, or nullptr if not found.
add
inline
inline TValue & add(constTKey & key, std::unique_ptr< TValue > item)Defined in src/base/include/icy/collection.h:60
Inserts a uniquely owned item. Returns a reference to the stored item.
Exceptions
std::runtime_errorif the key already exists.
tryAdd
inline
inline bool tryAdd(constTKey & key, std::unique_ptr< TValue > item)Defined in src/base/include/icy/collection.h:71
Inserts if absent; returns false on duplicate (never throws).
put
inline
inline TValue & put(constTKey & key, std::unique_ptr< TValue > item)Defined in src/base/include/icy/collection.h:82
Inserts or replaces the item under key.
erase
inline
inline bool erase(constTKey & key)Defined in src/base/include/icy/collection.h:92
Removes and destroys the item under key.
Returns
true if the item existed and was removed.
contains
const inline
inline bool contains(constTKey & key) constDefined in src/base/include/icy/collection.h:104
empty
const inline
inline bool empty() constDefined in src/base/include/icy/collection.h:105
size
const inline
inline size_t size() constDefined in src/base/include/icy/collection.h:106
clear
inline
inline void clear()Defined in src/base/include/icy/collection.h:107
map
inline
inline Map & map()Defined in src/base/include/icy/collection.h:110
Direct map access for iteration.
map
const inline
inline const Map & map() constDefined in src/base/include/icy/collection.h:111
begin
inline
inline auto begin()Defined in src/base/include/icy/collection.h:114
end
inline
inline auto end()Defined in src/base/include/icy/collection.h:115
begin
const inline
inline auto begin() constDefined in src/base/include/icy/collection.h:116
end
const inline
inline auto end() constDefined in src/base/include/icy/collection.h:117
Protected Attributes
| Return | Name | Description |
|---|---|---|
Map | _map |
_map
Map _mapDefined in src/base/include/icy/collection.h:124
Protected Methods
| Return | Name | Description |
|---|---|---|
void | onAdd virtual inline | Override for lifecycle reactions. |
void | onRemove virtual inline |
onAdd
virtual inline
virtual inline void onAdd(constTKey &, TValue *)Defined in src/base/include/icy/collection.h:121
Override for lifecycle reactions.
Reimplemented by
onRemove
virtual inline
virtual inline void onRemove(constTKey &, TValue *)Defined in src/base/include/icy/collection.h:122
Reimplemented by
Public Types
| Name | Description |
|---|---|
Map |
Map
using Map = std::map< TKey, std::unique_ptr< TValue > >