DAW JSON Link
Public Types | Public Member Functions | List of all members
DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds > Struct Template Reference

#include <daw_json_parse_kv_array_iterator.h>

Inheritance diagram for DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >:
DAW_JSON_NS::json_details::json_parse_kv_array_iterator_base< ParseState, can_random_v< KnownBounds > >

Public Types

using base = json_parse_kv_array_iterator_base< ParseState, can_random_v< KnownBounds > >
 
using difference_type = typename base::difference_type
 
using iterator_category = typename base::iterator_category
 
using iterator_range_t = ParseState
 
using json_class_type = typename JsonMember::json_class_t
 
using json_element_t = typename JsonMember::json_value_t
 
using json_key_t = typename JsonMember::json_key_t
 
using pointer = arrow_proxy< value_type >
 
using reference = value_type
 
using value_type = std::pair< typename json_key_t::parse_to_t const, typename json_element_t::parse_to_t >
 
- Public Types inherited from DAW_JSON_NS::json_details::json_parse_kv_array_iterator_base< ParseState, can_random_v< KnownBounds > >
using difference_type = std::ptrdiff_t
 
using iterator_category = std::input_iterator_tag
 

Public Member Functions

constexpr json_parse_kv_array_iterator ()=default
 
constexpr json_parse_kv_array_iterator (iterator_range_t &r)
 
constexpr bool operator!= (json_parse_kv_array_iterator const &rhs) const
 
constexpr value_type operator* ()
 
constexpr json_parse_kv_array_iteratoroperator++ ()
 
constexpr json_parse_kv_array_iterator operator++ (int)
 
constexpr bool operator== (json_parse_kv_array_iterator const &rhs) const
 

Additional Inherited Members

- Public Attributes inherited from DAW_JSON_NS::json_details::json_parse_kv_array_iterator_base< ParseState, can_random_v< KnownBounds > >
ParseState * parse_state
 
- Static Public Attributes inherited from DAW_JSON_NS::json_details::json_parse_kv_array_iterator_base< ParseState, can_random_v< KnownBounds > >
static constexpr bool has_counter
 

Member Typedef Documentation

◆ base

template<typename JsonMember , typename ParseState , bool KnownBounds>
using DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::base = json_parse_kv_array_iterator_base<ParseState, can_random_v<KnownBounds> >

◆ difference_type

template<typename JsonMember , typename ParseState , bool KnownBounds>
using DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::difference_type = typename base::difference_type

◆ iterator_category

template<typename JsonMember , typename ParseState , bool KnownBounds>
using DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::iterator_category = typename base::iterator_category

◆ iterator_range_t

template<typename JsonMember , typename ParseState , bool KnownBounds>
using DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::iterator_range_t = ParseState

◆ json_class_type

template<typename JsonMember , typename ParseState , bool KnownBounds>
using DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::json_class_type = typename JsonMember::json_class_t

◆ json_element_t

template<typename JsonMember , typename ParseState , bool KnownBounds>
using DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::json_element_t = typename JsonMember::json_value_t

◆ json_key_t

template<typename JsonMember , typename ParseState , bool KnownBounds>
using DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::json_key_t = typename JsonMember::json_key_t

◆ pointer

template<typename JsonMember , typename ParseState , bool KnownBounds>
using DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::pointer = arrow_proxy<value_type>

◆ reference

template<typename JsonMember , typename ParseState , bool KnownBounds>
using DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::reference = value_type

◆ value_type

template<typename JsonMember , typename ParseState , bool KnownBounds>
using DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::value_type = std::pair<typename json_key_t::parse_to_t const, typename json_element_t::parse_to_t>

Constructor & Destructor Documentation

◆ json_parse_kv_array_iterator() [1/2]

template<typename JsonMember , typename ParseState , bool KnownBounds>
constexpr DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::json_parse_kv_array_iterator ( )
inlineconstexprdefault

◆ json_parse_kv_array_iterator() [2/2]

template<typename JsonMember , typename ParseState , bool KnownBounds>
constexpr DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::json_parse_kv_array_iterator ( iterator_range_t r)
inlineexplicitconstexpr

Member Function Documentation

◆ operator!=()

template<typename JsonMember , typename ParseState , bool KnownBounds>
constexpr bool DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::operator!= ( json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds > const &  rhs) const
inlineconstexpr

◆ operator*()

template<typename JsonMember , typename ParseState , bool KnownBounds>
constexpr value_type DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::operator* ( )
inlineconstexpr

◆ operator++() [1/2]

template<typename JsonMember , typename ParseState , bool KnownBounds>
constexpr json_parse_kv_array_iterator& DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::operator++ ( )
inlineconstexpr

◆ operator++() [2/2]

template<typename JsonMember , typename ParseState , bool KnownBounds>
constexpr json_parse_kv_array_iterator DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::operator++ ( int  )
inlineconstexpr

◆ operator==()

template<typename JsonMember , typename ParseState , bool KnownBounds>
constexpr bool DAW_JSON_NS::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::operator== ( json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds > const &  rhs) const
inlineconstexpr

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