Fish - FiberLib for VISH 0.3
Fish - The Fiber Bundle API for the Vish Visualization Shell
Fiber::FiberTypeMap< TypeProperty > Struct Template Reference

https://stackoverflow.com/questions/17614172/c-template-singletons-in-a-dll More...

#include <FiberTypeMap.hpp>

Inheritance diagram for Fiber::FiberTypeMap< TypeProperty >:
std::map< FiberTypeIndex, MemCore::RefPtr< TypeProperty > >

Public Types

using base_t = std::map<FiberTypeIndex, MemCore::RefPtr<TypeProperty>>

Public Member Functions

bool insert (const MemCore::RefPtr< FiberTypeBase > &Index, const MemCore::RefPtr< TypeProperty > &Property)
MemCore::RefPtr< TypeProperty > find (const FiberTypeIndex &FTI) const
MemCore::RefPtr< TypeProperty > find (const MemCore::RefPtr< FiberTypeBase > &FTB) const
Public Member Functions inherited from std::map< FiberTypeIndex, MemCore::RefPtr< TypeProperty > >
 map (_InputIterator __first, _InputIterator __last)
 map (_InputIterator __first, _InputIterator __last, const _Compare &__comp, const allocator_type &__a=allocator_type())
 map (_InputIterator __first, _InputIterator __last, const allocator_type &__a)
 map (const _Compare &__comp, const allocator_type &__a=allocator_type())
 map (const allocator_type &__a)
 map (const map &)=default
 map (const map &__m, const __type_identity_t< allocator_type > &__a)
 map (initializer_list< value_type > __l, const _Compare &__comp=_Compare(), const allocator_type &__a=allocator_type())
 map (initializer_list< value_type > __l, const allocator_type &__a)
 map (map &&)=default
 map (map &&__m, const __type_identity_t< allocator_type > &__a) noexcept(is_nothrow_copy_constructible< _Compare >::value &&_Alloc_traits::_S_always_equal())
mapped_type & at (const key_type &__k)
const_iterator begin () const noexcept
iterator begin () noexcept
const_iterator cbegin () const noexcept
const_iterator cend () const noexcept
void clear () noexcept
const_reverse_iterator crbegin () const noexcept
const_reverse_iterator crend () const noexcept
std::pair< iterator, bool > emplace (_Args &&... __args)
iterator emplace_hint (const_iterator __pos, _Args &&... __args)
bool empty () const noexcept
const_iterator end () const noexcept
iterator end () noexcept
size_type erase (const key_type &__x)
iterator erase (const_iterator __first, const_iterator __last)
node_type extract (const key_type &__x)
node_type extract (const_iterator __pos)
allocator_type get_allocator () const noexcept
void insert (_InputIterator __first, _InputIterator __last)
iterator insert (const_iterator __hint, node_type &&__nh)
insert_return_type insert (node_type &&__nh)
void insert (std::initializer_list< value_type > __list)
pair< iterator, bool > insert_or_assign (const key_type &__k, _Obj &&__obj)
iterator insert_or_assign (const_iterator __hint, const key_type &__k, _Obj &&__obj)
key_compare key_comp () const
size_type max_size () const noexcept
mapoperator= (const map &)=default
mapoperator= (initializer_list< value_type > __l)
mapoperator= (map &&)=default
mapped_type & operator[] (const key_type &__k)
const_reverse_iterator rbegin () const noexcept
reverse_iterator rbegin () noexcept
const_reverse_iterator rend () const noexcept
reverse_iterator rend () noexcept
size_type size () const noexcept
void swap (map &__x) noexcept(/*conditional */)
pair< iterator, bool > try_emplace (const key_type &__k, _Args &&... __args)
iterator try_emplace (const_iterator __hint, const key_type &__k, _Args &&... __args)
value_compare value_comp () const
std::pair< iterator, bool > insert (const value_type &__x)
std::pair< iterator, bool > insert (value_type &&__x)
__enable_if_t< is_constructible< value_type, _Pair >::value, pair< iterator, bool > > insert (_Pair &&__x)
iterator insert (const_iterator __position, const value_type &__x)
iterator insert (const_iterator __position, value_type &&__x)
__enable_if_t< is_constructible< value_type, _Pair >::value, iterator > insert (const_iterator __position, _Pair &&__x)
iterator erase (const_iterator __position)
_GLIBCXX_ABI_TAG_CXX11 iterator erase (iterator __position)
iterator find (const key_type &__x)
auto find (const _Kt &__x) -> decltype(_M_t._M_find_tr(__x))
const_iterator find (const key_type &__x) const
auto find (const _Kt &__x) const -> decltype(_M_t._M_find_tr(__x))
size_type count (const key_type &__x) const
auto count (const _Kt &__x) const -> decltype(_M_t._M_count_tr(__x))
bool contains (const key_type &__x) const
auto contains (const _Kt &__x) const -> decltype(_M_t._M_find_tr(__x), void(), true)
iterator lower_bound (const key_type &__x)
auto lower_bound (const _Kt &__x) -> decltype(iterator(_M_t._M_lower_bound_tr(__x)))
const_iterator lower_bound (const key_type &__x) const
auto lower_bound (const _Kt &__x) const -> decltype(const_iterator(_M_t._M_lower_bound_tr(__x)))
iterator upper_bound (const key_type &__x)
auto upper_bound (const _Kt &__x) -> decltype(iterator(_M_t._M_upper_bound_tr(__x)))
const_iterator upper_bound (const key_type &__x) const
auto upper_bound (const _Kt &__x) const -> decltype(const_iterator(_M_t._M_upper_bound_tr(__x)))
std::pair< iterator, iterator > equal_range (const key_type &__x)
auto equal_range (const _Kt &__x) -> decltype(pair< iterator, iterator >(_M_t._M_equal_range_tr(__x)))
std::pair< const_iterator, const_iterator > equal_range (const key_type &__x) const
auto equal_range (const _Kt &__x) const -> decltype(pair< const_iterator, const_iterator >(_M_t._M_equal_range_tr(__x)))
std::pair< iterator, bool > insert (const value_type &__x)
std::pair< iterator, bool > insert (value_type &&__x)
__enable_if_t< is_constructible< value_type, _Pair >::value, pair< iterator, bool > > insert (_Pair &&__x)
iterator insert (const_iterator __position, const value_type &__x)
iterator insert (const_iterator __position, value_type &&__x)
__enable_if_t< is_constructible< value_type, _Pair >::value, iterator > insert (const_iterator __position, _Pair &&__x)
iterator erase (const_iterator __position)
_GLIBCXX_ABI_TAG_CXX11 iterator erase (iterator __position)
iterator find (const key_type &__x)
auto find (const _Kt &__x) -> decltype(_M_t._M_find_tr(__x))
const_iterator find (const key_type &__x) const
auto find (const _Kt &__x) const -> decltype(_M_t._M_find_tr(__x))
size_type count (const key_type &__x) const
auto count (const _Kt &__x) const -> decltype(_M_t._M_count_tr(__x))
bool contains (const key_type &__x) const
auto contains (const _Kt &__x) const -> decltype(_M_t._M_find_tr(__x), void(), true)
iterator lower_bound (const key_type &__x)
auto lower_bound (const _Kt &__x) -> decltype(iterator(_M_t._M_lower_bound_tr(__x)))
const_iterator lower_bound (const key_type &__x) const
auto lower_bound (const _Kt &__x) const -> decltype(const_iterator(_M_t._M_lower_bound_tr(__x)))
iterator upper_bound (const key_type &__x)
auto upper_bound (const _Kt &__x) -> decltype(iterator(_M_t._M_upper_bound_tr(__x)))
const_iterator upper_bound (const key_type &__x) const
auto upper_bound (const _Kt &__x) const -> decltype(const_iterator(_M_t._M_upper_bound_tr(__x)))
std::pair< iterator, iterator > equal_range (const key_type &__x)
auto equal_range (const _Kt &__x) -> decltype(pair< iterator, iterator >(_M_t._M_equal_range_tr(__x)))
std::pair< const_iterator, const_iterator > equal_range (const key_type &__x) const
auto equal_range (const _Kt &__x) const -> decltype(pair< const_iterator, const_iterator >(_M_t._M_equal_range_tr(__x)))
 map (_InputIterator __first, _InputIterator __last)
 map (_InputIterator __first, _InputIterator __last, const _Compare &__comp, const allocator_type &__a=allocator_type())
 map (_InputIterator __first, _InputIterator __last, const allocator_type &__a)
 map (const _Compare &__comp, const allocator_type &__a=allocator_type())
 map (const allocator_type &__a)
 map (const map &)=default
 map (const map &__m, const __type_identity_t< allocator_type > &__a)
 map (initializer_list< value_type > __l, const _Compare &__comp=_Compare(), const allocator_type &__a=allocator_type())
 map (initializer_list< value_type > __l, const allocator_type &__a)
 map (map &&)=default
 map (map &&__m, const __type_identity_t< allocator_type > &__a) noexcept(is_nothrow_copy_constructible< _Compare >::value &&_Alloc_traits::_S_always_equal())
mapped_type & at (const key_type &__k)
const_iterator begin () const noexcept
iterator begin () noexcept
const_iterator cbegin () const noexcept
const_iterator cend () const noexcept
void clear () noexcept
const_reverse_iterator crbegin () const noexcept
const_reverse_iterator crend () const noexcept
std::pair< iterator, bool > emplace (_Args &&... __args)
iterator emplace_hint (const_iterator __pos, _Args &&... __args)
bool empty () const noexcept
const_iterator end () const noexcept
iterator end () noexcept
size_type erase (const key_type &__x)
iterator erase (const_iterator __first, const_iterator __last)
iterator erase (const_iterator __position)
_GLIBCXX_ABI_TAG_CXX11 iterator erase (iterator __position)
iterator erase (const_iterator __position)
_GLIBCXX_ABI_TAG_CXX11 iterator erase (iterator __position)
node_type extract (const key_type &__x)
node_type extract (const_iterator __pos)
allocator_type get_allocator () const noexcept
void insert (_InputIterator __first, _InputIterator __last)
iterator insert (const_iterator __hint, node_type &&__nh)
insert_return_type insert (node_type &&__nh)
void insert (std::initializer_list< value_type > __list)
std::pair< iterator, bool > insert (const value_type &__x)
std::pair< iterator, bool > insert (value_type &&__x)
__enable_if_t< is_constructible< value_type, _Pair >::value, pair< iterator, bool > > insert (_Pair &&__x)
iterator insert (const_iterator __position, const value_type &__x)
iterator insert (const_iterator __position, value_type &&__x)
__enable_if_t< is_constructible< value_type, _Pair >::value, iterator > insert (const_iterator __position, _Pair &&__x)
std::pair< iterator, bool > insert (const value_type &__x)
std::pair< iterator, bool > insert (value_type &&__x)
__enable_if_t< is_constructible< value_type, _Pair >::value, pair< iterator, bool > > insert (_Pair &&__x)
iterator insert (const_iterator __position, const value_type &__x)
iterator insert (const_iterator __position, value_type &&__x)
__enable_if_t< is_constructible< value_type, _Pair >::value, iterator > insert (const_iterator __position, _Pair &&__x)
pair< iterator, bool > insert_or_assign (const key_type &__k, _Obj &&__obj)
iterator insert_or_assign (const_iterator __hint, const key_type &__k, _Obj &&__obj)
key_compare key_comp () const
size_type max_size () const noexcept
mapoperator= (const map &)=default
mapoperator= (initializer_list< value_type > __l)
mapoperator= (map &&)=default
mapped_type & operator[] (const key_type &__k)
const_reverse_iterator rbegin () const noexcept
reverse_iterator rbegin () noexcept
const_reverse_iterator rend () const noexcept
reverse_iterator rend () noexcept
size_type size () const noexcept
void swap (map &__x) noexcept(/*conditional */)
pair< iterator, bool > try_emplace (const key_type &__k, _Args &&... __args)
iterator try_emplace (const_iterator __hint, const key_type &__k, _Args &&... __args)
value_compare value_comp () const
iterator find (const key_type &__x)
auto find (const _Kt &__x) -> decltype(_M_t._M_find_tr(__x))
const_iterator find (const key_type &__x) const
auto find (const _Kt &__x) const -> decltype(_M_t._M_find_tr(__x))
iterator find (const key_type &__x)
auto find (const _Kt &__x) -> decltype(_M_t._M_find_tr(__x))
const_iterator find (const key_type &__x) const
auto find (const _Kt &__x) const -> decltype(_M_t._M_find_tr(__x))
size_type count (const key_type &__x) const
auto count (const _Kt &__x) const -> decltype(_M_t._M_count_tr(__x))
size_type count (const key_type &__x) const
auto count (const _Kt &__x) const -> decltype(_M_t._M_count_tr(__x))
bool contains (const key_type &__x) const
auto contains (const _Kt &__x) const -> decltype(_M_t._M_find_tr(__x), void(), true)
bool contains (const key_type &__x) const
auto contains (const _Kt &__x) const -> decltype(_M_t._M_find_tr(__x), void(), true)
iterator lower_bound (const key_type &__x)
auto lower_bound (const _Kt &__x) -> decltype(iterator(_M_t._M_lower_bound_tr(__x)))
const_iterator lower_bound (const key_type &__x) const
auto lower_bound (const _Kt &__x) const -> decltype(const_iterator(_M_t._M_lower_bound_tr(__x)))
iterator lower_bound (const key_type &__x)
auto lower_bound (const _Kt &__x) -> decltype(iterator(_M_t._M_lower_bound_tr(__x)))
const_iterator lower_bound (const key_type &__x) const
auto lower_bound (const _Kt &__x) const -> decltype(const_iterator(_M_t._M_lower_bound_tr(__x)))
iterator upper_bound (const key_type &__x)
auto upper_bound (const _Kt &__x) -> decltype(iterator(_M_t._M_upper_bound_tr(__x)))
const_iterator upper_bound (const key_type &__x) const
auto upper_bound (const _Kt &__x) const -> decltype(const_iterator(_M_t._M_upper_bound_tr(__x)))
iterator upper_bound (const key_type &__x)
auto upper_bound (const _Kt &__x) -> decltype(iterator(_M_t._M_upper_bound_tr(__x)))
const_iterator upper_bound (const key_type &__x) const
auto upper_bound (const _Kt &__x) const -> decltype(const_iterator(_M_t._M_upper_bound_tr(__x)))
std::pair< iterator, iterator > equal_range (const key_type &__x)
auto equal_range (const _Kt &__x) -> decltype(pair< iterator, iterator >(_M_t._M_equal_range_tr(__x)))
std::pair< const_iterator, const_iterator > equal_range (const key_type &__x) const
auto equal_range (const _Kt &__x) const -> decltype(pair< const_iterator, const_iterator >(_M_t._M_equal_range_tr(__x)))
std::pair< iterator, iterator > equal_range (const key_type &__x)
auto equal_range (const _Kt &__x) -> decltype(pair< iterator, iterator >(_M_t._M_equal_range_tr(__x)))
std::pair< const_iterator, const_iterator > equal_range (const key_type &__x) const
auto equal_range (const _Kt &__x) const -> decltype(pair< const_iterator, const_iterator >(_M_t._M_equal_range_tr(__x)))

Static Public Member Functions

static FiberTypeMaptheMap ()
static bool remember (const MemCore::RefPtr< FiberTypeBase > &Index, const MemCore::RefPtr< TypeProperty > &Property)
static MemCore::RefPtr< TypeProperty > get (const MemCore::RefPtr< FiberTypeBase > &FTB)

Additional Inherited Members

Public Attributes inherited from std::map< FiberTypeIndex, MemCore::RefPtr< TypeProperty > >
keys
 STL member.
elements
 STL member.
keys
 STL member.
elements
 STL member.

Detailed Description

template<class TypeProperty>
struct Fiber::FiberTypeMap< TypeProperty >

https://stackoverflow.com/questions/17614172/c-template-singletons-in-a-dll