Seq< C, R > Struct Template Reference

List of all members.

Detailed Description

template<class C, class R = std::vector<C>>
struct Seq< C, R >

Sequence of terms with reference counter.

It allows to use it as output of other functions. The container R should have the following signatures:

  typename R::size_type;
  typename R::iterator;
  typename R::const_iterator;
  typename R::reverse_iterator;
  typename R::const_reverse_iterator;

        C begin();
        C end();
        C rbegin();
        C rend();

        C& operator[] (size_type);
  const C& operator[] (size_type) const;

Definition at line 42 of file Seq.h.

Public Types

typedef R::size_type size_type
typedef C value_type
typedef R::iterator iterator
typedef R::const_iterator const_iterator
typedef R::reverse_iterator reverse_iterator
typedef R::const_reverse_iterator const_reverse_iterator
typedef Seq< C, R > self_t

Public Member Functions

R & rep ()
const R & rep () const
 Seq ()
 Seq (const R &r)
 Seq (size_type s)
 Seq (size_type s, value_type *t)
 Seq (iterator b, iterator e)
 Seq (size_type m, const char *str)
 Seq (char *str)
 Seq (const self_t &r)
template<class X, class S>
 Seq (const Seq< X, S > &P)
iterator begin ()
iterator end ()
const_iterator begin () const
const_iterator end () const
reverse_iterator rbegin ()
reverse_iterator rend ()
const_reverse_iterator rbegin () const
const_reverse_iterator rend () const
self_toperator= (const self_t &V)
template<class X, class S>
self_toperator= (const Seq< X, S > &V)
value_typeoperator[] (size_type i)
value_type operator[] (size_type i) const
Seq< value_type, seq1d< value_type,
iterator > > 
operator[] (const Range &I)
self_tpush_back (const C &x)
size_type size () const
bool empty () const
void resize (size_type i)
self_t operator, (const self_t &x) const
 Concatenate two sequences.
self_t operator, (const C &x) const
 Concatenate an element at the end of the sequence.
self_t operator<< (const self_t &s)
 ~Seq ()

Public Attributes

shared_object< R > data

Member Function Documentation

template<class C, class R = std::vector<C>>
self_t Seq< C, R >::operator, ( const self_t x  )  const

Concatenate two sequences.

template<class C, class R>
Seq< C, R > Seq< C, R >::operator, ( const C &  x  )  const

Concatenate an element at the end of the sequence.

Definition at line 129 of file Seq.h.

References Seq< C, R >::push_back(), and Seq< C, R >::rep().

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