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 std::size_t
size (
void)
const {
return m_lst.size (); }
53 std::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) { }
std::list< elt_type > m_lst
std::list< elt_type >::const_reverse_iterator const_reverse_iterator
const elt_type & back(void) const
void push_back(const elt_type &s)
reverse_iterator rend(void)
std::size_t size(void) const
base_list(const base_list &bl)=default
reverse_iterator rbegin(void)
void append(const elt_type &s)
std::list< elt_type >::const_iterator const_iterator
void push_front(const elt_type &s)
std::list< elt_type >::reverse_iterator reverse_iterator
const_iterator end(void) const
base_list(const std::list< elt_type > &l)
std::size_t length(void) const
const_reverse_iterator rbegin(void) const
const_iterator begin(void) const
const elt_type & front(void) const
const_reverse_iterator rend(void) const
virtual ~base_list(void)=default
std::list< elt_type >::iterator iterator
iterator erase(iterator pos)
OCTAVE_BEGIN_NAMESPACE(octave) static octave_value daspk_fcn