AlgoPlus v0.1.0
Loading...
Searching...
No Matches
detail::json_reverse_iterator< Base > Class Template Reference

a template for a reverse iterator class More...

#include <json.hpp>

Inheritance diagram for detail::json_reverse_iterator< Base >:

Public Types

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 Member Functions

 json_reverse_iterator (const typename base_iterator::iterator_type &it) noexcept
 create reverse iterator from iterator
 json_reverse_iterator (const base_iterator &it) noexcept
 create reverse iterator from base class
json_reverse_iterator operator++ (int) &
 post-increment (it++)
json_reverse_iteratoroperator++ ()
 pre-increment (++it)
json_reverse_iterator operator-- (int) &
 post-decrement (it–)
json_reverse_iteratoroperator-- ()
 pre-decrement (–it)
json_reverse_iteratoroperator+= (difference_type i)
 add to iterator
json_reverse_iterator operator+ (difference_type i) const
 add to iterator
json_reverse_iterator operator- (difference_type i) const
 subtract from iterator
difference_type operator- (const json_reverse_iterator &other) const
 return difference
reference operator[] (difference_type n) const
 access to successor
auto key () const -> decltype(std::declval< Base >().key())
 return the key of an object iterator
reference value () const
 return the value of an iterator

Detailed Description

template<typename Base>
class detail::json_reverse_iterator< Base >

a template for a reverse iterator class

Template Parameters
Basethe base iterator type to reverse. Valid types are iterator (to create reverse_iterator) and const_iterator (to create const_reverse_iterator).

@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

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