MySQL 9.3.0
Source Code Documentation
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
helper::json::ExtractSubObjectHandler< SubHandler > Class Template Reference

#include <rapid_json_to_map.h>

Inheritance diagram for helper::json::ExtractSubObjectHandler< SubHandler >:
[legend]

Public Types

using Result = typename SubHandler::Result
 

Public Member Functions

 ExtractSubObjectHandler (const std::string &key, SubHandler &sub_handler)
 
bool Null ()
 
bool Bool (bool value)
 
bool String (const Ch *ch, rapidjson::SizeType size, bool b)
 
bool Int (int v)
 
bool Uint (unsigned v)
 
bool Int64 (int64_t v)
 
bool Uint64 (uint64_t v)
 
bool Double (double v)
 
bool RawNumber (const Ch *str, rapidjson::SizeType len, bool copy)
 enabled via kParseNumbersAsStringsFlag, string is not null-terminated (use length) More...
 
bool StartObject ()
 
bool EndObject (rapidjson::SizeType size)
 
bool Key (const Ch *str, rapidjson::SizeType len, bool b)
 
bool StartArray ()
 
bool EndArray (rapidjson::SizeType size)
 
Result get_result ()
 

Static Public Attributes

constexpr static rapidjson::ParseFlag k_parse_flags
 

Private Types

using Base = rapidjson::BaseReaderHandler< rapidjson::UTF8<>, ExtractSubObjectHandler< SubHandler > >
 
using Ch = typename Base::Ch
 

Private Attributes

std::string key_
 
SubHandler & sub_handler_
 
int level_ {0}
 
bool targer_ {false}
 

Member Typedef Documentation

◆ Base

template<typename SubHandler >
using helper::json::ExtractSubObjectHandler< SubHandler >::Base = rapidjson::BaseReaderHandler<rapidjson::UTF8<>, ExtractSubObjectHandler<SubHandler> >
private

◆ Ch

template<typename SubHandler >
using helper::json::ExtractSubObjectHandler< SubHandler >::Ch = typename Base::Ch
private

◆ Result

template<typename SubHandler >
using helper::json::ExtractSubObjectHandler< SubHandler >::Result = typename SubHandler::Result

Constructor & Destructor Documentation

◆ ExtractSubObjectHandler()

template<typename SubHandler >
helper::json::ExtractSubObjectHandler< SubHandler >::ExtractSubObjectHandler ( const std::string &  key,
SubHandler &  sub_handler 
)
inline

Member Function Documentation

◆ Bool()

template<typename SubHandler >
bool helper::json::ExtractSubObjectHandler< SubHandler >::Bool ( bool  value)
inline

◆ Double()

template<typename SubHandler >
bool helper::json::ExtractSubObjectHandler< SubHandler >::Double ( double  v)
inline

◆ EndArray()

template<typename SubHandler >
bool helper::json::ExtractSubObjectHandler< SubHandler >::EndArray ( rapidjson::SizeType  size)
inline

◆ EndObject()

template<typename SubHandler >
bool helper::json::ExtractSubObjectHandler< SubHandler >::EndObject ( rapidjson::SizeType  size)
inline

◆ get_result()

template<typename SubHandler >
Result helper::json::ExtractSubObjectHandler< SubHandler >::get_result ( )
inline

◆ Int()

template<typename SubHandler >
bool helper::json::ExtractSubObjectHandler< SubHandler >::Int ( int  v)
inline

◆ Int64()

template<typename SubHandler >
bool helper::json::ExtractSubObjectHandler< SubHandler >::Int64 ( int64_t  v)
inline

◆ Key()

template<typename SubHandler >
bool helper::json::ExtractSubObjectHandler< SubHandler >::Key ( const Ch str,
rapidjson::SizeType  len,
bool  b 
)
inline

◆ Null()

template<typename SubHandler >
bool helper::json::ExtractSubObjectHandler< SubHandler >::Null ( )
inline

◆ RawNumber()

template<typename SubHandler >
bool helper::json::ExtractSubObjectHandler< SubHandler >::RawNumber ( const Ch str,
rapidjson::SizeType  len,
bool  copy 
)
inline

enabled via kParseNumbersAsStringsFlag, string is not null-terminated (use length)

◆ StartArray()

template<typename SubHandler >
bool helper::json::ExtractSubObjectHandler< SubHandler >::StartArray ( )
inline

◆ StartObject()

template<typename SubHandler >
bool helper::json::ExtractSubObjectHandler< SubHandler >::StartObject ( )
inline

◆ String()

template<typename SubHandler >
bool helper::json::ExtractSubObjectHandler< SubHandler >::String ( const Ch ch,
rapidjson::SizeType  size,
bool  b 
)
inline

◆ Uint()

template<typename SubHandler >
bool helper::json::ExtractSubObjectHandler< SubHandler >::Uint ( unsigned  v)
inline

◆ Uint64()

template<typename SubHandler >
bool helper::json::ExtractSubObjectHandler< SubHandler >::Uint64 ( uint64_t  v)
inline

Member Data Documentation

◆ k_parse_flags

template<typename SubHandler >
constexpr static rapidjson::ParseFlag helper::json::ExtractSubObjectHandler< SubHandler >::k_parse_flags
staticconstexpr
Initial value:
{
rapidjson::kParseNumbersAsStringsFlag}

◆ key_

template<typename SubHandler >
std::string helper::json::ExtractSubObjectHandler< SubHandler >::key_
private

◆ level_

template<typename SubHandler >
int helper::json::ExtractSubObjectHandler< SubHandler >::level_ {0}
private

◆ sub_handler_

template<typename SubHandler >
SubHandler& helper::json::ExtractSubObjectHandler< SubHandler >::sub_handler_
private

◆ targer_

template<typename SubHandler >
bool helper::json::ExtractSubObjectHandler< SubHandler >::targer_ {false}
private

The documentation for this class was generated from the following file: