DAW JSON Link
Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
daw::json::DAW_JSON_VER::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::DAW_JSON_VER::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >:
daw::json::DAW_JSON_VER::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 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 parse_state_t = ParseState
 
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::DAW_JSON_VER::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 (parse_state_t &r)
 
constexpr DAW_ATTRIB_INLINE value_type operator* ()
 
constexpr DAW_ATTRIB_INLINE json_parse_kv_array_iteratoroperator++ ()
 

Static Public Member Functions

static constexpr value_type get_pair (typename json_class_type::parse_to_t &&v)
 

Friends

constexpr friend bool operator!= (json_parse_kv_array_iterator const &lhs, json_parse_kv_array_iterator const &rhs)
 
constexpr friend bool operator== (json_parse_kv_array_iterator const &lhs, json_parse_kv_array_iterator const &rhs)
 

Additional Inherited Members

- Public Attributes inherited from daw::json::DAW_JSON_VER::json_details::json_parse_kv_array_iterator_base< ParseState, can_random_v< KnownBounds > >
ParseState * parse_state
 
- Static Public Attributes inherited from daw::json::DAW_JSON_VER::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::DAW_JSON_VER::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::DAW_JSON_VER::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::DAW_JSON_VER::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::iterator_category = typename base::iterator_category

◆ json_class_type

template<typename JsonMember , typename ParseState , bool KnownBounds>
using daw::json::DAW_JSON_VER::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::DAW_JSON_VER::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::DAW_JSON_VER::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::json_key_t = typename JsonMember::json_key_t

◆ parse_state_t

template<typename JsonMember , typename ParseState , bool KnownBounds>
using daw::json::DAW_JSON_VER::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::parse_state_t = ParseState

◆ pointer

template<typename JsonMember , typename ParseState , bool KnownBounds>
using daw::json::DAW_JSON_VER::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::DAW_JSON_VER::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::DAW_JSON_VER::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::DAW_JSON_VER::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::DAW_JSON_VER::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::json_parse_kv_array_iterator ( parse_state_t r)
inlineexplicitconstexpr

Member Function Documentation

◆ get_pair()

template<typename JsonMember , typename ParseState , bool KnownBounds>
static constexpr value_type daw::json::DAW_JSON_VER::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::get_pair ( typename json_class_type::parse_to_t &&  v)
inlinestaticconstexpr

◆ operator*()

template<typename JsonMember , typename ParseState , bool KnownBounds>
constexpr DAW_ATTRIB_INLINE value_type daw::json::DAW_JSON_VER::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::operator* ( )
inlineconstexpr

◆ operator++()

template<typename JsonMember , typename ParseState , bool KnownBounds>
constexpr DAW_ATTRIB_INLINE json_parse_kv_array_iterator & daw::json::DAW_JSON_VER::json_details::json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds >::operator++ ( )
inlineconstexpr

Friends And Related Function Documentation

◆ operator!=

template<typename JsonMember , typename ParseState , bool KnownBounds>
constexpr friend bool operator!= ( json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds > const &  lhs,
json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds > const &  rhs 
)
friend

◆ operator==

template<typename JsonMember , typename ParseState , bool KnownBounds>
constexpr friend bool operator== ( json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds > const &  lhs,
json_parse_kv_array_iterator< JsonMember, ParseState, KnownBounds > const &  rhs 
)
friend

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