DAW JSON Link
Public Types | Public Member Functions | Friends | List of all members
daw::json::DAW_JSON_VER::json_details::json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown > Struct Template Reference

#include <daw_json_parse_kv_class_iterator.h>

Inheritance diagram for daw::json::DAW_JSON_VER::json_details::json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown >:
daw::json::DAW_JSON_VER::json_details::json_parse_kv_class_iterator_base< ParseState, can_random_v< IsKnown > >

Public Types

using base = json_parse_kv_class_iterator_base< ParseState, can_random_v< IsKnown > >
 
using difference_type = typename base::difference_type
 
using element_t = typename JsonMember::json_element_t
 
using iterator_category = typename base::iterator_category
 
using iterator_range_t = ParseState
 
using key_t = typename JsonMember::json_key_t
 
using member_container_type = typename JsonMember::base_type
 
using pointer = arrow_proxy< value_type >
 
using reference = value_type
 
using value_t = typename JsonMember::json_element_t
 
using value_type = kv_class_iter_impl::container_value_type_or< JsonMember, member_container_type >
 
- Public Types inherited from daw::json::DAW_JSON_VER::json_details::json_parse_kv_class_iterator_base< ParseState, can_random_v< IsKnown > >
using difference_type = std::ptrdiff_t
 
using iterator_category = std::input_iterator_tag
 

Public Member Functions

constexpr json_parse_kv_class_iterator ()=default
 
constexpr json_parse_kv_class_iterator (iterator_range_t &r)
 
constexpr value_type operator* ()
 
constexpr json_parse_kv_class_iteratoroperator++ ()
 

Friends

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

Additional Inherited Members

- Public Attributes inherited from daw::json::DAW_JSON_VER::json_details::json_parse_kv_class_iterator_base< ParseState, can_random_v< IsKnown > >
ParseState * parse_state
 

Member Typedef Documentation

◆ base

template<typename JsonMember , typename ParseState , bool IsKnown>
using daw::json::DAW_JSON_VER::json_details::json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown >::base = json_parse_kv_class_iterator_base<ParseState, can_random_v<IsKnown> >

◆ difference_type

template<typename JsonMember , typename ParseState , bool IsKnown>
using daw::json::DAW_JSON_VER::json_details::json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown >::difference_type = typename base::difference_type

◆ element_t

template<typename JsonMember , typename ParseState , bool IsKnown>
using daw::json::DAW_JSON_VER::json_details::json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown >::element_t = typename JsonMember::json_element_t

◆ iterator_category

template<typename JsonMember , typename ParseState , bool IsKnown>
using daw::json::DAW_JSON_VER::json_details::json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown >::iterator_category = typename base::iterator_category

◆ iterator_range_t

template<typename JsonMember , typename ParseState , bool IsKnown>
using daw::json::DAW_JSON_VER::json_details::json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown >::iterator_range_t = ParseState

◆ key_t

template<typename JsonMember , typename ParseState , bool IsKnown>
using daw::json::DAW_JSON_VER::json_details::json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown >::key_t = typename JsonMember::json_key_t

◆ member_container_type

template<typename JsonMember , typename ParseState , bool IsKnown>
using daw::json::DAW_JSON_VER::json_details::json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown >::member_container_type = typename JsonMember::base_type

◆ pointer

template<typename JsonMember , typename ParseState , bool IsKnown>
using daw::json::DAW_JSON_VER::json_details::json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown >::pointer = arrow_proxy<value_type>

◆ reference

template<typename JsonMember , typename ParseState , bool IsKnown>
using daw::json::DAW_JSON_VER::json_details::json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown >::reference = value_type

◆ value_t

template<typename JsonMember , typename ParseState , bool IsKnown>
using daw::json::DAW_JSON_VER::json_details::json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown >::value_t = typename JsonMember::json_element_t

◆ value_type

template<typename JsonMember , typename ParseState , bool IsKnown>
using daw::json::DAW_JSON_VER::json_details::json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown >::value_type = kv_class_iter_impl::container_value_type_or<JsonMember, member_container_type>

Constructor & Destructor Documentation

◆ json_parse_kv_class_iterator() [1/2]

template<typename JsonMember , typename ParseState , bool IsKnown>
constexpr daw::json::DAW_JSON_VER::json_details::json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown >::json_parse_kv_class_iterator ( )
inlineconstexprdefault

◆ json_parse_kv_class_iterator() [2/2]

template<typename JsonMember , typename ParseState , bool IsKnown>
constexpr daw::json::DAW_JSON_VER::json_details::json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown >::json_parse_kv_class_iterator ( iterator_range_t r)
inlineexplicitconstexpr

Member Function Documentation

◆ operator*()

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

◆ operator++()

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

Friends And Related Function Documentation

◆ operator!=

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

◆ operator==

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

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