bux API Reference 1.9.0
Static library of whatever are seen required in general purpose but not directly supported from Modern C++. Or whatever reusable originated from my side projects.
Loading...
Searching...
No Matches
bux::C_DtorFreeStack< T > Class Template Reference

Safe instantiation for types which's destructor does exactly nothing. More...

#include <Xtack.h>

Public Types

typedef size_t size_type
 
typedef T value_type
 
typedef T * iterator
 
typedef const T * const_iterator
 

Public Member Functions

 C_DtorFreeStack () noexcept
 
 ~C_DtorFreeStack () noexcept
 
auto & operator= (const C_DtorFreeStack &other)
 
auto & operator[] (size_type i)
 
auto & operator[] (size_type i) const
 
template<class T_Elem >
void assign (const T_Elem *p, size_t n)
 
template<class T_Iter >
void assign (T_Iter beg, T_Iter end)
 
auto begin () const noexcept
 
auto begin () noexcept
 
void clear () noexcept
 
bool empty () const noexcept
 
auto end () const noexcept
 
auto end () noexcept
 
void pop (size_t n=1)
 
auto & push ()
 
template<class T_Elem >
auto & push (const T_Elem &t)
 
template<class T_Iter >
void push (T_Iter p, size_t n)
 
template<class T_Iter >
void push (T_Iter beg, T_Iter end)
 
auto size () const noexcept
 
auto & top () const noexcept
 
auto & top () noexcept
 

Detailed Description

template<class T>
class bux::C_DtorFreeStack< T >

Safe instantiation for types which's destructor does exactly nothing.

Definition at line 179 of file Xtack.h.

Member Typedef Documentation

◆ const_iterator

template<class T >
const T* bux::C_DtorFreeStack< T >::const_iterator

Definition at line 187 of file Xtack.h.

◆ iterator

template<class T >
T* bux::C_DtorFreeStack< T >::iterator

Definition at line 186 of file Xtack.h.

◆ size_type

template<class T >
size_t bux::C_DtorFreeStack< T >::size_type

Definition at line 184 of file Xtack.h.

◆ value_type

template<class T >
T bux::C_DtorFreeStack< T >::value_type

Definition at line 185 of file Xtack.h.

Constructor & Destructor Documentation

◆ C_DtorFreeStack()

template<class T >
bux::C_DtorFreeStack< T >::C_DtorFreeStack ( )
inlinenoexcept

Definition at line 190 of file Xtack.h.

◆ ~C_DtorFreeStack()

template<class T >
bux::C_DtorFreeStack< T >::~C_DtorFreeStack ( )
inlinenoexcept

Definition at line 192 of file Xtack.h.

Member Function Documentation

◆ assign() [1/2]

template<class T >
template<class T_Elem >
void bux::C_DtorFreeStack< T >::assign ( const T_Elem * p,
size_t n )
inline

Definition at line 201 of file Xtack.h.

References bux::C_DtorFreeStack< T >::clear(), and bux::C_DtorFreeStack< T >::push().

Referenced by bux::C_DtorFreeStack< T >::operator=().

Here is the caller graph for this function:

◆ assign() [2/2]

template<class T >
template<class T_Iter >
void bux::C_DtorFreeStack< T >::assign ( T_Iter beg,
T_Iter end )
inline

◆ begin() [1/2]

template<class T >
auto bux::C_DtorFreeStack< T >::begin ( ) const
inlinenoexcept

Definition at line 212 of file Xtack.h.

Referenced by bux::C_DtorFreeStack< T >::operator=().

Here is the caller graph for this function:

◆ begin() [2/2]

template<class T >
auto bux::C_DtorFreeStack< T >::begin ( )
inlinenoexcept

Definition at line 214 of file Xtack.h.

◆ clear()

template<class T >
void bux::C_DtorFreeStack< T >::clear ( )
inlinenoexcept

Definition at line 216 of file Xtack.h.

Referenced by bux::C_DtorFreeStack< T >::assign(), and bux::C_DtorFreeStack< T >::assign().

Here is the caller graph for this function:

◆ empty()

template<class T >
bool bux::C_DtorFreeStack< T >::empty ( ) const
inlinenoexcept

Definition at line 218 of file Xtack.h.

◆ end() [1/2]

template<class T >
auto bux::C_DtorFreeStack< T >::end ( ) const
inlinenoexcept

Definition at line 220 of file Xtack.h.

Referenced by bux::C_DtorFreeStack< T >::assign(), and bux::C_DtorFreeStack< T >::push().

Here is the caller graph for this function:

◆ end() [2/2]

template<class T >
auto bux::C_DtorFreeStack< T >::end ( )
inlinenoexcept

Definition at line 222 of file Xtack.h.

◆ operator=()

template<class T >
auto & bux::C_DtorFreeStack< T >::operator= ( const C_DtorFreeStack< T > & other)
inline

◆ operator[]() [1/2]

template<class T >
auto & bux::C_DtorFreeStack< T >::operator[] ( size_type i)
inline

Definition at line 196 of file Xtack.h.

◆ operator[]() [2/2]

template<class T >
auto & bux::C_DtorFreeStack< T >::operator[] ( size_type i) const
inline

Definition at line 198 of file Xtack.h.

◆ pop()

template<class T >
void bux::C_DtorFreeStack< T >::pop ( size_t n = 1)

Definition at line 436 of file Xtack.h.

◆ push() [1/4]

template<class T >
auto & bux::C_DtorFreeStack< T >::push ( )
inline

Definition at line 226 of file Xtack.h.

Referenced by bux::C_DtorFreeStack< T >::assign(), and bux::C_DtorFreeStack< T >::assign().

Here is the caller graph for this function:

◆ push() [2/4]

template<class T >
template<class T_Elem >
auto & bux::C_DtorFreeStack< T >::push ( const T_Elem & t)
inline

Definition at line 229 of file Xtack.h.

◆ push() [3/4]

template<class T >
template<class T_Iter >
void bux::C_DtorFreeStack< T >::push ( T_Iter beg,
T_Iter end )
inline

Definition at line 241 of file Xtack.h.

References bux::C_DtorFreeStack< T >::end().

◆ push() [4/4]

template<class T >
template<class T_Iter >
void bux::C_DtorFreeStack< T >::push ( T_Iter p,
size_t n )

Definition at line 446 of file Xtack.h.

◆ size()

template<class T >
auto bux::C_DtorFreeStack< T >::size ( ) const
inlinenoexcept

Definition at line 247 of file Xtack.h.

Referenced by bux::C_DtorFreeStack< T >::operator=().

Here is the caller graph for this function:

◆ top() [1/2]

template<class T >
auto & bux::C_DtorFreeStack< T >::top ( ) const
inlinenoexcept

Definition at line 249 of file Xtack.h.

◆ top() [2/2]

template<class T >
auto & bux::C_DtorFreeStack< T >::top ( )
inlinenoexcept

Definition at line 251 of file Xtack.h.


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