DAW JSON Link
Public Types | Public Member Functions | List of all members
DAW_JSON_NS::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_NS::json_details::json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown >:
DAW_JSON_NS::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 = typename member_container_type::value_type
 
- Public Types inherited from DAW_JSON_NS::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 bool operator!= (json_parse_kv_class_iterator const &rhs) const
 
constexpr value_type operator* ()
 
constexpr json_parse_kv_class_iteratoroperator++ ()
 
constexpr json_parse_kv_class_iterator operator++ (int)
 
constexpr bool operator== (json_parse_kv_class_iterator const &rhs) const
 

Additional Inherited Members

- Public Attributes inherited from DAW_JSON_NS::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_NS::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_NS::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_NS::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_NS::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_NS::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_NS::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_NS::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_NS::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_NS::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_NS::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_NS::json_details::json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown >::value_type = typename member_container_type::value_type

Constructor & Destructor Documentation

◆ json_parse_kv_class_iterator() [1/2]

template<typename JsonMember , typename ParseState , bool IsKnown>
constexpr DAW_JSON_NS::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_NS::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 bool DAW_JSON_NS::json_details::json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown >::operator!= ( json_parse_kv_class_iterator< JsonMember, ParseState, IsKnown > const &  rhs) const
inlineconstexpr

◆ operator*()

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

◆ operator++() [1/2]

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

◆ operator++() [2/2]

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

◆ operator==()

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

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