26 #if ! defined (octave_base_list_h)
27 #define octave_base_list_h 1
29 #include "octave-config.h"
37 template <
typename elt_type>
43 typedef typename std::list<elt_type>::iterator
iterator;
47 typedef typename std::list<elt_type>::const_reverse_iterator
50 bool empty (
void)
const {
return m_lst.empty (); }
52 size_t size (
void)
const {
return m_lst.size (); }
53 size_t length (
void)
const {
return size (); }
60 m_lst.remove_if (pred);
63 void clear (
void) { m_lst.clear (); }
79 elt_type&
front (
void) {
return m_lst.front (); }
80 elt_type&
back (
void) {
return m_lst.back (); }
82 const elt_type&
front (
void)
const {
return m_lst.front (); }
83 const elt_type&
back (
void)
const {
return m_lst.back (); }
85 void push_front (
const elt_type& s) { m_lst.push_front (s); }
86 void push_back (
const elt_type& s) { m_lst.push_back (s); }
92 void append (
const elt_type& s) { m_lst.push_back (s); }
96 base_list (
const std::list<elt_type>& l) : m_lst (l) { }
void append(const elt_type &s)
base_list(const base_list &bl)=default
const elt_type & front(void) const
const_reverse_iterator rbegin(void) const
base_list(const std::list< elt_type > &l)
const_iterator end(void) const
virtual ~base_list(void)=default
size_t length(void) const
std::list< elt_type > m_lst
iterator erase(iterator pos)
std::list< elt_type >::reverse_iterator reverse_iterator
reverse_iterator rend(void)
void push_back(const elt_type &s)
std::list< elt_type >::iterator iterator
reverse_iterator rbegin(void)
std::list< elt_type >::const_reverse_iterator const_reverse_iterator
const elt_type & back(void) const
const_reverse_iterator rend(void) const
void push_front(const elt_type &s)
const_iterator begin(void) const
std::list< elt_type >::const_iterator const_iterator