|
|
| iter_impl (iter_impl &&) noexcept=default |
|
iter_impl & | operator= (iter_impl &&) noexcept=default |
| | 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
|
|
| switch (m_object->m_data.m_type) |
| void | set_end () noexcept |
| | set the iterator past the last value
|
| reference | operator* () const |
| | return a reference to the value pointed to by the iterator
|
| pointer | operator-> () const |
| | dereference the iterator
|
| iter_impl | operator++ (int) & |
| | post-increment (it++)
|
| iter_impl & | operator++ () |
| | pre-increment (++it)
|
| iter_impl | operator-- (int) & |
| | post-decrement (it–)
|
| iter_impl & | operator-- () |
| | pre-decrement (–it)
|
| template<typename IterImpl, detail::enable_if_t<(std::is_same< IterImpl, iter_impl >::value||std::is_same< IterImpl, other_iter_impl >::value), std::nullptr_t > = nullptr> |
| bool | operator== (const IterImpl &other) const |
| | comparison: equal
|
| template<typename IterImpl, detail::enable_if_t<(std::is_same< IterImpl, iter_impl >::value||std::is_same< IterImpl, other_iter_impl >::value), std::nullptr_t > = nullptr> |
| bool | operator!= (const IterImpl &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
|
template<typename BasicJsonType>
class detail::iter_impl< BasicJsonType >
a template for a bidirectional iterator for the basic_json class This class implements a both iterators (iterator and const_iterator) for the basic_json class.
- 注解
- An iterator is called initialized when a pointer to a JSON value has been set (e.g., by a constructor or a copy assignment). If the iterator is default-constructed, it is uninitialized and most methods are undefined. The library uses assertions to detect calls on uninitialized iterators.** @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).
- 自从
- version 1.0.0, simplified in version 2.0.9, change to bidirectional iterators in version 3.0.0 (see https://github.com/nlohmann/json/issues/593)