neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
neolib::i_map< Key, T > Class Template Referenceabstract

#include <i_map.hpp>

Inheritance diagram for neolib::i_map< Key, T >:
neolib::i_container< i_pair< const Key, T >, i_const_iterator< i_pair< const Key, T > >, i_iterator< i_pair< const Key, T > > > neolib::i_reference_counted

Public Types

typedef self_type abstract_type
 
typedef Key abstract_key_type
 
typedef T abstract_mapped_type
 
typedef i_pair< const abstract_key_type, abstract_mapped_typeabstract_value_type
 
typedef base_type::const_iterator const_iterator
 
typedef base_type::iterator iterator
 
- Public Types inherited from neolib::i_container< i_pair< const Key, T >, i_const_iterator< i_pair< const Key, T > >, i_iterator< i_pair< const Key, T > > >
typedef i_pair< const Key, T > value_type
 
typedef size_t size_type
 
typedef i_const_iterator< i_pair< const Key, T > > abstract_const_iterator
 
typedef i_iterator< i_pair< const Key, T > > abstract_iterator
 
typedef abstract_const_iterator::iterator_wrapper const_iterator
 
typedef abstract_iterator::iterator_wrapper iterator
 
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 
typedef std::reverse_iterator< iteratorreverse_iterator
 

Public Member Functions

virtual abstract_mapped_typeoperator[] (const abstract_key_type &aKey)=0
 
virtual const abstract_mapped_typeat (const abstract_key_type &aKey) const =0
 
virtual abstract_mapped_typeat (const abstract_key_type &aKey)=0
 
iterator insert (const abstract_value_type &aValue)
 
iterator insert (const abstract_key_type &aKey, const abstract_mapped_type &aMapped)
 
const_iterator find (const abstract_key_type &aKey) const
 
iterator find (const abstract_key_type &aKey)
 
const_iterator lower_bound (const abstract_key_type &aKey) const
 
iterator lower_bound (const abstract_key_type &aKey)
 
const_iterator upper_bound (const abstract_key_type &aKey) const
 
iterator upper_bound (const abstract_key_type &aKey)
 
- Public Member Functions inherited from neolib::i_container< i_pair< const Key, T >, i_const_iterator< i_pair< const Key, T > >, i_iterator< i_pair< const Key, T > > >
virtual size_type size () const noexcept=0
 
virtual size_type max_size () const noexcept=0
 
bool empty () const noexcept
 
const_iterator cbegin () const
 
const_iterator begin () const
 
iterator begin ()
 
const_iterator cend () const
 
const_iterator end () const
 
iterator end ()
 
const_reverse_iterator crbegin () const
 
const_reverse_iterator rbegin () const
 
reverse_iterator rbegin ()
 
const_reverse_iterator crend () const
 
const_reverse_iterator rend () const
 
reverse_iterator rend ()
 
iterator erase (const abstract_iterator &aPosition)
 
iterator erase (const abstract_const_iterator &aPosition)
 
iterator erase (const abstract_iterator &aFirst, const abstract_iterator &aLast)
 
iterator erase (const abstract_const_iterator &aFirst, const abstract_const_iterator &aLast)
 
virtual void clear ()=0
 
virtual void assign (const i_container &aRhs)=0
 
i_containeroperator= (const i_container &aRhs)
 
- Public Member Functions inherited from neolib::i_reference_counted
virtual ~i_reference_counted ()=default
 
virtual void add_ref () const noexcept=0
 
virtual void release () const =0
 
virtual int32_t use_count () const noexcept=0
 
virtual const i_reference_countedrelease_and_take_ownership () const =0
 
virtual i_reference_countedrelease_and_take_ownership ()=0
 
virtual void pin () const noexcept=0
 
virtual void unpin () const =0
 
virtual i_ref_control_blockcontrol_block ()=0
 

Protected Types

typedef base_type::abstract_const_iterator abstract_const_iterator
 
typedef base_type::abstract_iterator abstract_iterator
 
- Protected Types inherited from neolib::i_container< i_pair< const Key, T >, i_const_iterator< i_pair< const Key, T > >, i_iterator< i_pair< const Key, T > > >
typedef i_container< i_pair< const Key, T >, i_const_iterator< i_pair< const Key, T > >, i_iterator< i_pair< const Key, T > > > generic_container_type
 

Detailed Description

template<typename Key, typename T>
class neolib::i_map< Key, T >

Definition at line 45 of file i_map.hpp.

Member Typedef Documentation

◆ abstract_const_iterator

template<typename Key , typename T >
typedef base_type::abstract_const_iterator neolib::i_map< Key, T >::abstract_const_iterator
protected

Definition at line 55 of file i_map.hpp.

◆ abstract_iterator

template<typename Key , typename T >
typedef base_type::abstract_iterator neolib::i_map< Key, T >::abstract_iterator
protected

Definition at line 56 of file i_map.hpp.

◆ abstract_key_type

template<typename Key , typename T >
typedef Key neolib::i_map< Key, T >::abstract_key_type

Definition at line 51 of file i_map.hpp.

◆ abstract_mapped_type

template<typename Key , typename T >
typedef T neolib::i_map< Key, T >::abstract_mapped_type

Definition at line 52 of file i_map.hpp.

◆ abstract_type

template<typename Key , typename T >
typedef self_type neolib::i_map< Key, T >::abstract_type

Definition at line 50 of file i_map.hpp.

◆ abstract_value_type

Definition at line 53 of file i_map.hpp.

◆ const_iterator

Definition at line 58 of file i_map.hpp.

◆ iterator

Definition at line 59 of file i_map.hpp.

Member Function Documentation

◆ at() [1/2]

template<typename Key , typename T >
virtual const abstract_mapped_type & neolib::i_map< Key, T >::at ( const abstract_key_type aKey) const
pure virtual

◆ at() [2/2]

template<typename Key , typename T >
virtual abstract_mapped_type & neolib::i_map< Key, T >::at ( const abstract_key_type aKey)
pure virtual

◆ find() [1/2]

template<typename Key , typename T >
iterator neolib::i_map< Key, T >::find ( const abstract_key_type aKey)
inline

Definition at line 68 of file i_map.hpp.

◆ find() [2/2]

template<typename Key , typename T >
const_iterator neolib::i_map< Key, T >::find ( const abstract_key_type aKey) const
inline

Definition at line 67 of file i_map.hpp.

◆ insert() [1/2]

template<typename Key , typename T >
iterator neolib::i_map< Key, T >::insert ( const abstract_key_type aKey,
const abstract_mapped_type aMapped 
)
inline

Definition at line 66 of file i_map.hpp.

◆ insert() [2/2]

template<typename Key , typename T >
iterator neolib::i_map< Key, T >::insert ( const abstract_value_type aValue)
inline

Definition at line 65 of file i_map.hpp.

◆ lower_bound() [1/2]

template<typename Key , typename T >
iterator neolib::i_map< Key, T >::lower_bound ( const abstract_key_type aKey)
inline

Definition at line 70 of file i_map.hpp.

◆ lower_bound() [2/2]

template<typename Key , typename T >
const_iterator neolib::i_map< Key, T >::lower_bound ( const abstract_key_type aKey) const
inline

Definition at line 69 of file i_map.hpp.

◆ operator[]()

template<typename Key , typename T >
virtual abstract_mapped_type & neolib::i_map< Key, T >::operator[] ( const abstract_key_type aKey)
pure virtual

◆ upper_bound() [1/2]

template<typename Key , typename T >
iterator neolib::i_map< Key, T >::upper_bound ( const abstract_key_type aKey)
inline

Definition at line 72 of file i_map.hpp.

◆ upper_bound() [2/2]

template<typename Key , typename T >
const_iterator neolib::i_map< Key, T >::upper_bound ( const abstract_key_type aKey) const
inline

Definition at line 71 of file i_map.hpp.


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