DAW JSON Link
Loading...
Searching...
No Matches
Classes | Namespaces | Functions | Variables
to_daw_json_string.h File Reference
#include "daw/json/impl/version.h"
#include "daw/json/daw_json_data_contract.h"
#include "daw/json/impl/daw_json_assert.h"
#include "daw/json/impl/daw_json_parse_iso8601_utils.h"
#include "daw/json/impl/daw_json_serialize_options_impl.h"
#include "daw/json/impl/daw_json_serialize_policy.h"
#include "daw/json/impl/daw_json_serialize_string_simd.h"
#include "daw/json/impl/daw_json_value.h"
#include <daw/daw_algorithm.h>
#include <daw/daw_arith_traits.h>
#include <daw/daw_callable.h>
#include <daw/daw_constant.h>
#include <daw/daw_cpp_feature_check.h>
#include <daw/daw_cxmath.h>
#include <daw/daw_enable_requires.h>
#include <daw/daw_likely.h>
#include <daw/daw_move.h>
#include <daw/daw_simple_array.h>
#include <daw/daw_traits.h>
#include <daw/daw_utility.h>
#include <daw/daw_visit.h>
#include <daw/third_party/dragonbox/dragonbox.h>
#include <daw/traits/daw_traits_is_explicitly_convertible.h>
#include <daw/utf8/unchecked.h>
#include <array>
#include <daw/stdinc/move_fwd_exch.h>
#include <daw/stdinc/tuple_traits.h>
#include <optional>
#include <sstream>
#include <string>
#include <string_view>
#include <type_traits>
#include <variant>

Go to the source code of this file.

Classes

struct  daw::json::anonymous_namespace{to_daw_json_string.h}::default_from_json_converter_t< T >
 
struct  daw::json::anonymous_namespace{to_daw_json_string.h}::default_to_json_converter_t< T >
 

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
 
namespace  daw::json::anonymous_namespace{to_daw_json_string.h}
 
namespace  daw::json::anonymous_namespace{to_daw_json_string.h}::utils
 

Functions

if daw::json::anonymous_namespace{to_daw_json_string.h}::utils::constexpr (do_escape)
 
template<bool do_escape = false, options::EightBitModes EightBitMode = options::EightBitModes::AllowFull, typename WriteableType , json_options_t P, typename A >
static constexpr WriteableType daw::json::anonymous_namespace{to_daw_json_string.h}::utils::copy_to_iterator (WriteableType it, basic_json_value< P, A > const &jv)
 
template<bool do_escape = false, options::EightBitModes EightBitMode = options::EightBitModes::AllowFull, typename WriteableType >
static constexpr WriteableType daw::json::anonymous_namespace{to_daw_json_string.h}::utils::copy_to_iterator (WriteableType it, char const *ptr)
 
template<bool do_escape = false, options::EightBitModes EightBitMode = options::EightBitModes::AllowFull, bool use_scanned_write = false, typename WritableType , typename Container DAW_ENABLEIF>
 daw::json::anonymous_namespace{to_daw_json_string.h}::utils::DAW_REQUIRES (daw::traits::is_container_like_v< daw::remove_cvref_t< Container > >) static const expr WritableType copy_to_iterator(WritableType it
 
template<bool RestrictHigh, typename WriteableType >
static constexpr WriteableType daw::json::anonymous_namespace{to_daw_json_string.h}::utils::escape_codepoint_to_iterator (WriteableType it, std::uint32_t cp)
 
template<typename Integer , typename WriteableType >
static constexpr WriteableType daw::json::anonymous_namespace{to_daw_json_string.h}::utils::integer_to_string (WriteableType it, Integer const &value)
 

Variables

Container const & daw::json::anonymous_namespace{to_daw_json_string.h}::utils::container
 
 daw::json::anonymous_namespace{to_daw_json_string.h}::utils::else