JSON Voorhees
Killer JSON for C++
|
Public Member Functions | |
virtual const std::type_info & | get_type () const override |
Get the run-time type this extractor knows how to extract. More... | |
virtual void | extract (const extraction_context &context, const value &from, void *into) const override |
Extract a the type from a value into a region of memory. More... | |
virtual value | to_json (const serialization_context &context, const void *from) const override |
Create a value from the value in the given region of memory. More... | |
Protected Member Functions | |
virtual T | create (const extraction_context &context, const value &from) const =0 |
virtual value | to_json (const serialization_context &context, const T &from) const =0 |
Definition at line 218 of file serialization_util.hpp.
|
inlineoverridevirtual |
Extract a the type from a value
into a region of memory.
context | Extra information to help you decode sub-objects, such as looking up other formats . It also tracks your path in the decoding heirarchy, so any exceptions thrown will have path information in the error message. |
from | The JSON value to extract something from. |
into | The region of memory to create the extracted object in. There will always be enough room to create your object and the alignment of the pointer should be correct (assuming a working alignof implementation). |
Implements jsonv::extractor.
Definition at line 227 of file serialization_util.hpp.
|
inlineoverridevirtual |
Get the run-time type this extractor
knows how to extract.
Once this extractor
is registered with a formats
, it is not allowed to change.
Implements jsonv::extractor.
Definition at line 222 of file serialization_util.hpp.
|
inlineoverridevirtual |
Create a value
from the value in the given region of memory.
context | Extra information to help you encode sub-objects for your type, such as the ability to find other formats . It also tracks the progression of types in the encoding heirarchy, so any exceptions thrown will have type information in the error message. |
from | The region of memory that represents the C++ value to convert to JSON. The pointer comes as the result of a static_cast<void*> , so performing a static_cast back to your type is okay. |
Implements jsonv::serializer.
Definition at line 235 of file serialization_util.hpp.