Project Alice
Loading...
Searching...
No Matches
tagged_vector< value_type, tag_type, allocator > Class Template Reference

#include <container_types.hpp>

Public Types

using public_value_type = value_type
 
using public_tag_type = tag_type
 

Public Member Functions

 tagged_vector ()
 
 tagged_vector (tagged_vector< value_type, tag_type, allocator > const &other) noexcept
 
 tagged_vector (tagged_vector< value_type, tag_type, allocator > &&other) noexcept
 
 tagged_vector (size_t size)
 
tagged_vectoroperator= (tagged_vector< value_type, tag_type, allocator > const &other) noexcept
 
tagged_vectoroperator= (tagged_vector< value_type, tag_type, allocator > &&other) noexcept
 
value_type const & operator[] (tag_type t) const
 
value_type & operator[] (tag_type t)
 
template<typename... T>
tag_type emplace_back (T &&... ts)
 
value_type & safe_get (tag_type t)
 
auto data () const
 
auto data ()
 
auto array () const
 
auto array ()
 
auto begin () const
 
auto end () const
 
auto begin ()
 
auto end ()
 
auto size () const
 
auto ssize () const
 
void resize (size_t size)
 
void reserve (size_t size)
 
void pop_back ()
 
tag_type push_back (value_type const &v)
 
tag_type push_back (value_type &&v)
 
value_type & back ()
 
value_type const & back () const
 

Detailed Description

template<typename value_type, typename tag_type, typename allocator = std::allocator<value_type>>
class tagged_vector< value_type, tag_type, allocator >

Definition at line 139 of file container_types.hpp.

Member Typedef Documentation

◆ public_tag_type

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
using tagged_vector< value_type, tag_type, allocator >::public_tag_type = tag_type

Definition at line 145 of file container_types.hpp.

◆ public_value_type

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
using tagged_vector< value_type, tag_type, allocator >::public_value_type = value_type

Definition at line 144 of file container_types.hpp.

Constructor & Destructor Documentation

◆ tagged_vector() [1/4]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
tagged_vector< value_type, tag_type, allocator >::tagged_vector ( )
inline

Definition at line 147 of file container_types.hpp.

◆ tagged_vector() [2/4]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
tagged_vector< value_type, tag_type, allocator >::tagged_vector ( tagged_vector< value_type, tag_type, allocator > const &  other)
inlinenoexcept

Definition at line 148 of file container_types.hpp.

◆ tagged_vector() [3/4]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
tagged_vector< value_type, tag_type, allocator >::tagged_vector ( tagged_vector< value_type, tag_type, allocator > &&  other)
inlinenoexcept

Definition at line 149 of file container_types.hpp.

◆ tagged_vector() [4/4]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
tagged_vector< value_type, tag_type, allocator >::tagged_vector ( size_t  size)
inline

Definition at line 150 of file container_types.hpp.

Here is the call graph for this function:

Member Function Documentation

◆ array() [1/2]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
auto tagged_vector< value_type, tag_type, allocator >::array ( )
inline

Definition at line 189 of file container_types.hpp.

◆ array() [2/2]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
auto tagged_vector< value_type, tag_type, allocator >::array ( ) const
inline

Definition at line 186 of file container_types.hpp.

◆ back() [1/2]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
value_type & tagged_vector< value_type, tag_type, allocator >::back ( )
inline

Definition at line 227 of file container_types.hpp.

◆ back() [2/2]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
value_type const & tagged_vector< value_type, tag_type, allocator >::back ( ) const
inline

Definition at line 230 of file container_types.hpp.

◆ begin() [1/2]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
auto tagged_vector< value_type, tag_type, allocator >::begin ( )
inline

Definition at line 198 of file container_types.hpp.

◆ begin() [2/2]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
auto tagged_vector< value_type, tag_type, allocator >::begin ( ) const
inline

Definition at line 192 of file container_types.hpp.

◆ data() [1/2]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
auto tagged_vector< value_type, tag_type, allocator >::data ( )
inline

Definition at line 183 of file container_types.hpp.

◆ data() [2/2]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
auto tagged_vector< value_type, tag_type, allocator >::data ( ) const
inline

Definition at line 180 of file container_types.hpp.

Here is the caller graph for this function:

◆ emplace_back()

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
template<typename... T>
tag_type tagged_vector< value_type, tag_type, allocator >::emplace_back ( T &&...  ts)
inline

Definition at line 171 of file container_types.hpp.

Here is the caller graph for this function:

◆ end() [1/2]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
auto tagged_vector< value_type, tag_type, allocator >::end ( )
inline

Definition at line 201 of file container_types.hpp.

◆ end() [2/2]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
auto tagged_vector< value_type, tag_type, allocator >::end ( ) const
inline

Definition at line 195 of file container_types.hpp.

◆ operator=() [1/2]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
tagged_vector & tagged_vector< value_type, tag_type, allocator >::operator= ( tagged_vector< value_type, tag_type, allocator > &&  other)
inlinenoexcept

Definition at line 158 of file container_types.hpp.

◆ operator=() [2/2]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
tagged_vector & tagged_vector< value_type, tag_type, allocator >::operator= ( tagged_vector< value_type, tag_type, allocator > const &  other)
inlinenoexcept

Definition at line 154 of file container_types.hpp.

◆ operator[]() [1/2]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
value_type & tagged_vector< value_type, tag_type, allocator >::operator[] ( tag_type  t)
inline

Definition at line 166 of file container_types.hpp.

◆ operator[]() [2/2]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
value_type const & tagged_vector< value_type, tag_type, allocator >::operator[] ( tag_type  t) const
inline

Definition at line 162 of file container_types.hpp.

◆ pop_back()

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
void tagged_vector< value_type, tag_type, allocator >::pop_back ( )
inline

Definition at line 216 of file container_types.hpp.

◆ push_back() [1/2]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
tag_type tagged_vector< value_type, tag_type, allocator >::push_back ( value_type &&  v)
inline

Definition at line 223 of file container_types.hpp.

◆ push_back() [2/2]

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
tag_type tagged_vector< value_type, tag_type, allocator >::push_back ( value_type const &  v)
inline

Definition at line 219 of file container_types.hpp.

◆ reserve()

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
void tagged_vector< value_type, tag_type, allocator >::reserve ( size_t  size)
inline

Definition at line 213 of file container_types.hpp.

Here is the call graph for this function:

◆ resize()

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
void tagged_vector< value_type, tag_type, allocator >::resize ( size_t  size)
inline

Definition at line 210 of file container_types.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ safe_get()

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
value_type & tagged_vector< value_type, tag_type, allocator >::safe_get ( tag_type  t)
inline

Definition at line 175 of file container_types.hpp.

Here is the caller graph for this function:

◆ size()

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
auto tagged_vector< value_type, tag_type, allocator >::size ( ) const
inline

Definition at line 204 of file container_types.hpp.

Here is the caller graph for this function:

◆ ssize()

template<typename value_type , typename tag_type , typename allocator = std::allocator<value_type>>
auto tagged_vector< value_type, tag_type, allocator >::ssize ( ) const
inline

Definition at line 207 of file container_types.hpp.


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