DeSiGNAR  0.5a
Data Structures General Library
Classes | Public Types | Public Member Functions | List of all members
Designar::DLList< T > Class Template Reference

#include <list.H>

Inheritance diagram for Designar::DLList< T >:
Inheritance graph
[legend]
Collaboration diagram for Designar::DLList< T >:
Collaboration graph
[legend]

Classes

class  Iterator
 

Public Types

using ItemType = T
 
using KeyType = T
 
using DataType = T
 
using ValueType = T
 
using SizeType = nat_t
 

Public Member Functions

 DLList ()
 
 DLList (const DLList &l)
 
 DLList (DLList &&l)
 
 DLList (const std::initializer_list< T > &)
 
 ~DLList ()
 
nat_t size () const
 
void clear ()
 
void swap (DLList &l)
 
T & insert (const T &item)
 
T & insert (T &&item)
 
T & append (const T &item)
 
T & append (T &&item)
 
T & get_first ()
 
const T & get_first () const
 
T & get_last ()
 
const T & get_last () const
 
remove_first ()
 
remove_last ()
 
void remove (T &item)
 
DLListoperator= (const DLList &l)
 
DLListoperator= (DLList &&l)
 
Iterator begin ()
 
Iterator begin () const
 
Iterator end ()
 
Iterator end () const
 
T & select (nat_t)
 
const T & select (nat_t) const
 
T & operator[] (nat_t i)
 
const T & operator[] (nat_t i) const
 
- Public Member Functions inherited from Designar::DL
 DL ()
 
 DL (const DL &)
 
 DL (DL &&l)
 
DLoperator= (const DL &)
 
DLoperator= (DL &&l)
 
void reset ()
 
bool is_empty () const
 
bool is_unitarian_or_empty () const
 
bool is_unitarian () const
 
DL *& get_next ()
 
const DL *& get_next () const
 
DL *& get_prev ()
 
const DL *& get_prev () const
 
void insert_next (DL *node)
 
void insert_prev (DL *node)
 
void del ()
 
DLremove_next ()
 
DLremove_prev ()
 
void swap (DL *node)
 
void swap (DL &node)
 
void concat (DL *l)
 
void concat (DL &l)
 
void split (DL &, DL &)
 
- Public Member Functions inherited from Designar::ContainerAlgorithms< DLList< T >, T >
T * nth_ptr (nat_t i)
 
T & nth (nat_t i)
 
const T & nth (nat_t i) const
 
void for_each (Op &op) const
 
void for_each (Op &&op=Op()) const
 
ContainerRet filter (Pred &pred) const
 
ContainerRet filter (Pred &&pred=Pred()) const
 
ContainerRet map (Op &op) const
 
ContainerRet map (Op &&op=Op()) const
 
ContainerRet map_if (Op &op, Pred &pred) const
 
ContainerRet map_if (Op &op, Pred &&pred=Pred()) const
 
ContainerRet map_if (Op &&op, Pred &pred) const
 
ContainerRet map_if (Op &&op=Op(), Pred &&pred=Pred()) const
 
RetT fold (const RetT &init_val, Op &op) const
 
RetT fold (const RetT &init_val, Op &&op=Op()) const
 
RetT fold (RetT &&init_val, Op &op) const
 
RetT fold (RetT &&init_val, Op &&op=Op()) const
 
bool all (Pred &pred) const
 
bool all (Pred &&pred=Pred()) const
 
bool exists (Pred &pred) const
 
bool exists (Pred &&pred=Pred()) const
 
bool none (Pred &pred) const
 
bool none (Pred &&pred=Pred()) const
 
T * search_ptr (Pred &pred) const
 
T * search_ptr (Pred &&pred=Pred()) const
 
bool remove_first_if (Pred &pred)
 
bool remove_first_if (Pred &&pred=Pred())
 
void remove_if (Pred &pred)
 
void remove_if (Pred &&pred=Pred())
 
bool equal (const ContainerType2 &c, Eq &eq) const
 
bool equal (const ContainerType2 &c, Eq &&eq=Eq()) const
 
bool is_sorted (Cmp &cmp) const
 
bool is_sorted (Cmp &&cmp=Cmp()) const
 
SLList< std::pair< T, typename ContainerType2::KeyType > > zip (const ContainerType2 &c) const
 
SLList< std::pair< T, typename ContainerType2::KeyType > > zip_eq (const ContainerType2 &c) const
 
SLList< std::pair< T, typename ContainerType2::KeyType > > zip_left (const ContainerType2 &c) const
 
SLList< std::pair< T, typename ContainerType2::KeyType > > zip_right (const ContainerType2 &c) const
 
DynArray< T > to_array () const
 
SLList< T > to_list () const
 

Member Typedef Documentation

template<typename T>
using Designar::DLList< T >::DataType = T
template<typename T>
using Designar::DLList< T >::ItemType = T
template<typename T>
using Designar::DLList< T >::KeyType = T
template<typename T>
using Designar::DLList< T >::SizeType = nat_t
template<typename T>
using Designar::DLList< T >::ValueType = T

Constructor & Destructor Documentation

template<typename T>
Designar::DLList< T >::DLList ( )
inline
template<typename T>
Designar::DLList< T >::DLList ( const DLList< T > &  l)
inline
template<typename T>
Designar::DLList< T >::DLList ( DLList< T > &&  l)
inline
template<typename T>
Designar::DLList< T >::DLList ( const std::initializer_list< T > &  l)
template<typename T>
Designar::DLList< T >::~DLList ( )
inline

Member Function Documentation

template<typename T>
T& Designar::DLList< T >::append ( const T &  item)
inline
template<typename T>
T& Designar::DLList< T >::append ( T &&  item)
inline
template<typename T>
Iterator Designar::DLList< T >::begin ( )
inline
template<typename T>
Iterator Designar::DLList< T >::begin ( ) const
inline
template<typename T>
void Designar::DLList< T >::clear ( )
inline
template<typename T>
Iterator Designar::DLList< T >::end ( )
inline
template<typename T>
Iterator Designar::DLList< T >::end ( ) const
inline
template<typename T>
T& Designar::DLList< T >::get_first ( )
inline
template<typename T>
const T& Designar::DLList< T >::get_first ( ) const
inline
template<typename T>
T& Designar::DLList< T >::get_last ( )
inline
template<typename T>
const T& Designar::DLList< T >::get_last ( ) const
inline
template<typename T>
T& Designar::DLList< T >::insert ( const T &  item)
inline
template<typename T>
T& Designar::DLList< T >::insert ( T &&  item)
inline
template<typename T>
DLList& Designar::DLList< T >::operator= ( const DLList< T > &  l)
inline
template<typename T>
DLList& Designar::DLList< T >::operator= ( DLList< T > &&  l)
inline
template<typename T>
T& Designar::DLList< T >::operator[] ( nat_t  i)
inline
template<typename T>
const T& Designar::DLList< T >::operator[] ( nat_t  i) const
inline
template<typename T>
void Designar::DLList< T >::remove ( T &  item)
inline
template<typename T>
T Designar::DLList< T >::remove_first ( )
inline
template<typename T>
T Designar::DLList< T >::remove_last ( )
inline
template<typename T >
T & Designar::DLList< T >::select ( nat_t  i)
template<typename T >
const T & Designar::DLList< T >::select ( nat_t  i) const
template<typename T>
nat_t Designar::DLList< T >::size ( ) const
inline
template<typename T>
void Designar::DLList< T >::swap ( DLList< T > &  l)
inline

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