Scroom 0.14-49-gb7ae7a6d
Loading...
Searching...
No Matches
Scroom::Bookkeeping::Detail::MapTokenImpl< K, V > Class Template Reference

#include <bookkeepingimpl.hh>

Inheritance diagram for Scroom::Bookkeeping::Detail::MapTokenImpl< K, V >:
Inheritance graph
Collaboration diagram for Scroom::Bookkeeping::Detail::MapTokenImpl< K, V >:
Collaboration graph

Public Types

using Ptr = std::shared_ptr< MapTokenImpl< K, V > >
 
- Public Types inherited from Scroom::Bookkeeping::Detail::TokenImpl
using Ptr = std::shared_ptr< TokenImpl >
 

Public Member Functions

 ~MapTokenImpl ()
 
- Public Member Functions inherited from Scroom::Bookkeeping::Detail::TokenImpl
void add (const Stuff &s)
 
void add (const StuffList &l_)
 
void merge (StuffList &l_)
 
void merge (Ptr &rhs)
 

Static Public Member Functions

static Scroom::Bookkeeping::Token create (const std::shared_ptr< Scroom::Bookkeeping::MapBase< K, V > > &map, const K &k)
 
- Static Public Member Functions inherited from Scroom::Bookkeeping::Detail::TokenImpl
static Scroom::Bookkeeping::Token create ()
 

Protected Member Functions

 MapTokenImpl (const std::shared_ptr< Scroom::Bookkeeping::MapBase< K, V > > &map_, K k_)
 
 MapTokenImpl (const MapTokenImpl &)=delete
 
 MapTokenImpl (MapTokenImpl &&)=delete
 
MapTokenImpl operator= (const MapTokenImpl &)=delete
 
MapTokenImpl operator= (MapTokenImpl &&)=delete
 
- Protected Member Functions inherited from Scroom::Bookkeeping::Detail::TokenImpl
 TokenImpl ()=default
 

Private Attributes

std::weak_ptr< Scroom::Bookkeeping::MapBase< K, V > > map
 
WeakToken t
 
k
 

Member Typedef Documentation

◆ Ptr

template<typename K , typename V >
using Scroom::Bookkeeping::Detail::MapTokenImpl< K, V >::Ptr = std::shared_ptr<MapTokenImpl<K, V> >

Constructor & Destructor Documentation

◆ MapTokenImpl() [1/3]

template<typename K , typename V >
Scroom::Bookkeeping::Detail::MapTokenImpl< K, V >::MapTokenImpl ( const std::shared_ptr< Scroom::Bookkeeping::MapBase< K, V > > &  map_,
k_ 
)
inlineprotected
87 : map(map_)
88 , k(std::move(k_))
89 {
90 }
K k
Definition bookkeepingimpl.hh:83
std::weak_ptr< Scroom::Bookkeeping::MapBase< K, V > > map
Definition bookkeepingimpl.hh:81

◆ MapTokenImpl() [2/3]

template<typename K , typename V >
Scroom::Bookkeeping::Detail::MapTokenImpl< K, V >::MapTokenImpl ( const MapTokenImpl< K, V > &  )
protecteddelete

◆ MapTokenImpl() [3/3]

template<typename K , typename V >
Scroom::Bookkeeping::Detail::MapTokenImpl< K, V >::MapTokenImpl ( MapTokenImpl< K, V > &&  )
protecteddelete

◆ ~MapTokenImpl()

99 {
100 std::shared_ptr<Scroom::Bookkeeping::MapBase<K, V>> const m = map.lock();
101 if(m)
102 {
103 m->remove(k, t);
104 }
105 }
WeakToken t
Definition bookkeepingimpl.hh:82

Member Function Documentation

◆ create()

template<typename K , typename V >
static Scroom::Bookkeeping::Token Scroom::Bookkeeping::Detail::MapTokenImpl< K, V >::create ( const std::shared_ptr< Scroom::Bookkeeping::MapBase< K, V > > &  map,
const K &  k 
)
inlinestatic
109 {
110 Ptr const t = Ptr(new MapTokenImpl<K, V>(map, k));
111 t->t = t;
113 }
std::shared_ptr< MapTokenImpl< K, V > > Ptr
Definition bookkeepingimpl.hh:78
std::shared_ptr< TokenImpl > Ptr
Definition bookkeepingimpl.hh:53
Definition bookkeeping.hh:50

◆ operator=() [1/2]

◆ operator=() [2/2]

Member Data Documentation

◆ k

◆ map

◆ t


The documentation for this class was generated from the following file: