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 153 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 159 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 158 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 161 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 162 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 163 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 164 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 203 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 200 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 241 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 244 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 212 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 206 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 197 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 194 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 185 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 215 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 209 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 172 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 168 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 180 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 176 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 230 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 237 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 233 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 227 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 224 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 189 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 218 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 221 of file container_types.hpp.


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