Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

Subvector Class Template Reference

#include <subvector.h>

List of all members.


Detailed Description

template<typename Iterator, typename ConstIterator = Iterator>
class LinBox::Subvector< Iterator, ConstIterator >

Dense subvector class This class provides a statically sized subvector of a random access container (such as std::vector, deque). It does not work on sparse linbox vectors. It implements all of the types and methods of a std::vector except for those that invalidate iterators, i.e., those (potentially) involving vector resizing, such as push_back(), insert(), resize().


Public Types

typedef std::iterator_traits<
Iterator >::value_type 
value_type
typedef size_t size_type
typedef std::iterator_traits<
Iterator >::difference_type 
difference_type
typedef std::iterator_traits<
Iterator >::pointer 
pointer
typedef std::iterator_traits<
Iterator >::reference 
reference
typedef const reference const_reference
typedef Iterator iterator
typedef ConstIterator const_iterator
typedef std::reverse_iterator<
iterator
reverse_iterator
typedef std::reverse_iterator<
const_iterator
const_reverse_iterator

Public Methods

 Subvector ()
template<class Vector>  Subvector (Vector &v, size_type start, size_type stride, size_type length)
 Subvector (iterator begin, iterator end)
 Subvector (iterator begin, size_type length)
 Subvector (const Subvector &x)
 ~Subvector ()
iterator begin (void)
const_iterator begin (void) const
iterator end (void)
const_iterator end (void) const
reverse_iterator rbegin (void)
const_reverse_iterator rbegin (void) const
reverse_iterator rend (void)
const_reverse_iterator rend (void) const
reference operator[] (size_type n)
const_reference operator[] (size_type n) const
reference at (size_type n)
const_reference at (size_type n) const
reference front (void)
const_reference front (void) const
reference back (void)
const_reference back (void) const
template<class Container> Subvector & operator= (const Container &x)
template<class Iterator2, class ConstIterator2> Subvector & operator= (const Subvector< Iterator2, ConstIterator2 > &sub)
Subvector & operator= (const Subvector &sub)
size_type size (void) const
bool empty (void) const
size_type max_size (void) const
void swap (Subvector &x)

Protected Attributes

iterator _begin
iterator _end


Member Typedef Documentation

typedef ConstIterator const_iterator
 

typedef const reference const_reference
 

typedef std::reverse_iterator<const_iterator> const_reverse_iterator
 

typedef std::iterator_traits<Iterator>::difference_type difference_type
 

typedef Iterator iterator
 

typedef std::iterator_traits<Iterator>::pointer pointer
 

typedef std::iterator_traits<Iterator>::reference reference
 

typedef std::reverse_iterator<iterator> reverse_iterator
 

typedef size_t size_type
 

typedef std::iterator_traits<Iterator>::value_type value_type
 


Constructor & Destructor Documentation

Subvector   [inline]
 

Subvector Vector   v,
size_type    start,
size_type    stride,
size_type    length
[inline]
 

Subvector iterator    begin,
iterator    end
[inline]
 

Subvector iterator    begin,
size_type    length
[inline]
 

Subvector const Subvector< Iterator, ConstIterator > &    x [inline]
 

~Subvector   [inline]
 


Member Function Documentation

const_reference at size_type    n const [inline]
 

reference at size_type    n [inline]
 

const_reference back void    const [inline]
 

reference back void    [inline]
 

const_iterator begin void    const [inline]
 

iterator begin void    [inline]
 

bool empty void    const [inline]
 

const_iterator end void    const [inline]
 

iterator end void    [inline]
 

const_reference front void    const [inline]
 

reference front void    [inline]
 

size_type max_size void    const [inline]
 

Subvector& operator= const Subvector< Iterator, ConstIterator > &    sub [inline]
 

Subvector& operator= const Subvector< Iterator2, ConstIterator2 > &    sub [inline]
 

Subvector& operator= const Container &    x [inline]
 

assign the elements of Container one by one to *this. Container must be at least as long as this.

const_reference operator[] size_type    n const [inline]
 

reference operator[] size_type    n [inline]
 

const_reverse_iterator rbegin void    const [inline]
 

reverse_iterator rbegin void    [inline]
 

const_reverse_iterator rend void    const [inline]
 

reverse_iterator rend void    [inline]
 

size_type size void    const [inline]
 

void swap Subvector< Iterator, ConstIterator > &    x [inline]
 


Member Data Documentation

iterator _begin [protected]
 

iterator _end [protected]
 


Generated on Mon Jun 20 09:16:56 2005 for linbox by doxygen1.2.18