DAW JSON Link
Loading...
Searching...
No Matches
Namespaces | Functions | Variables
daw_json_link_describe.h File Reference
#include <daw/json/daw_json_link.h>
#include <daw/daw_enable_requires.h>
#include <daw/daw_traits.h>
#include <boost/describe.hpp>
#include <boost/mp11.hpp>
#include <cstddef>
#include <tuple>
#include <utility>

Go to the source code of this file.

Namespaces

namespace  daw
 
namespace  daw::json
 string_writer grows its string with resize_and_overwrite, leaving the new bytes uninitialized, when the standard library has it. That skips zero filling memory that is overwritten right away, but the bytes past what was written are never initialized, which resize_and_overwrite's precondition does not allow. Define DAW_JSON_NO_LESS_SAFE_STRING_WRITER to grow with resize( ) instead
 

Functions

template<typename T >
 daw::json::DAW_REQUIRES (boost::describe::has_describe_members< T >::value and use_boost_describe_v< T >) struct json_data_contract< T >
 

Variables

template<typename , typename = void>
constexpr bool daw::json::use_boost_describe_v = true
 Types that use Boost.Describe need to specialize use_boost_describe_v for their type with a bool value of true. This defaults to on, all described structs, but can be opted-out of if one wants to do a custom mapping of a Boost.Described struct.