bux API Reference 1.12.3
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>
typedef const T* bux::C_DtorFreeStack< T >::const_iterator

Definition at line 187 of file Xtack.h.

◆ iterator

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

Definition at line 186 of file Xtack.h.

◆ size_type

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

Definition at line 184 of file Xtack.h.

◆ value_type

template<class T>
typedef 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.

Referenced by operator=().

Here is the caller graph for this function:

◆ ~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 clear(), and push().

Referenced by 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

Definition at line 207 of file Xtack.h.

References clear(), end(), and push().

◆ begin() [1/2]

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

Definition at line 212 of file Xtack.h.

Referenced by 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 assign(), and 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 assign(), and 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

Definition at line 194 of file Xtack.h.

References assign(), begin(), C_DtorFreeStack(), and size().

◆ 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 assign(), and 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 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 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: