DAW JSON Link
Public Types | Public Member Functions | Friends | List of all members
daw::json::basic_json_value_iterator< Range > Struct Template Reference

#include <daw_json_value.h>

Public Types

using difference_type = std::ptrdiff_t
 
using iterator_category = std::forward_iterator_tag
 
using json_pair = basic_json_pair< Range >
 
using key_type = std::string_view
 
using mapped_type = basic_json_value< Range >
 
using pointer = json_details::arrow_proxy< value_type >
 
using reference = value_type
 
using value_type = basic_json_pair< Range >
 

Public Member Functions

constexpr basic_json_value_iterator ()=default
 
constexpr bool good () const
 
constexpr bool is_array () const
 
constexpr bool is_class () const
 
constexpr std::optional< std::string_view > name () const
 
constexpr operator bool () const
 
constexpr bool operator!= (basic_json_value_iterator< Range > const &rhs) const
 
constexpr basic_json_pair< Range > operator* ()
 
constexpr basic_json_value_iteratoroperator++ ()
 
constexpr basic_json_value_iterator operator++ (int)
 
constexpr pointer operator-> ()
 
constexpr bool operator== (basic_json_value_iterator< Range > const &rhs) const
 
constexpr basic_json_value< Range > value () const
 

Friends

class ::daw::json::basic_json_value< Range >
 

Member Typedef Documentation

◆ difference_type

template<typename Range >
using daw::json::basic_json_value_iterator< Range >::difference_type = std::ptrdiff_t

◆ iterator_category

template<typename Range >
using daw::json::basic_json_value_iterator< Range >::iterator_category = std::forward_iterator_tag

◆ json_pair

template<typename Range >
using daw::json::basic_json_value_iterator< Range >::json_pair = basic_json_pair<Range>

◆ key_type

template<typename Range >
using daw::json::basic_json_value_iterator< Range >::key_type = std::string_view

◆ mapped_type

template<typename Range >
using daw::json::basic_json_value_iterator< Range >::mapped_type = basic_json_value<Range>

◆ pointer

template<typename Range >
using daw::json::basic_json_value_iterator< Range >::pointer = json_details::arrow_proxy<value_type>

◆ reference

template<typename Range >
using daw::json::basic_json_value_iterator< Range >::reference = value_type

◆ value_type

template<typename Range >
using daw::json::basic_json_value_iterator< Range >::value_type = basic_json_pair<Range>

Constructor & Destructor Documentation

◆ basic_json_value_iterator()

template<typename Range >
constexpr daw::json::basic_json_value_iterator< Range >::basic_json_value_iterator ( )
constexprdefault

Member Function Documentation

◆ good()

template<typename Range >
constexpr bool daw::json::basic_json_value_iterator< Range >::good ( ) const
inlineconstexpr

◆ is_array()

template<typename Range >
constexpr bool daw::json::basic_json_value_iterator< Range >::is_array ( ) const
inlineconstexpr

◆ is_class()

template<typename Range >
constexpr bool daw::json::basic_json_value_iterator< Range >::is_class ( ) const
inlineconstexpr

◆ name()

template<typename Range >
constexpr std::optional<std::string_view> daw::json::basic_json_value_iterator< Range >::name ( ) const
inlineconstexpr

◆ operator bool()

template<typename Range >
constexpr daw::json::basic_json_value_iterator< Range >::operator bool ( ) const
inlineexplicitconstexpr

◆ operator!=()

template<typename Range >
constexpr bool daw::json::basic_json_value_iterator< Range >::operator!= ( basic_json_value_iterator< Range > const &  rhs) const
inlineconstexpr

◆ operator*()

template<typename Range >
constexpr basic_json_pair<Range> daw::json::basic_json_value_iterator< Range >::operator* ( )
inlineconstexpr

◆ operator++() [1/2]

template<typename Range >
constexpr basic_json_value_iterator& daw::json::basic_json_value_iterator< Range >::operator++ ( )
inlineconstexpr

◆ operator++() [2/2]

template<typename Range >
constexpr basic_json_value_iterator daw::json::basic_json_value_iterator< Range >::operator++ ( int  )
inlineconstexpr

◆ operator->()

template<typename Range >
constexpr pointer daw::json::basic_json_value_iterator< Range >::operator-> ( )
inlineconstexpr

◆ operator==()

template<typename Range >
constexpr bool daw::json::basic_json_value_iterator< Range >::operator== ( basic_json_value_iterator< Range > const &  rhs) const
inlineconstexpr

◆ value()

template<typename Range >
constexpr basic_json_value<Range> daw::json::basic_json_value_iterator< Range >::value ( ) const
inlineconstexpr

Friends And Related Function Documentation

◆ ::daw::json::basic_json_value< Range >

template<typename Range >
friend class ::daw::json::basic_json_value< Range >
friend

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