Template Class iteration_proxy_value
Defined in File json.hpp
Class Documentation
-
template<typename IteratorType>
class iteration_proxy_value Public Types
-
using difference_type = std::ptrdiff_t
-
using value_type = iteration_proxy_value
-
using pointer = value_type*
-
using reference = value_type&
-
using iterator_category = std::input_iterator_tag
-
using string_type = typename std::remove_cv<typename std::remove_reference<decltype(std::declval<IteratorType>().key())>::type>::type
Public Functions
-
explicit iteration_proxy_value() = default
-
inline explicit iteration_proxy_value(IteratorType it, std::size_t array_index_ = 0) noexcept(std::is_nothrow_move_constructible<IteratorType>::value && std::is_nothrow_default_constructible<string_type>::value)
-
iteration_proxy_value(iteration_proxy_value const&) = default
-
iteration_proxy_value &operator=(iteration_proxy_value const&) = default
-
iteration_proxy_value(iteration_proxy_value&&) noexcept(std::is_nothrow_move_constructible<IteratorType>::value && std::is_nothrow_move_constructible<string_type>::value) = default
-
iteration_proxy_value &operator=(iteration_proxy_value&&) noexcept(std::is_nothrow_move_assignable<IteratorType>::value && std::is_nothrow_move_assignable<string_type>::value) = default
-
~iteration_proxy_value() = default
-
inline const iteration_proxy_value &operator*() const
dereference operator (needed for range-based for)
-
inline iteration_proxy_value &operator++()
increment operator (needed for range-based for)
-
inline iteration_proxy_value operator++(int) &
-
inline bool operator==(const iteration_proxy_value &o) const
equality operator (needed for InputIterator)
-
inline bool operator!=(const iteration_proxy_value &o) const
inequality operator (needed for range-based for)
-
inline const string_type &key() const
return key of the iterator
-
inline IteratorType::reference value() const
return value of the iterator
-
using difference_type = std::ptrdiff_t