Template Class json_reverse_iterator
Defined in File json.hpp
Inheritance Relationships
Base Types
public std::reverse_iterator< Base >
public std::reverse_iterator< Base >
Class Documentation
-
template<typename Base>
class json_reverse_iterator : public std::reverse_iterator<Base>, public std::reverse_iterator<Base> a template for a reverse iterator class
@requirement The class satisfies the following concept requirements:
BidirectionalIterator: The iterator that can be moved can be moved in both directions (i.e. incremented and decremented).
OutputIterator: It is possible to write to the pointed-to element (only if Base is iterator).
- Since
version 1.0.0
- Template Parameters:
Base – the base iterator type to reverse. Valid types are iterator (to create reverse_iterator) and const_iterator (to create const_reverse_iterator).
Public Types
-
using difference_type = std::ptrdiff_t
-
using difference_type = std::ptrdiff_t
-
using base_iterator = std::reverse_iterator<Base>
shortcut to the reverse iterator adapter
-
using reference = typename Base::reference
the reference type for the pointed-to element
Public Functions
-
inline explicit json_reverse_iterator(const typename base_iterator::iterator_type &it) noexcept
create reverse iterator from iterator
-
inline explicit json_reverse_iterator(const base_iterator &it) noexcept
create reverse iterator from base class
-
inline json_reverse_iterator const operator++(int)
post-increment (it++)
-
inline json_reverse_iterator &operator++()
pre-increment (++it)
-
inline json_reverse_iterator const operator--(int)
post-decrement (it—)
-
inline json_reverse_iterator &operator--()
pre-decrement (—it)
-
inline json_reverse_iterator &operator+=(difference_type i)
add to iterator
-
inline json_reverse_iterator operator+(difference_type i) const
add to iterator
-
inline json_reverse_iterator operator-(difference_type i) const
subtract from iterator
-
inline difference_type operator-(const json_reverse_iterator &other) const
return difference
-
inline reference operator[](difference_type n) const
access to successor
-
inline auto key() const -> decltype(std::declval<Base>().key())
return the key of an object iterator
-
inline explicit json_reverse_iterator(const typename base_iterator::iterator_type &it) noexcept
create reverse iterator from iterator
-
inline explicit json_reverse_iterator(const base_iterator &it) noexcept
create reverse iterator from base class
-
inline json_reverse_iterator const operator++(int)
post-increment (it++)
-
inline json_reverse_iterator &operator++()
pre-increment (++it)
-
inline json_reverse_iterator const operator--(int)
post-decrement (it—)
-
inline json_reverse_iterator &operator--()
pre-decrement (—it)
-
inline json_reverse_iterator &operator+=(difference_type i)
add to iterator
-
inline json_reverse_iterator operator+(difference_type i) const
add to iterator
-
inline json_reverse_iterator operator-(difference_type i) const
subtract from iterator
-
inline difference_type operator-(const json_reverse_iterator &other) const
return difference
-
inline reference operator[](difference_type n) const
access to successor
-
inline auto key() const -> decltype(std::declval<Base>().key())
return the key of an object iterator
-
inline reference value() const
return the value of an iterator