nlohmann::detail::json_reverse_iterator< Base > Class Template Reference

a template for a reverse iterator class More...

`#include <json.hpp>`

Inheritance diagram for nlohmann::detail::json_reverse_iterator< Base >:
Collaboration diagram for nlohmann::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 More...
using | reference = typename Base::reference
| the reference type for the pointed-to element More...

## Public Member Functions

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

## Detailed Description

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

a template for a reverse iterator class

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).

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

Definition at line 11993 of file json.hpp.

## Member Typedef Documentation

## base_iterator

template<typename Base >

using nlohmann::detail::json_reverse_iterator< Base >::base_iterator = std::reverse_iterator<Base>

shortcut to the reverse iterator adapter

Definition at line 11998 of file json.hpp.

## difference_type

template<typename Base >

using nlohmann::detail::json_reverse_iterator< Base >::difference_type = std::ptrdiff_t

Definition at line 11996 of file json.hpp.

## reference

template<typename Base >

using nlohmann::detail::json_reverse_iterator< Base >::reference = typename Base::reference

the reference type for the pointed-to element

Definition at line 12000 of file json.hpp.

## Constructor & Destructor Documentation

## json_reverse_iterator() [1/2]

template<typename Base >

nlohmann::detail::json_reverse_iterator< Base >::json_reverse_iterator | ( | const typename base_iterator::iterator_type & | it | ) |

inlineexplicitnoexcept

create reverse iterator from iterator

Definition at line 12003 of file json.hpp.

## json_reverse_iterator() [2/2]

template<typename Base >

nlohmann::detail::json_reverse_iterator< Base >::json_reverse_iterator | ( | const base_iterator & | it | ) |

inlineexplicitnoexcept

create reverse iterator from base class

Definition at line 12007 of file json.hpp.

## Member Function Documentation

## key()

template<typename Base >

auto nlohmann::detail::json_reverse_iterator< Base >::key | ( |  | ) | const -> decltype(std::declval<Base>().key())

inline

return the key of an object iterator

Definition at line 12064 of file json.hpp.

## operator+()

template<typename Base >

json_reverse_iterator nlohmann::detail::json_reverse_iterator< Base >::operator+ | ( | difference_type | i | ) | const

inline

add to iterator

Definition at line 12040 of file json.hpp.

## operator++() [1/2]

template<typename Base >

json_reverse_iterator const nlohmann::detail::json_reverse_iterator< Base >::operator++ | ( | int |  | ) |

inline

post-increment (it++)

Definition at line 12010 of file json.hpp.

## operator++() [2/2]

template<typename Base >

json_reverse_iterator& nlohmann::detail::json_reverse_iterator< Base >::operator++ | ( |  | ) |

inline

pre-increment (++it)

Definition at line 12016 of file json.hpp.

## operator+=()

template<typename Base >

json_reverse_iterator& nlohmann::detail::json_reverse_iterator< Base >::operator+= | ( | difference_type | i | ) |

inline

add to iterator

Definition at line 12034 of file json.hpp.

## operator-() [1/2]

template<typename Base >

json_reverse_iterator nlohmann::detail::json_reverse_iterator< Base >::operator- | ( | difference_type | i | ) | const

inline

subtract from iterator

Definition at line 12046 of file json.hpp.

## operator-() [2/2]

template<typename Base >

difference_type nlohmann::detail::json_reverse_iterator< Base >::operator- | ( | const json_reverse_iterator< Base > & | other | ) | const

inline

return difference

Definition at line 12052 of file json.hpp.

## operator--() [1/2]

template<typename Base >

json_reverse_iterator const nlohmann::detail::json_reverse_iterator< Base >::operator-- | ( | int |  | ) |

inline

post-decrement (it–)

Definition at line 12022 of file json.hpp.

## operator--() [2/2]

template<typename Base >

json_reverse_iterator& nlohmann::detail::json_reverse_iterator< Base >::operator-- | ( |  | ) |

inline

pre-decrement (–it)

Definition at line 12028 of file json.hpp.

## operator[]()

template<typename Base >

reference nlohmann::detail::json_reverse_iterator< Base >::operator[] | ( | difference_type | n | ) | const

inline

access to successor

Definition at line 12058 of file json.hpp.

## value()

template<typename Base >

reference nlohmann::detail::json_reverse_iterator< Base >::value | ( |  | ) | const

inline

return the value of an iterator

Definition at line 12071 of file json.hpp.

References NLOHMANN_BASIC_JSON_TPL_DECLARATION.

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

- json.hpp