DAW JSON Link
Loading...
Searching...
No Matches
Classes | Namespaces | Enumerations | Functions
daw_json_event_parser.h File Reference
#include "impl/version.h"
#include "daw/json/daw_from_json_fwd.h"
#include "daw/json/impl/daw_json_parse_policy.h"
#include "daw/json/impl/daw_json_value.h"
#include <daw/daw_cpp20_concept.h>
#include <daw/daw_move.h>
#include <daw/daw_string_view.h>
#include <daw/daw_utility.h>
#include <cstddef>
#include <daw/stdinc/declval.h>
#include <daw/stdinc/move_fwd_exch.h>
#include <optional>
#include <utility>
#include <vector>

Go to the source code of this file.

Classes

class  daw::json::anonymous_namespace{daw_json_event_parser.h}::DefaultJsonEventParserStackPolicy< StackValue, StackType >
 
struct  daw::json::anonymous_namespace{daw_json_event_parser.h}::JsonEventParserStackValue< P, A >
 

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_json_event_parser.h}
 

Enumerations

enum  daw::json::anonymous_namespace{daw_json_event_parser.h}::json_parse_handler_result { daw::json::anonymous_namespace{daw_json_event_parser.h}::Continue , daw::json::anonymous_namespace{daw_json_event_parser.h}::SkipClassArray , daw::json::anonymous_namespace{daw_json_event_parser.h}::Complete }
 
enum class  daw::json::anonymous_namespace{daw_json_event_parser.h}::StackParseStateType { daw::json::anonymous_namespace{daw_json_event_parser.h}::Class , daw::json::anonymous_namespace{daw_json_event_parser.h}::Array }
 

Functions

template<typename StackContainerPolicy = use_default, std::size_t MaxDepth = daw::max_value<std::size_t>, json_options_t P, typename A , typename Handler >
DAW_ATTRIB_INLINE constexpr void daw::json::anonymous_namespace{daw_json_event_parser.h}::json_event_parser (basic_json_value< P, A > bjv, Handler &&handler)
 
template<typename StackContainerPolicy = use_default, std::size_t MaxDepth = daw::max_value<std::size_t>, json_options_t P, typename A , typename Handler , auto... ParseFlags>
constexpr void daw::json::anonymous_namespace{daw_json_event_parser.h}::json_event_parser (basic_json_value< P, A > bjv, Handler &&handler, options::parse_flags_t< ParseFlags... >)
 
template<typename StackContainerPolicy = use_default, std::size_t MaxDepth = daw::max_value<std::size_t>, typename Handler >
DAW_ATTRIB_INLINE void daw::json::anonymous_namespace{daw_json_event_parser.h}::json_event_parser (daw::string_view json_document, Handler &&handler)
 
template<typename StackContainerPolicy = use_default, std::size_t MaxDepth = daw::max_value<std::size_t>, typename Handler , auto... ParseFlags>
DAW_ATTRIB_INLINE void daw::json::anonymous_namespace{daw_json_event_parser.h}::json_event_parser (daw::string_view json_document, Handler &&handler, options::parse_flags_t< ParseFlags... > pflags)