Ark Server API (ASA) - Wiki
|
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. More...
#include <json.hpp>
Public Types | |
using | iterator_category = std::bidirectional_iterator_tag |
using | value_type = typename BasicJsonType::value_type |
the type of the values when the iterator is dereferenced | |
using | difference_type = typename BasicJsonType::difference_type |
a type to represent differences between iterators | |
using | pointer |
defines a pointer to the type iterated over (value_type) | |
using | reference |
defines a reference to the type iterated over (value_type) | |
Public Attributes | |
JSON_PRIVATE_UNLESS_TESTED | : void set_begin() noexcept { JSON_ASSERT(m_object != nullptr) |
JSON_PRIVATE_UNLESS_TESTED | : pointer m_object = nullptr |
internal_iterator< typename std::remove_const< BasicJsonType >::type > | m_it {} |
the actual iterator of the associated instance | |
Private Types | |
using | other_iter_impl = iter_impl<typename std::conditional<std::is_const<BasicJsonType>::value, typename std::remove_const<BasicJsonType>::type, const BasicJsonType>::type> |
the iterator with BasicJsonType of different const-ness | |
using | object_t = typename BasicJsonType::object_t |
using | array_t = typename BasicJsonType::array_t |
Private Attributes | |
friend | other_iter_impl |
allow basic_json to access private members | |
friend | BasicJsonType |
friend | iteration_proxy< iter_impl > |
friend | iteration_proxy_value< iter_impl > |
Friends | |
iter_impl | operator+ (difference_type i, const iter_impl &it) |
addition of distance and iterator | |
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.
|
private |
using nlohmann::detail::iter_impl< BasicJsonType >::difference_type = typename BasicJsonType::difference_type |
using nlohmann::detail::iter_impl< BasicJsonType >::iterator_category = std::bidirectional_iterator_tag |
The std::iterator class template (used as a base class to provide typedefs) is deprecated in C++17. The C++ Standard has never required user-defined iterators to derive from std::iterator. A user-defined iterator should provide publicly accessible typedefs named iterator_category, value_type, difference_type, pointer, and reference. Note that value_type is required to be non-const, even for constant iterators.
|
private |
|
private |
using nlohmann::detail::iter_impl< BasicJsonType >::pointer |
using nlohmann::detail::iter_impl< BasicJsonType >::reference |
using nlohmann::detail::iter_impl< BasicJsonType >::value_type = typename BasicJsonType::value_type |
|
default |
|
default |
|
defaultnoexcept |
|
inlineexplicitnoexcept |
|
inlinenoexcept |
const copy constructor
[in] | other | const iterator to copy from |
|
inlinenoexcept |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinenoexcept |
|
inlinenoexcept |
|
defaultnoexcept |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinenoexcept |
|
inline |
|
inline |
|
friend |
JSON_PRIVATE_UNLESS_TESTED nlohmann::detail::iter_impl< BasicJsonType >::__pad0__ |
JSON_PRIVATE_UNLESS_TESTED nlohmann::detail::iter_impl< BasicJsonType >::__pad1__ |
|
private |
|
private |
|
private |
internal_iterator<typename std::remove_const<BasicJsonType>::type> nlohmann::detail::iter_impl< BasicJsonType >::m_it {} |
|
private |
allow basic_json to access private members