linbox
ReverseVector< Vector > Class Template Reference

Reverse vector class This class wraps an existing vector type and reverses its direction. More...

#include <reverse.h>

Public Types

typedef Vector::value_type value_type
 
typedef Vector::size_type size_type
 
typedef Vector::difference_type difference_type
 
typedef Vector::pointer pointer
 
typedef Vector::reference reference
 
typedef Vector::const_reference const_reference
 
typedef Vector::reverse_iterator iterator
 
typedef Vector::const_reverse_iterator const_iterator
 
typedef Vector::iterator reverse_iterator
 
typedef Vector::const_iterator const_reverse_iterator
 

Public Member Functions

 ReverseVector (Vector &v)
 
 ReverseVector (const ReverseVector< Vector > &v)
 
 ~ReverseVector ()
 
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>
ReverseVectoroperator= (const Container &x)
 assign the elements of Container one by one to *this.
 
size_type size (void) const
 
bool empty (void) const
 
size_type max_size (void) const
 

Protected Attributes

Vector_v
 

Detailed Description

template<class Vector>
class LinBox::ReverseVector< Vector >

Reverse vector class This class wraps an existing vector type and reverses its direction.

It is used as an adaptor to allow VectorDomain dot products to be used for the Massy implementation.

Member Typedef Documentation

◆ value_type

template<class Vector>
typedef Vector::value_type value_type

◆ size_type

template<class Vector>
typedef Vector::size_type size_type

◆ difference_type

template<class Vector>
typedef Vector::difference_type difference_type

◆ pointer

template<class Vector>
typedef Vector::pointer pointer

◆ reference

template<class Vector>
typedef Vector::reference reference

◆ const_reference

template<class Vector>
typedef Vector::const_reference const_reference

◆ iterator

template<class Vector>
typedef Vector::reverse_iterator iterator

◆ const_iterator

template<class Vector>
typedef Vector::const_reverse_iterator const_iterator

◆ reverse_iterator

template<class Vector>
typedef Vector::iterator reverse_iterator

◆ const_reverse_iterator

template<class Vector>
typedef Vector::const_iterator const_reverse_iterator

Constructor & Destructor Documentation

◆ ReverseVector() [1/2]

template<class Vector>
ReverseVector ( Vector & v)
inline

◆ ReverseVector() [2/2]

template<class Vector>
ReverseVector ( const ReverseVector< Vector > & v)
inline

◆ ~ReverseVector()

template<class Vector>
~ReverseVector ( )
inline

Member Function Documentation

◆ begin() [1/2]

template<class Vector>
iterator begin ( void )
inline

◆ begin() [2/2]

template<class Vector>
const_iterator begin ( void ) const
inline

◆ end() [1/2]

template<class Vector>
iterator end ( void )
inline

◆ end() [2/2]

template<class Vector>
const_iterator end ( void ) const
inline

◆ rbegin() [1/2]

template<class Vector>
reverse_iterator rbegin ( void )
inline

◆ rbegin() [2/2]

template<class Vector>
const_reverse_iterator rbegin ( void ) const
inline

◆ rend() [1/2]

template<class Vector>
reverse_iterator rend ( void )
inline

◆ rend() [2/2]

template<class Vector>
const_reverse_iterator rend ( void ) const
inline

◆ operator[]() [1/2]

template<class Vector>
reference operator[] ( size_type n)
inline

◆ operator[]() [2/2]

template<class Vector>
const_reference operator[] ( size_type n) const
inline

◆ at() [1/2]

template<class Vector>
reference at ( size_type n)
inline

◆ at() [2/2]

template<class Vector>
const_reference at ( size_type n) const
inline

◆ front() [1/2]

template<class Vector>
reference front ( void )
inline

◆ front() [2/2]

template<class Vector>
const_reference front ( void ) const
inline

◆ back() [1/2]

template<class Vector>
reference back ( void )
inline

◆ back() [2/2]

template<class Vector>
const_reference back ( void ) const
inline

◆ operator=()

template<class Vector>
template<class Container>
ReverseVector & operator= ( const Container & x)
inline

assign the elements of Container one by one to *this.

Container must be at least as long as this.

◆ size()

template<class Vector>
size_type size ( void ) const
inline

◆ empty()

template<class Vector>
bool empty ( void ) const
inline

◆ max_size()

template<class Vector>
size_type max_size ( void ) const
inline

Field Documentation

◆ _v

template<class Vector>
Vector& _v
protected

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