OpenMoHAA ..
Loading...
Searching...
No Matches
nlohmann::detail::iter_impl< BasicJsonType > Class Template Reference

Public Types

using value_type = typename BasicJsonType::value_type
using difference_type = typename BasicJsonType::difference_type

Public Member Functions

*defines a pointer to the type iterated over (value_type) using pointer
*defines a reference to the type iterated over (value_type) using reference
 iter_impl (pointer object) noexcept
 constructor for a given JSON instance
 iter_impl (const iter_impl< const BasicJsonType > &other) noexcept
 const copy constructor
iter_impl & operator= (const iter_impl< const BasicJsonType > &other) noexcept
 converting assignment
 iter_impl (const iter_impl< typename std::remove_const< BasicJsonType >::type > &other) noexcept
 converting constructor
iter_impl & operator= (const iter_impl< typename std::remove_const< BasicJsonType >::type > &other) noexcept
 converting assignment
reference operator* () const
 return a reference to the value pointed to by the iterator
pointer operator-> () const
 dereference the iterator
iter_impl const operator++ (int)
 post-increment (it++)
iter_impl & operator++ ()
 pre-increment (++it)
iter_impl const operator-- (int)
 post-decrement (it–)
iter_impl & operator-- ()
 pre-decrement (–it)
bool operator== (const iter_impl &other) const
 comparison: equal
bool operator!= (const iter_impl &other) const
 comparison: not equal
bool operator< (const iter_impl &other) const
 comparison: smaller
bool operator<= (const iter_impl &other) const
 comparison: less than or equal
bool operator> (const iter_impl &other) const
 comparison: greater than
bool operator>= (const iter_impl &other) const
 comparison: greater than or equal
iter_impl & operator+= (difference_type i)
 add to iterator
iter_impl & operator-= (difference_type i)
 subtract from iterator
iter_impl operator+ (difference_type i) const
 add to iterator
iter_impl operator- (difference_type i) const
 subtract from iterator
difference_type operator- (const iter_impl &other) const
 return difference
reference operator[] (difference_type n) const
 access to successor
const object_t::key_type & key () const
 return the key of an object iterator
reference value () const
 return the value of an iterator

Friends

iter_impl operator+ (difference_type i, const iter_impl &it)
 addition of distance and iterator

Constructor & Destructor Documentation

◆ iter_impl() [1/3]

template<typename BasicJsonType>
nlohmann::detail::iter_impl< BasicJsonType >::iter_impl ( pointer object)
inlineexplicitnoexcept

constructor for a given JSON instance

Parameters
[in]objectpointer to a JSON object for this iterator
Precondition
object != nullptr
Postcondition
The iterator is initialized; i.e. m_object != nullptr.

◆ iter_impl() [2/3]

template<typename BasicJsonType>
nlohmann::detail::iter_impl< BasicJsonType >::iter_impl ( const iter_impl< const BasicJsonType > & other)
inlinenoexcept

const copy constructor

Note
The conventional copy constructor and copy assignment are implicitly defined. Combined with the following converting constructor and assignment, they support: (1) copy from iterator to iterator, (2) copy from const iterator to const iterator, and (3) conversion from iterator to const iterator. However conversion from const iterator to iterator is not defined.
Parameters
[in]otherconst iterator to copy from
Note
This copy constructor had to be defined explicitly to circumvent a bug occurring on msvc v19.0 compiler (VS 2015) debug build. For more information refer to: https://github.com/nlohmann/json/issues/1608

◆ iter_impl() [3/3]

template<typename BasicJsonType>
nlohmann::detail::iter_impl< BasicJsonType >::iter_impl ( const iter_impl< typename std::remove_const< BasicJsonType >::type > & other)
inlinenoexcept

converting constructor

Parameters
[in]othernon-const iterator to copy from
Note
It is not checked whether other is initialized.

Member Function Documentation

◆ key()

template<typename BasicJsonType>
const object_t::key_type & nlohmann::detail::iter_impl< BasicJsonType >::key ( ) const
inline

return the key of an object iterator

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator!=()

template<typename BasicJsonType>
bool nlohmann::detail::iter_impl< BasicJsonType >::operator!= ( const iter_impl< BasicJsonType > & other) const
inline

comparison: not equal

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator*()

template<typename BasicJsonType>
reference nlohmann::detail::iter_impl< BasicJsonType >::operator* ( ) const
inline

return a reference to the value pointed to by the iterator

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator+()

template<typename BasicJsonType>
iter_impl nlohmann::detail::iter_impl< BasicJsonType >::operator+ ( difference_type i) const
inline

add to iterator

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator++() [1/2]

template<typename BasicJsonType>
iter_impl & nlohmann::detail::iter_impl< BasicJsonType >::operator++ ( )
inline

pre-increment (++it)

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator++() [2/2]

template<typename BasicJsonType>
iter_impl const nlohmann::detail::iter_impl< BasicJsonType >::operator++ ( int )
inline

post-increment (it++)

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator+=()

template<typename BasicJsonType>
iter_impl & nlohmann::detail::iter_impl< BasicJsonType >::operator+= ( difference_type i)
inline

add to iterator

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator-() [1/2]

template<typename BasicJsonType>
difference_type nlohmann::detail::iter_impl< BasicJsonType >::operator- ( const iter_impl< BasicJsonType > & other) const
inline

return difference

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator-() [2/2]

template<typename BasicJsonType>
iter_impl nlohmann::detail::iter_impl< BasicJsonType >::operator- ( difference_type i) const
inline

subtract from iterator

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator--() [1/2]

template<typename BasicJsonType>
iter_impl & nlohmann::detail::iter_impl< BasicJsonType >::operator-- ( )
inline

pre-decrement (–it)

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator--() [2/2]

template<typename BasicJsonType>
iter_impl const nlohmann::detail::iter_impl< BasicJsonType >::operator-- ( int )
inline

post-decrement (it–)

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator-=()

template<typename BasicJsonType>
iter_impl & nlohmann::detail::iter_impl< BasicJsonType >::operator-= ( difference_type i)
inline

subtract from iterator

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator->()

template<typename BasicJsonType>
pointer nlohmann::detail::iter_impl< BasicJsonType >::operator-> ( ) const
inline

dereference the iterator

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator<()

template<typename BasicJsonType>
bool nlohmann::detail::iter_impl< BasicJsonType >::operator< ( const iter_impl< BasicJsonType > & other) const
inline

comparison: smaller

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator<=()

template<typename BasicJsonType>
bool nlohmann::detail::iter_impl< BasicJsonType >::operator<= ( const iter_impl< BasicJsonType > & other) const
inline

comparison: less than or equal

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator=() [1/2]

template<typename BasicJsonType>
iter_impl & nlohmann::detail::iter_impl< BasicJsonType >::operator= ( const iter_impl< const BasicJsonType > & other)
inlinenoexcept

converting assignment

Parameters
[in]otherconst iterator to copy from
Returns
const/non-const iterator
Note
It is not checked whether other is initialized.

◆ operator=() [2/2]

template<typename BasicJsonType>
iter_impl & nlohmann::detail::iter_impl< BasicJsonType >::operator= ( const iter_impl< typename std::remove_const< BasicJsonType >::type > & other)
inlinenoexcept

converting assignment

Parameters
[in]othernon-const iterator to copy from
Returns
const/non-const iterator
Note
It is not checked whether other is initialized.

◆ operator==()

template<typename BasicJsonType>
bool nlohmann::detail::iter_impl< BasicJsonType >::operator== ( const iter_impl< BasicJsonType > & other) const
inline

comparison: equal

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator>()

template<typename BasicJsonType>
bool nlohmann::detail::iter_impl< BasicJsonType >::operator> ( const iter_impl< BasicJsonType > & other) const
inline

comparison: greater than

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator>=()

template<typename BasicJsonType>
bool nlohmann::detail::iter_impl< BasicJsonType >::operator>= ( const iter_impl< BasicJsonType > & other) const
inline

comparison: greater than or equal

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator[]()

template<typename BasicJsonType>
reference nlohmann::detail::iter_impl< BasicJsonType >::operator[] ( difference_type n) const
inline

access to successor

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ value()

template<typename BasicJsonType>
reference nlohmann::detail::iter_impl< BasicJsonType >::value ( ) const
inline

return the value of an iterator

Precondition
The iterator is initialized; i.e. m_object != nullptr.

◆ operator+

template<typename BasicJsonType>
iter_impl operator+ ( difference_type i,
const iter_impl< BasicJsonType > & it )
friend

addition of distance and iterator

Precondition
The iterator is initialized; i.e. m_object != nullptr.

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