Kea  1.5.0
isc::dhcp::stack< T, S > Class Template Reference

A stack with random access from its top. More...

#include <dhcp4_parser.h>

Public Types

typedef S::const_reverse_iterator const_iterator
 
typedef S::const_reverse_iterator const_iterator
 
typedef S::reverse_iterator iterator
 
typedef S::reverse_iterator iterator
 
typedef S::size_type size_type
 
typedef S::size_type size_type
 

Public Member Functions

 stack (size_type n=200)
 
 stack (size_type n=200)
 
const_iterator begin () const
 
const_iterator begin () const
 
void clear ()
 
void clear ()
 
const_iterator end () const
 
const_iterator end () const
 
T & operator[] (size_type i)
 Random access. More...
 
T & operator[] (size_type i)
 Random access. More...
 
T & operator[] (int i)
 Random access. More...
 
T & operator[] (int i)
 Random access. More...
 
const T & operator[] (size_type i) const
 Random access. More...
 
const T & operator[] (size_type i) const
 Random access. More...
 
const T & operator[] (int i) const
 Random access. More...
 
const T & operator[] (int i) const
 Random access. More...
 
void pop (int n=1)
 
void pop (int n=1)
 
void push (YY_MOVE_REF(T) t)
 Steal the contents of t. More...
 
void push (YY_MOVE_REF(T) t)
 Steal the contents of t. More...
 
size_type size () const
 
size_type size () const
 

Detailed Description

template<typename T, typename S = std::vector<T>>
class isc::dhcp::stack< T, S >

A stack with random access from its top.

Definition at line 171 of file dhcp4_parser.h.

Member Typedef Documentation

◆ const_iterator [1/2]

template<typename T, typename S = std::vector<T>>
typedef S::const_reverse_iterator isc::dhcp::stack< T, S >::const_iterator

Definition at line 176 of file dhcp4_parser.h.

◆ const_iterator [2/2]

template<typename T, typename S = std::vector<T>>
typedef S::const_reverse_iterator isc::dhcp::stack< T, S >::const_iterator

Definition at line 176 of file dhcp6_parser.h.

◆ iterator [1/2]

template<typename T, typename S = std::vector<T>>
typedef S::reverse_iterator isc::dhcp::stack< T, S >::iterator

Definition at line 175 of file dhcp4_parser.h.

◆ iterator [2/2]

template<typename T, typename S = std::vector<T>>
typedef S::reverse_iterator isc::dhcp::stack< T, S >::iterator

Definition at line 175 of file dhcp6_parser.h.

◆ size_type [1/2]

template<typename T, typename S = std::vector<T>>
typedef S::size_type isc::dhcp::stack< T, S >::size_type

Definition at line 177 of file dhcp4_parser.h.

◆ size_type [2/2]

template<typename T, typename S = std::vector<T>>
typedef S::size_type isc::dhcp::stack< T, S >::size_type

Definition at line 177 of file dhcp6_parser.h.

Constructor & Destructor Documentation

◆ stack() [1/2]

template<typename T, typename S = std::vector<T>>
isc::dhcp::stack< T, S >::stack ( size_type  n = 200)
inline

Definition at line 179 of file dhcp4_parser.h.

◆ stack() [2/2]

template<typename T, typename S = std::vector<T>>
isc::dhcp::stack< T, S >::stack ( size_type  n = 200)
inline

Definition at line 179 of file dhcp6_parser.h.

Member Function Documentation

◆ begin() [1/2]

template<typename T, typename S = std::vector<T>>
const_iterator isc::dhcp::stack< T, S >::begin ( ) const
inline

Definition at line 249 of file dhcp4_parser.h.

◆ begin() [2/2]

template<typename T, typename S = std::vector<T>>
const_iterator isc::dhcp::stack< T, S >::begin ( ) const
inline

Definition at line 249 of file dhcp6_parser.h.

◆ clear() [1/2]

template<typename T, typename S = std::vector<T>>
void isc::dhcp::stack< T, S >::clear ( )
inline

Definition at line 237 of file dhcp4_parser.h.

Referenced by isc::dhcp::Dhcp4Parser::parse(), and isc::dhcp::Dhcp6Parser::parse().

◆ clear() [2/2]

template<typename T, typename S = std::vector<T>>
void isc::dhcp::stack< T, S >::clear ( )
inline

Definition at line 237 of file dhcp6_parser.h.

◆ end() [1/2]

template<typename T, typename S = std::vector<T>>
const_iterator isc::dhcp::stack< T, S >::end ( ) const
inline

Definition at line 255 of file dhcp4_parser.h.

◆ end() [2/2]

template<typename T, typename S = std::vector<T>>
const_iterator isc::dhcp::stack< T, S >::end ( ) const
inline

Definition at line 255 of file dhcp6_parser.h.

◆ operator[]() [1/8]

template<typename T, typename S = std::vector<T>>
T& isc::dhcp::stack< T, S >::operator[] ( size_type  i)
inline

Random access.

Index 0 returns the topmost element.

Definition at line 187 of file dhcp6_parser.h.

◆ operator[]() [2/8]

template<typename T, typename S = std::vector<T>>
T& isc::dhcp::stack< T, S >::operator[] ( size_type  i)
inline

Random access.

Index 0 returns the topmost element.

Definition at line 187 of file dhcp4_parser.h.

◆ operator[]() [3/8]

template<typename T, typename S = std::vector<T>>
T& isc::dhcp::stack< T, S >::operator[] ( int  i)
inline

Random access.

Index 0 returns the topmost element.

Definition at line 196 of file dhcp4_parser.h.

◆ operator[]() [4/8]

template<typename T, typename S = std::vector<T>>
T& isc::dhcp::stack< T, S >::operator[] ( int  i)
inline

Random access.

Index 0 returns the topmost element.

Definition at line 196 of file dhcp6_parser.h.

◆ operator[]() [5/8]

template<typename T, typename S = std::vector<T>>
const T& isc::dhcp::stack< T, S >::operator[] ( size_type  i) const
inline

Random access.

Index 0 returns the topmost element.

Definition at line 205 of file dhcp6_parser.h.

◆ operator[]() [6/8]

template<typename T, typename S = std::vector<T>>
const T& isc::dhcp::stack< T, S >::operator[] ( size_type  i) const
inline

Random access.

Index 0 returns the topmost element.

Definition at line 205 of file dhcp4_parser.h.

◆ operator[]() [7/8]

template<typename T, typename S = std::vector<T>>
const T& isc::dhcp::stack< T, S >::operator[] ( int  i) const
inline

Random access.

Index 0 returns the topmost element.

Definition at line 214 of file dhcp6_parser.h.

◆ operator[]() [8/8]

template<typename T, typename S = std::vector<T>>
const T& isc::dhcp::stack< T, S >::operator[] ( int  i) const
inline

Random access.

Index 0 returns the topmost element.

Definition at line 214 of file dhcp4_parser.h.

◆ pop() [1/2]

template<typename T, typename S = std::vector<T>>
void isc::dhcp::stack< T, S >::pop ( int  n = 1)
inline

Definition at line 230 of file dhcp6_parser.h.

◆ pop() [2/2]

template<typename T, typename S = std::vector<T>>
void isc::dhcp::stack< T, S >::pop ( int  n = 1)
inline

Definition at line 230 of file dhcp4_parser.h.

◆ push() [1/2]

template<typename T, typename S = std::vector<T>>
void isc::dhcp::stack< T, S >::push ( YY_MOVE_REF(T)  t)
inline

Steal the contents of t.

Close to move-semantics.

Definition at line 223 of file dhcp4_parser.h.

◆ push() [2/2]

template<typename T, typename S = std::vector<T>>
void isc::dhcp::stack< T, S >::push ( YY_MOVE_REF(T)  t)
inline

Steal the contents of t.

Close to move-semantics.

Definition at line 223 of file dhcp6_parser.h.

◆ size() [1/2]

template<typename T, typename S = std::vector<T>>
size_type isc::dhcp::stack< T, S >::size ( ) const
inline

Definition at line 243 of file dhcp6_parser.h.

◆ size() [2/2]

template<typename T, typename S = std::vector<T>>
size_type isc::dhcp::stack< T, S >::size ( ) const
inline

Definition at line 243 of file dhcp4_parser.h.

Referenced by isc::dhcp::Dhcp4Parser::parse(), and isc::dhcp::Dhcp6Parser::parse().


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