28#ifndef CASA_VECTORSTLITERATOR_2_H
29#define CASA_VECTORSTLITERATOR_2_H
65template <
typename T,
typename Alloc=std::allocator<T>>
67:
public std::iterator<std::random_access_iterator_tag, T> {
83 :
start_p(const_cast<T*>(c.data())),
85 iter_p (const_cast<T*>(c.data()))
129 return iter_p == other.iter_p; };
131 return iter_p != other.iter_p; };
133 return iter_p < other.iter_p; };
const_reference operator[](size_t i) const
const value_type & const_reference
reference operator[](size_t i)
Access.
difference_type step_p
Distance between elements.
bool operator!=(const iterator other) const
const iterator & operator++()
Manipulation.
pointer const start_p
Start (for random indexing)
VectorSTLIterator(const typename Array< T, Alloc >::IteratorSTL &c)
difference_type operator-(const VectorSTLIterator< T, Alloc > &x) const
Size related.
iterator operator+(difference_type i) const
const VectorSTLIterator< T > const_iterator
ptrdiff_t difference_type
VectorSTLIterator< T > iterator
const value_type * const_pointer
VectorSTLIterator(const Vector< T, Alloc > &c)
Constructors.
iterator & operator+=(difference_type i)
pointer iter_p
Current element pointer.
const_reference operator*() const
iterator operator-(difference_type i) const
bool operator==(const iterator &other) const
Comparisons.
iterator & operator-=(difference_type i)
this file contains all the compiler specific defines
LatticeExprNode max(const LatticeExprNode &left, const LatticeExprNode &right)
Define real & complex conjugation for non-complex types and put comparisons into std namespace.