nCine  2025.04.r498-9d36345
A cross-platform 2D game engine
Public Types | Public Member Functions | Friends | List of all members
nctl::ReverseIterator< Iterator > Class Template Reference

A generic reverse iterator. More...

#include <ReverseIterator.h>

Public Types

using Pointer = typename IteratorTraits< Iterator >::Pointer
 Pointer type which respects iterator constness.
 
using Reference = typename IteratorTraits< Iterator >::Reference
 Reference type which respects iterator constness.
 

Public Member Functions

 ReverseIterator (Iterator it)
 
template<typename Iter >
 ReverseIterator (const ReverseIterator< Iter > &reverseIt)
 Converting constructor between compatible reverse iterators.
 
Reference operator* () const
 Deferencing operator.
 
ReverseIteratoroperator++ ()
 Iterates to the next element (reversed prefix)
 
ReverseIterator operator++ (int)
 Iterates to the next element (reversed postfix)
 
ReverseIteratoroperator-- ()
 Iterates to the previous element (reversed prefix)
 
ReverseIterator operator-- (int)
 Iterates to the previous element (reversed postfix)
 
ReverseIteratoroperator+= (int n)
 Compound addition operator (reversed)
 
ReverseIteratoroperator-= (int n)
 Compound subtraction operator (reversed)
 
ReverseIterator operator+ (int n) const
 Addition operator (reversed)
 
ReverseIterator operator- (int n) const
 Subtraction operator (reversed)
 
Reference operator[] (int n) const
 Subscript operator.
 
Iterator base () const
 Returns the base iterator.
 

Friends

int operator- (const ReverseIterator &lhs, const ReverseIterator &rhs)
 Pointer subtraction operator (reversed)
 
template<typename Iter >
int operator- (const ReverseIterator &lhs, const ReverseIterator< Iter > &rhs)
 Pointer subtraction operator for compatible reverse iterators (reversed)
 
bool operator== (const ReverseIterator &lhs, const ReverseIterator &rhs)
 Equality operator.
 
template<typename Iter >
bool operator== (const ReverseIterator &lhs, const ReverseIterator< Iter > &rhs)
 Equality operator for compatible reverse iterators.
 
bool operator!= (const ReverseIterator &lhs, const ReverseIterator &rhs)
 Inequality operator.
 
template<typename Iter >
bool operator!= (const ReverseIterator &lhs, const ReverseIterator< Iter > &rhs)
 Inequality operator for compatible reverse iterators.
 
bool operator> (const ReverseIterator &lhs, const ReverseIterator &rhs)
 Greater than operator (reversed)
 
template<typename Iter >
bool operator> (const ReverseIterator &lhs, const ReverseIterator< Iter > &rhs)
 Greater than operator for compatible reverse iterators (reversed)
 
bool operator< (const ReverseIterator &lhs, const ReverseIterator &rhs)
 Less than operator (reversed)
 
template<typename Iter >
bool operator< (const ReverseIterator &lhs, const ReverseIterator< Iter > &rhs)
 Less than operator for compatible reverse iterators (reversed)
 
bool operator>= (const ReverseIterator &lhs, const ReverseIterator &rhs)
 Greater than or equal to operator (reversed)
 
template<typename Iter >
bool operator>= (const ReverseIterator &lhs, const ReverseIterator< Iter > &rhs)
 Greater than or equal to operator for compatible reverse iterators (reversed)
 
bool operator<= (const ReverseIterator &lhs, const ReverseIterator &rhs)
 Less than or equal to operator (reversed)
 
template<typename Iter >
bool operator<= (const ReverseIterator &lhs, const ReverseIterator< Iter > &rhs)
 Less than or equal to operator for compatible reverse iterators (reversed)
 

Detailed Description

template<class Iterator>
class nctl::ReverseIterator< Iterator >

A generic reverse iterator.


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