VariantWriter Class Reference

#include <RobotAPI/libraries/aron/core/data/rw/writer/variant/VariantWriter.h>

+ Inheritance diagram for VariantWriter:

Public Member Functions

data::Descriptor getDescriptor (ReturnTypeConst &input) final
 
 VariantWriter ()=default
 
data::VariantPtr writeBool (const bool i, const Path &p=Path()) override
 
data::VariantPtr writeDict (const std::map< std::string, data::VariantPtr > &elements, const std::optional< data::VariantPtr > &extends=std::nullopt, const Path &p=Path()) override
 
data::VariantPtr writeDict (std::map< std::string, data::VariantPtr > &&elements, const std::optional< data::VariantPtr > &extends, const Path &p) override
 Takes ownership of elements instead of copying it into the dict.
 
data::VariantPtr writeDouble (const double i, const Path &p=Path()) override
 
data::VariantPtr writeFloat (const float i, const Path &p=Path()) override
 
void writeImportance (ReturnType &output, const std::optional< float > &importance) final
 
data::VariantPtr writeInt (const int i, const Path &p=Path()) override
 
data::VariantPtr writeList (const std::vector< data::VariantPtr > &elements, const Path &p=Path()) override
 
data::VariantPtr writeLong (const long i, const Path &p=Path()) override
 
data::VariantPtr writeNDArray (const std::vector< int > &shape, const std::string &typeAsString, const unsigned char *data, const Path &p=Path()) override
 
data::VariantPtr writeString (const std::string &i, const Path &p=Path()) override
 
- Public Member Functions inherited from WriterInterface< data::VariantPtr >
virtual data::Descriptor getDescriptor (ReturnTypeConst &input)=0
 
virtual ReturnType writeDict (const std::map< std::string, ReturnType > &elements, const std::optional< ReturnType > &extends, const Path &p)=0
 
virtual ReturnType writeDict (std::map< std::string, ReturnType > &&elements, const std::optional< ReturnType > &extends, const Path &p)
 Overload for callers that no longer need elements afterwards - which is the case for all generated write() code, since it builds the element map purely to hand it over.
 
virtual void writeImportance (ReturnType &, const std::optional< float > &)
 
virtual ReturnType writeList (std::vector< ReturnType > &&elements, const Path &p)
 Same bargain as the writeDict overload below, for lists.
 
virtual ReturnType writeNull ()
 
ReturnType writePrimitive (const bool i, const Path &p=Path())
 
ReturnType writePrimitive (const double i, const Path &p=Path())
 
ReturnType writePrimitive (const float i, const Path &p=Path())
 
ReturnType writePrimitive (const int i, const Path &p=Path())
 
ReturnType writePrimitive (const long i, const Path &p=Path())
 
ReturnType writePrimitive (const std::string &i, const Path &p=Path())
 
virtual ~WriterInterface ()=default
 

Additional Inherited Members

- Public Types inherited from WriterInterface< data::VariantPtr >
using ReturnType
 
using ReturnTypeConst
 

Constructor & Destructor Documentation

◆ VariantWriter()

VariantWriter ( )
default

Member Function Documentation

◆ getDescriptor()

data::Descriptor getDescriptor ( ReturnTypeConst & input)
final

◆ writeBool()

data::VariantPtr writeBool ( const bool i,
const Path & p = Path() )
overridevirtual

◆ writeDict() [1/2]

data::VariantPtr writeDict ( const std::map< std::string, data::VariantPtr > & elements,
const std::optional< data::VariantPtr > & extends = std::nullopt,
const Path & p = Path() )
override

◆ writeDict() [2/2]

data::VariantPtr writeDict ( std::map< std::string, data::VariantPtr > && elements,
const std::optional< data::VariantPtr > & extends,
const Path & p )
override

Takes ownership of elements instead of copying it into the dict.

◆ writeDouble()

data::VariantPtr writeDouble ( const double i,
const Path & p = Path() )
overridevirtual

◆ writeFloat()

data::VariantPtr writeFloat ( const float i,
const Path & p = Path() )
overridevirtual

◆ writeImportance()

void writeImportance ( ReturnType & output,
const std::optional< float > & importance )
final

◆ writeInt()

data::VariantPtr writeInt ( const int i,
const Path & p = Path() )
overridevirtual

◆ writeList()

data::VariantPtr writeList ( const std::vector< data::VariantPtr > & elements,
const Path & p = Path() )
overridevirtual

◆ writeLong()

data::VariantPtr writeLong ( const long i,
const Path & p = Path() )
overridevirtual

◆ writeNDArray()

data::VariantPtr writeNDArray ( const std::vector< int > & shape,
const std::string & typeAsString,
const unsigned char * data,
const Path & p = Path() )
overridevirtual

◆ writeString()

data::VariantPtr writeString ( const std::string & i,
const Path & p = Path() )
overridevirtual

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