|
JSON for Modern C++ 2.1.1
|
a template for a random access iterator for the basic_json class More...
#include <json.hpp>
Public Types | |
| using | difference_type = typename basic_json::difference_type |
| a type to represent differences between iterators | |
| using | iterator_category = std::bidirectional_iterator_tag |
| the category of the iterator | |
| using | pointer = typename std::conditional< std::is_const< U >::value, typename basic_json::const_pointer, typename basic_json::pointer >::type |
| defines a pointer to the type iterated over (value_type) | |
| using | reference = typename std::conditional< std::is_const< U >::value, typename basic_json::const_reference, typename basic_json::reference >::type |
| defines a reference to the type iterated over (value_type) | |
| using | value_type = typename basic_json::value_type |
| the type of the values when the iterator is dereferenced | |
Public Member Functions | |
| iter_impl ()=default | |
| default constructor | |
| iter_impl (const iter_impl &other) noexcept | |
| copy constructor | |
| iter_impl (pointer object) noexcept | |
| constructor for a given JSON instance | |
| object_t::key_type | key () const |
| return the key of an object iterator | |
| operator const_iterator () const | |
| bool | operator!= (const iter_impl &other) const |
| comparison: not equal | |
| reference | operator* () const |
| return a reference to the value pointed to by the iterator | |
| iter_impl | operator+ (difference_type i) |
| add to iterator | |
| iter_impl & | operator++ () |
| pre-increment (++it) | |
| iter_impl | operator++ (int) |
| post-increment (it++) | |
| iter_impl & | operator+= (difference_type i) |
| add to iterator | |
| difference_type | operator- (const iter_impl &other) const |
| return difference | |
| iter_impl | operator- (difference_type i) |
| subtract from iterator | |
| iter_impl & | operator-- () |
| pre-decrement (–it) | |
| iter_impl | operator-- (int) |
| post-decrement (it–) | |
| iter_impl & | operator-= (difference_type i) |
| subtract from iterator | |
| pointer | operator-> () const |
| dereference the iterator | |
| bool | operator< (const iter_impl &other) const |
| comparison: smaller | |
| bool | operator<= (const iter_impl &other) const |
| comparison: less than or equal | |
| iter_impl & | operator= (iter_impl other) noexcept(std::is_nothrow_move_constructible< pointer >::value and std::is_nothrow_move_assignable< pointer >::value and std::is_nothrow_move_constructible< internal_iterator >::value and std::is_nothrow_move_assignable< internal_iterator >::value) |
| copy assignment | |
| bool | operator== (const iter_impl &other) const |
| comparison: equal | |
| bool | operator> (const iter_impl &other) const |
| comparison: greater than | |
| bool | operator>= (const iter_impl &other) const |
| comparison: greater than or equal | |
| reference | operator[] (difference_type n) const |
| access to successor | |
| reference | value () const |
| return the value of an iterator | |
Friends | |
| class | basic_json |
| allow basic_json to access private members | |
This class implements a both iterators (iterator and const_iterator) for the basic_json class.