DAW JSON Link
Classes | Namespaces | Typedefs | Functions
daw_json_link.h File Reference
#include "impl/daw_json_link_impl.h"
#include "impl/daw_json_link_types_fwd.h"
#include "impl/daw_json_parse_policy.h"
#include "impl/daw_json_serialize_impl.h"
#include "impl/daw_json_traits.h"
#include "impl/daw_json_value.h"
#include <daw/daw_array.h>
#include <daw/daw_bounded_string.h>
#include <daw/daw_parser_helper_sv.h>
#include <daw/daw_traits.h>
#include <daw/daw_utility.h>
#include <daw/daw_visit.h>
#include <daw/iterator/daw_back_inserter.h>
#include <array>
#include <iterator>
#include <memory>
#include <string>
#include <string_view>
#include <tuple>

Go to the source code of this file.

Classes

struct  daw::json::json_array< Name, JsonElement, Container, Constructor, Nullable >
 
struct  daw::json::json_bool< Name, T, LiteralAsString, Constructor, Nullable >
 
struct  daw::json::json_class< Name, T, Constructor, Nullable >
 
struct  daw::json::json_custom< Name, T, FromJsonConverter, ToJsonConverter, CustomJsonType, Nullable >
 
struct  daw::json::json_data_contract< tuple_json_mapping< Members... > >
 
struct  daw::json::json_date< Name, T, Constructor, Nullable >
 
struct  daw::json::json_delayed< Name, T, Constructor, Nullable >
 
struct  daw::json::json_key_value< Name, Container, JsonValueType, JsonKeyType, Constructor, Nullable >
 
struct  daw::json::json_key_value_array< Name, Container, JsonValueType, JsonKeyType, Constructor, Nullable >
 
struct  daw::json::json_member_list< JsonMembers >
 
struct  daw::json::json_number< Name, T, LiteralAsString, Constructor, RangeCheck, Nullable >
 
struct  daw::json::json_ordered_member_list< JsonMembers >
 
struct  daw::json::json_string< Name, String, Constructor, EmptyStringNull, EightBitMode, Nullable >
 
struct  daw::json::json_string_raw< Name, String, Constructor, EmptyStringNull, EightBitMode, Nullable, AllowEscape >
 
struct  daw::json::json_submember_tagged_variant< TagMember, Switcher, JsonClasses >
 
struct  daw::json::json_tagged_variant< Name, T, TagMember, Switcher, JsonElements, Constructor, Nullable >
 
struct  daw::json::json_variant< Name, T, JsonElements, Constructor, Nullable >
 
struct  daw::json::json_variant_type_list< JsonElements >
 
struct  daw::json::ordered_json_member< Index, JsonMember >
 

Namespaces

 daw
 
 daw::json
 

Typedefs

using daw::json::json_pair = basic_json_pair< NoCommentSkippingPolicyChecked >
 
using daw::json::json_value = basic_json_value< NoCommentSkippingPolicyChecked >
 

Functions

template<typename JsonMember , typename ParsePolicy = NoCommentSkippingPolicyChecked, bool KnownBounds = false, typename Range >
constexpr auto daw::json::from_json (basic_json_value< Range > value)
 
template<typename JsonMember , typename ParsePolicy = NoCommentSkippingPolicyChecked, bool KnownBounds = false, typename Range >
constexpr auto daw::json::from_json (basic_json_value< Range > value, std::string_view member_path)
 
template<typename JsonMember , typename ParsePolicy = NoCommentSkippingPolicyChecked, bool KnownBounds = false>
constexpr auto daw::json::from_json (std::string_view json_data)
 
template<typename JsonMember , typename ParsePolicy = NoCommentSkippingPolicyChecked, bool KnownBounds = false>
constexpr auto daw::json::from_json (std::string_view json_data, std::string_view member_path)
 
template<typename JsonMember , typename ParsePolicy = NoCommentSkippingPolicyChecked, bool KnownBounds = false, typename Allocator >
constexpr auto daw::json::from_json_alloc (std::string_view json_data, Allocator &alloc)
 
template<typename JsonMember , typename ParsePolicy = NoCommentSkippingPolicyChecked, bool KnownBounds = false, typename Allocator >
constexpr auto daw::json::from_json_alloc (std::string_view json_data, std::string_view member_path, Allocator &alloc)
 
template<typename JsonElement , typename Container = std::vector<typename json_details::unnamed_default_type_mapping< JsonElement>::parse_to_t>, typename ParsePolicy = NoCommentSkippingPolicyChecked, typename Constructor = daw::construct_a_t<Container>, bool KnownBounds = false>
constexpr Container daw::json::from_json_array (std::string_view json_data, std::string_view member_path="")
 
template<typename Result = std::string, typename Value , typename JsonClass = typename json_details::unnamed_default_type_mapping<Value>>
constexpr Result daw::json::to_json (Value const &value)
 
template<typename Value , typename JsonClass = typename json_details::unnamed_default_type_mapping<Value>, typename OutputIterator >
constexpr OutputIterator daw::json::to_json (Value const &value, OutputIterator out_it)
 
template<typename Result = std::string, typename JsonElement = json_details::auto_detect_array_element, typename Container >
constexpr Result daw::json::to_json_array (Container &&c)
 
template<typename JsonElement = json_details::auto_detect_array_element, typename Container , typename OutputIterator >
constexpr OutputIterator daw::json::to_json_array (Container const &c, OutputIterator out_it)