Static Public Member Functions | Private Types

claw::multi_type_map_wrapper< Head, multi_type_map< Key, meta::type_list< Head, Tail > > > Class Template Reference

List of all members.

Static Public Member Functions

static const value_typeget (const map_type &self, const key_type &k)
static void set (map_type &self, const key_type &k, const value_type &v)
static bool exists (const map_type &self, const key_type &k)
static iterator begin (map_type &self)
static iterator end (map_type &self)
static const_iterator begin (const map_type &self)
static const_iterator end (const map_type &self)

Private Types

typedef Key key_type
typedef Head value_type
typedef multi_type_map< Key,
meta::type_list< Head, Tail > > 
map_type
typedef map_type::iterator_type iterator
typedef
map_type::const_iterator_type 
const_iterator

Detailed Description

template<typename Key, typename Head, typename Tail>
class claw::multi_type_map_wrapper< Head, multi_type_map< Key, meta::type_list< Head, Tail > > >

Definition at line 41 of file multi_type_map.tpp.


Member Typedef Documentation

template<typename Key , typename Head , typename Tail >
typedef map_type::const_iterator_type claw::multi_type_map_wrapper< Head, multi_type_map< Key, meta::type_list< Head, Tail > > >::const_iterator [private]

Definition at line 48 of file multi_type_map.tpp.

template<typename Key , typename Head , typename Tail >
typedef map_type::iterator_type claw::multi_type_map_wrapper< Head, multi_type_map< Key, meta::type_list< Head, Tail > > >::iterator [private]

Definition at line 47 of file multi_type_map.tpp.

template<typename Key , typename Head , typename Tail >
typedef Key claw::multi_type_map_wrapper< Head, multi_type_map< Key, meta::type_list< Head, Tail > > >::key_type [private]

Definition at line 44 of file multi_type_map.tpp.

template<typename Key , typename Head , typename Tail >
typedef multi_type_map<Key, meta::type_list<Head, Tail> > claw::multi_type_map_wrapper< Head, multi_type_map< Key, meta::type_list< Head, Tail > > >::map_type [private]

Definition at line 46 of file multi_type_map.tpp.

template<typename Key , typename Head , typename Tail >
typedef Head claw::multi_type_map_wrapper< Head, multi_type_map< Key, meta::type_list< Head, Tail > > >::value_type [private]

Definition at line 45 of file multi_type_map.tpp.


Member Function Documentation

template<typename Key , typename Head , typename Tail >
static iterator claw::multi_type_map_wrapper< Head, multi_type_map< Key, meta::type_list< Head, Tail > > >::begin ( map_type self ) [inline, static]

Definition at line 67 of file multi_type_map.tpp.

    {
      return self.m_data.begin();
    }
template<typename Key , typename Head , typename Tail >
static const_iterator claw::multi_type_map_wrapper< Head, multi_type_map< Key, meta::type_list< Head, Tail > > >::begin ( const map_type self ) [inline, static]

Definition at line 77 of file multi_type_map.tpp.

    {
      return self.m_data.begin();
    }
template<typename Key , typename Head , typename Tail >
static iterator claw::multi_type_map_wrapper< Head, multi_type_map< Key, meta::type_list< Head, Tail > > >::end ( map_type self ) [inline, static]

Definition at line 72 of file multi_type_map.tpp.

    {
      return self.m_data.end();
    }
template<typename Key , typename Head , typename Tail >
static const_iterator claw::multi_type_map_wrapper< Head, multi_type_map< Key, meta::type_list< Head, Tail > > >::end ( const map_type self ) [inline, static]

Definition at line 82 of file multi_type_map.tpp.

    {
      return self.m_data.end();
    }
template<typename Key , typename Head , typename Tail >
static bool claw::multi_type_map_wrapper< Head, multi_type_map< Key, meta::type_list< Head, Tail > > >::exists ( const map_type self,
const key_type k 
) [inline, static]

Definition at line 62 of file multi_type_map.tpp.

    {
      return self.m_data.find(k) != self.m_data.end();
    }
template<typename Key , typename Head , typename Tail >
static const value_type& claw::multi_type_map_wrapper< Head, multi_type_map< Key, meta::type_list< Head, Tail > > >::get ( const map_type self,
const key_type k 
) [inline, static]

Definition at line 51 of file multi_type_map.tpp.

References CLAW_PRECOND.

    {
      CLAW_PRECOND( exists(self, k) );
      return self.m_data.find(k)->second;
    }
template<typename Key , typename Head , typename Tail >
static void claw::multi_type_map_wrapper< Head, multi_type_map< Key, meta::type_list< Head, Tail > > >::set ( map_type self,
const key_type k,
const value_type v 
) [inline, static]

Definition at line 57 of file multi_type_map.tpp.

    {
      self.m_data[k] = v;
    }

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