SpECTRE  v2024.05.11
stl_boilerplate Namespace Reference

Classes to generate repetitive code needed for STL compatibility. More...

Classes

class  RandomAccessIterator
 Base class to generate methods for a random-access iterator. This class takes the derived class and the (optionally const) value_type of the iterator. The exposed value_type alias will always be non-const, as required by the standard, but the template parameter's constness will affect the reference and pointer aliases. More...
 
class  RandomAccessSequence
 Base class to generate methods for a random-access sequence, similar to a std::array. More...
 

Functions

template<typename Iter , typename ValueType >
bool operator!= (const RandomAccessIterator< Iter, ValueType > &a, const RandomAccessIterator< Iter, ValueType > &b)
 
template<typename Iter , typename ValueType >
bool operator< (const RandomAccessIterator< Iter, ValueType > &a, const RandomAccessIterator< Iter, ValueType > &b)
 
template<typename Iter , typename ValueType >
bool operator> (const RandomAccessIterator< Iter, ValueType > &a, const RandomAccessIterator< Iter, ValueType > &b)
 
template<typename Iter , typename ValueType >
bool operator<= (const RandomAccessIterator< Iter, ValueType > &a, const RandomAccessIterator< Iter, ValueType > &b)
 
template<typename Iter , typename ValueType >
bool operator>= (const RandomAccessIterator< Iter, ValueType > &a, const RandomAccessIterator< Iter, ValueType > &b)
 
template<typename Iter , typename ValueType >
Iter operator+ (const RandomAccessIterator< Iter, ValueType > &a, const typename RandomAccessIterator< Iter, ValueType >::difference_type &n)
 
template<typename Iter , typename ValueType >
Iter operator+ (const typename RandomAccessIterator< Iter, ValueType >::difference_type &n, const RandomAccessIterator< Iter, ValueType > &a)
 
template<typename Iter , typename ValueType >
Iter operator- (const RandomAccessIterator< Iter, ValueType > &a, const typename RandomAccessIterator< Iter, ValueType >::difference_type &n)
 
template<typename Sequence , typename ValueType >
bool operator== (const RandomAccessSequence< Sequence, ValueType, true > &a, const RandomAccessSequence< Sequence, ValueType, true > &b)
 
template<typename Sequence , typename ValueType >
bool operator!= (const RandomAccessSequence< Sequence, ValueType, true > &a, const RandomAccessSequence< Sequence, ValueType, true > &b)
 
template<typename Sequence , typename ValueType >
bool operator< (const RandomAccessSequence< Sequence, ValueType, true > &a, const RandomAccessSequence< Sequence, ValueType, true > &b)
 
template<typename Sequence , typename ValueType >
bool operator> (const RandomAccessSequence< Sequence, ValueType, true > &a, const RandomAccessSequence< Sequence, ValueType, true > &b)
 
template<typename Sequence , typename ValueType >
bool operator<= (const RandomAccessSequence< Sequence, ValueType, true > &a, const RandomAccessSequence< Sequence, ValueType, true > &b)
 
template<typename Sequence , typename ValueType >
bool operator>= (const RandomAccessSequence< Sequence, ValueType, true > &a, const RandomAccessSequence< Sequence, ValueType, true > &b)
 

Detailed Description

Classes to generate repetitive code needed for STL compatibility.