16#include <daw/daw_algorithm.h>
17#include <daw/daw_character_traits.h>
28 std::is_base_of_v<
std::ostream, T> )> :
std::true_type {
30 template<
typename... StringViews>
31 static inline void write( std::ostream &os,
32 StringViews
const &...svs ) {
33 static_assert(
sizeof...( StringViews ) > 0 );
34 constexpr auto writer = []( std::ostream &o,
39 o.write( sv.data( ),
static_cast<std::streamsize
>( sv.size( ) ) );
41 daw::json::ErrorReason::OutputError );
44 ( (void)writer( os, svs ), ... );
47 static inline void put( std::ostream &os,
char c ) {
50 daw::json::ErrorReason::OutputError );
#define daw_json_ensure(Bool,...)
Ensure that Bool is true. If false pass rest of args to daw_json_error.
#define DAW_JSON_ENABLEIF_S(...)
#define DAW_JSON_CPP23_STATIC_CALL_OP
#define DAW_JSON_REQUIRES(...)
Customization point traits.
static void put(std::ostream &os, char c)
static void write(std::ostream &os, StringViews const &...svs)
#define DAW_JSON_VER
The version string used in namespace definitions. Must be a valid namespace name.