DAW JSON Link
Classes | Functions
daw::json::anonymous_namespace{daw_json_value.h} Namespace Reference

Classes

struct  basic_json_pair
 A name/value pair of string_view/json_value. More...
 
struct  basic_json_value
 A non-owning container for arbitrary JSON values that allows movement/iteration through. More...
 
struct  basic_json_value_iterator
 Iterator for iterating over arbitrary JSON members and array elements. More...
 
struct  basic_json_value_iterator_range
 a rudimentary range object for holding basic_json_value_iterator More...
 

Functions

template<typename Result , json_options_t PolicyFlags, typename Allocator >
constexpr Result as (basic_json_value< PolicyFlags, Allocator > const &jv)
 
template<json_options_t PolicyFlags, typename Allocator >
 basic_json_value (BasicParsePolicy< PolicyFlags, Allocator >) -> basic_json_value< PolicyFlags, Allocator >
 
 basic_json_value (char const *first, char const *last) -> basic_json_value<>
 
 basic_json_value (char const *first, std::size_t sz) -> basic_json_value<>
 
 basic_json_value (daw::string_view) -> basic_json_value<>
 
template<json_options_t PolicyFlags, typename Allocator >
 basic_json_value_iterator (basic_json_value< PolicyFlags, Allocator > const &) -> basic_json_value_iterator< PolicyFlags, Allocator >
 
template<json_options_t PolicyFlags, typename Allocator >
 basic_json_value_iterator (BasicParsePolicy< PolicyFlags, Allocator > const &) -> basic_json_value_iterator< PolicyFlags, Allocator >
 
 basic_json_value_iterator (daw::string_view) -> basic_json_value_iterator<>
 
template<typename Allocator >
 basic_json_value_iterator (daw::string_view, Allocator const &) -> basic_json_value_iterator< daw::json::json_details::default_policy_flag, Allocator >
 
template<json_options_t PolicyFlags, typename Allocator >
 basic_json_value_iterator_range (basic_json_value_iterator< PolicyFlags, Allocator >, basic_json_value_iterator< PolicyFlags, Allocator >) -> basic_json_value_iterator_range< PolicyFlags, Allocator >
 
template<std::size_t Idx, json_options_t PolicyFlags, typename Allocator >
constexpr decltype(auto) get (basic_json_pair< PolicyFlags, Allocator > &&parse_state)
 
template<std::size_t Idx, json_options_t PolicyFlags, typename Allocator >
constexpr decltype(auto) get (basic_json_pair< PolicyFlags, Allocator > &parse_state)
 
template<std::size_t Idx, json_options_t PolicyFlags, typename Allocator >
constexpr decltype(auto) get (basic_json_pair< PolicyFlags, Allocator > const &parse_state)
 

Function Documentation

◆ as()

template<typename Result , json_options_t PolicyFlags, typename Allocator >
constexpr Result daw::json::anonymous_namespace{daw_json_value.h}::as ( basic_json_value< PolicyFlags, Allocator > const &  jv)
constexpr

Definition at line 718 of file daw_json_value.h.

◆ basic_json_value() [1/4]

template<json_options_t PolicyFlags, typename Allocator >
daw::json::anonymous_namespace{daw_json_value.h}::basic_json_value ( BasicParsePolicy< PolicyFlags, Allocator >  ) -> basic_json_value< PolicyFlags, Allocator >

◆ basic_json_value() [2/4]

daw::json::anonymous_namespace{daw_json_value.h}::basic_json_value ( char const *  first,
char const *  last 
) -> basic_json_value<>

◆ basic_json_value() [3/4]

daw::json::anonymous_namespace{daw_json_value.h}::basic_json_value ( char const *  first,
std::size_t  sz 
) -> basic_json_value<>

◆ basic_json_value() [4/4]

daw::json::anonymous_namespace{daw_json_value.h}::basic_json_value ( daw::string_view  ) -> basic_json_value<>

◆ basic_json_value_iterator() [1/4]

template<json_options_t PolicyFlags, typename Allocator >
daw::json::anonymous_namespace{daw_json_value.h}::basic_json_value_iterator ( basic_json_value< PolicyFlags, Allocator > const &  ) -> basic_json_value_iterator< PolicyFlags, Allocator >

◆ basic_json_value_iterator() [2/4]

template<json_options_t PolicyFlags, typename Allocator >
daw::json::anonymous_namespace{daw_json_value.h}::basic_json_value_iterator ( BasicParsePolicy< PolicyFlags, Allocator > const &  ) -> basic_json_value_iterator< PolicyFlags, Allocator >

◆ basic_json_value_iterator() [3/4]

daw::json::anonymous_namespace{daw_json_value.h}::basic_json_value_iterator ( daw::string_view  ) -> basic_json_value_iterator<>

◆ basic_json_value_iterator() [4/4]

template<typename Allocator >
daw::json::anonymous_namespace{daw_json_value.h}::basic_json_value_iterator ( daw::string_view  ,
Allocator const &   
) -> basic_json_value_iterator< daw::json::json_details::default_policy_flag, Allocator >

◆ basic_json_value_iterator_range()

template<json_options_t PolicyFlags, typename Allocator >
daw::json::anonymous_namespace{daw_json_value.h}::basic_json_value_iterator_range ( basic_json_value_iterator< PolicyFlags, Allocator >  ,
basic_json_value_iterator< PolicyFlags, Allocator >   
) -> basic_json_value_iterator_range< PolicyFlags, Allocator >

◆ get() [1/3]

template<std::size_t Idx, json_options_t PolicyFlags, typename Allocator >
constexpr decltype( auto ) daw::json::anonymous_namespace{daw_json_value.h}::get ( basic_json_pair< PolicyFlags, Allocator > &&  parse_state)
constexpr

Definition at line 76 of file daw_json_value.h.

◆ get() [2/3]

template<std::size_t Idx, json_options_t PolicyFlags, typename Allocator >
constexpr decltype( auto ) daw::json::anonymous_namespace{daw_json_value.h}::get ( basic_json_pair< PolicyFlags, Allocator > &  parse_state)
constexpr

Definition at line 63 of file daw_json_value.h.

◆ get() [3/3]

template<std::size_t Idx, json_options_t PolicyFlags, typename Allocator >
constexpr decltype( auto ) daw::json::anonymous_namespace{daw_json_value.h}::get ( basic_json_pair< PolicyFlags, Allocator > const &  parse_state)
constexpr

Definition at line 50 of file daw_json_value.h.