|
DAW JSON Link
|
#include <daw/json/impl/version.h>#include <daw/daw_traits.h>#include <cstddef>#include <type_traits>#include <utility>Go to the source code of this file.
Classes | |
| struct | daw::json::anonymous_namespace{daw_writable_output_fwd.h}::concepts::writable_output_trait< typename, typename > |
| Writable output models write/putc methods to allow efficient output to buffers/FILE streams/ostreams/and containers with less allocation/size checks Specializations must have static T write( T,
StringViews... ), static T put( T, char ), and static bool value. StringViews work will have a .size( ) and .data( ) member function, and have a character element type. More... | |
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{daw_writable_output_fwd.h} |
| namespace | daw::json::anonymous_namespace{daw_writable_output_fwd.h}::concepts |
Functions | |
| template<typename WritableOutput , typename CharT > | |
| constexpr WritableOutput & | daw::json::anonymous_namespace{daw_writable_output_fwd.h}::put_output (WritableOutput &out, CharT c) |
| template<typename WritableOutput > | |
| constexpr WritableOutput & | daw::json::anonymous_namespace{daw_writable_output_fwd.h}::reserve_output (WritableOutput &out, std::size_t n) |
| Hint that about n more bytes will be written. Outputs without a reserve ignore it, and writes still check their own room. | |
| template<typename WritableOutput , typename... StringViews> | |
| constexpr WritableOutput & | daw::json::anonymous_namespace{daw_writable_output_fwd.h}::write_output (WritableOutput &out, StringViews const &...svs) |
Variables | |
| template<typename WritableOutput , typename = void> | |
| constexpr bool | daw::json::anonymous_namespace{daw_writable_output_fwd.h}::concepts::has_output_reserve_v = false |
| Writable outputs may optionally have a static reserve( T &, std::size_t ) to make room for that many more bytes. | |
| template<typename T > | |
| DAW_CPP20_CONCEPT | daw::json::anonymous_namespace{daw_writable_output_fwd.h}::concepts::is_writable_output_type_v |