5#include <initializer_list>
7#include "core/builtin/container/native/smultimap.inl"
11 template <
typename K,
typename V,
typename TACTIC = strTactic>
class tnmap:
public tnbicontainer<K, V> {
18 typedef typename cmap::iterator citer;
19 typedef std::pair<K, V> cpair;
20 typedef typename super::iter
iter;
21 typedef typename super::iteration
iteration;
26 tnmap(
const std::initializer_list<std::pair<K, V*>>&
elems);
29 ncnt len()
const override;
33 nbool in(
const K& key)
const override;
37 V* get(
const K& key)
override;
41 nbool add(
const K& key,
const V& new1)
override;
45 nbool
del(
const K& key)
override;
60 iteration* _onMakeIteration(
const K* key, nbool isReversed, ncnt
step, nbool isBoundary)
const override;
62 void _getAll(
const K& key,
narr&
tray)
const override;
Interface for objects that can be cloned.
Definition clonable.hpp:13
Deferred execution utility similar to defer keyword in other languages.
Definition end.hpp:36
Definition tnbicontainer.hpp:8
nbool del(const K &key) override
void onCloneDeep(const clonable &from) override
Weak reference smart pointer with type-safe access.
Definition tweak.hpp:16
Bidirectional iterator for key-value containers.
Definition biter.hpp:10
Definition biteration.hpp:5
Definition nmapIteration.hpp:6