libMVRgdtf e5d999f
A library for GDTF and MVR
Loading...
Searching...
No Matches
nlohmann::detail::json_reverse_iterator< Base > Class Template Reference

a template for a reverse iterator class More...

#include <json.h>

Inheritance diagram for nlohmann::detail::json_reverse_iterator< Base >:

Public Types

using difference_type = std::ptrdiff_t
using base_iterator = std::reverse_iterator<Base>
using reference = typename Base::reference

Public Member Functions

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

Detailed Description

template<typename Base>
class nlohmann::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

Member Typedef Documentation

◆ base_iterator

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

◆ difference_type

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

◆ reference

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

Constructor & Destructor Documentation

◆ json_reverse_iterator() [1/2]

template<typename Base>
*create reverse iterator from iterator nlohmann::detail::json_reverse_iterator< Base >::json_reverse_iterator ( const typename base_iterator::iterator_type & it)
inlineexplicitnoexcept

◆ json_reverse_iterator() [2/2]

template<typename Base>
*create reverse iterator from base class explicit nlohmann::detail::json_reverse_iterator< Base >::json_reverse_iterator ( const base_iterator & it)
inlinenoexcept

Member Function Documentation

◆ decrement() [1/2]

template<typename Base>
*pre nlohmann::detail::json_reverse_iterator< Base >::decrement ( -- it) &
inline

◆ decrement() [2/2]

template<typename Base>
*post nlohmann::detail::json_reverse_iterator< Base >::decrement ( it-- ) const
inline

◆ increment() [1/2]

template<typename Base>
*pre nlohmann::detail::json_reverse_iterator< Base >::increment ( ++ it) &
inline

◆ increment() [2/2]

template<typename Base>
*post nlohmann::detail::json_reverse_iterator< Base >::increment ( it++ ) const
inline

◆ key()

template<typename Base>
*return the key of an object iterator auto nlohmann::detail::json_reverse_iterator< Base >::key ( ) const->decltype(std::declval< Base >().key())
inline

◆ operator+()

template<typename Base>
*add to iterator json_reverse_iterator nlohmann::detail::json_reverse_iterator< Base >::operator+ ( difference_type i) const
inline

◆ operator+=()

template<typename Base>
*add to iterator json_reverse_iterator & nlohmann::detail::json_reverse_iterator< Base >::operator+= ( difference_type i)
inline

◆ operator-() [1/2]

template<typename Base>
*return difference difference_type nlohmann::detail::json_reverse_iterator< Base >::operator- ( const json_reverse_iterator< Base > & other) const
inline

◆ operator-() [2/2]

template<typename Base>
*subtract from iterator json_reverse_iterator nlohmann::detail::json_reverse_iterator< Base >::operator- ( difference_type i) const
inline

◆ operator[]()

template<typename Base>
*access to successor reference nlohmann::detail::json_reverse_iterator< Base >::operator[] ( difference_type n) const
inline

◆ value()

template<typename Base>
*return the value of an iterator reference nlohmann::detail::json_reverse_iterator< Base >::value ( ) const
inline

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