SUNphi  1.0
SUNphi::SerializableSequence< S > Class Template Reference

#include <Sequence.hpp>

Inheritance diagram for SUNphi::SerializableSequence< S >:
SUNphi::Binarizable< SerializableSequence< S > >

Public Member Functions

bool isDefault () const
 Returns whether the container is default.
 
void putToDefault ()
 Put to default value.
 
template<typename... TDef>
 SerializableSequence (const char *name, TDef &&...def)
 Creates a serializable vector with name. More...
 
const S & operator() () const
 Access the value.
 
template<typename... Ts>
decltype(auto) operator() (Ts &&...ts)
 
YAML::Node serialize (YAML::Node &node, const bool &onlyNonDefault=false) const
 Returns a YAML node after serializing to it. More...
 
YAML::Node serialize (const bool &onlyNonDefault=false) const
 Returns a YAML node. More...
 
bool deSerialize (const YAML::Node &node)
 Convert from a YAML node. More...
 
SerializableSequenceoperator= (const SerializableSequence &oth)
 Copy assignment operator.
 
SerializableSequence< S > & operator~ ()
 
const SerializableSequence< S > & operator~ () const
 
Binarizerbinarize (B &&out={}) const
 Binarize a Serializable. More...
 
BinarizerdeBinarize (B &&rhs)
 DeBinarize a Serializable. More...
 

Public Attributes

const char * name
 Name used to refer.
 
const S def
 Default value.
 

Private Types

using T = decltype((*static_cast< S * >(nullptr))[0])
 Fundamental type.
 

Detailed Description

template<typename S>
class SUNphi::SerializableSequence< S >

Class providing sequence node for the serializer

Provides name and default value

Definition at line 24 of file Sequence.hpp.

Constructor & Destructor Documentation

template<typename S>
template<typename... TDef>
SUNphi::SerializableSequence< S >::SerializableSequence ( const char *  name,
TDef &&...  def 
)
inline

Creates a serializable vector with name.

Parameters
nameName of the sequence
defInitializer

Definition at line 58 of file Sequence.hpp.

Member Function Documentation

Binarizer& SUNphi::Binarizable< SerializableSequence< S > >::binarize ( B &&  out = {}) const
inlineinherited

Binarize a Serializable.

Parameters
outOutput

Definition at line 221 of file Binarize.hpp.

Binarizer& SUNphi::Binarizable< SerializableSequence< S > >::deBinarize ( B &&  rhs)
inlineinherited

DeBinarize a Serializable.

Parameters
rhsInput

Definition at line 230 of file Binarize.hpp.

template<typename S>
bool SUNphi::SerializableSequence< S >::deSerialize ( const YAML::Node &  node)
inline

Convert from a YAML node.

Parameters
nodeNode from which to convert

Definition at line 121 of file Sequence.hpp.

template<typename S>
template<typename... Ts>
decltype(auto) SUNphi::SerializableSequence< S >::operator() ( Ts &&...  ts)
inline

Overload the operator() const method passing all args

Parameters
tsArguments

Definition at line 74 of file Sequence.hpp.

const SerializableSequence< S > & SUNphi::Binarizable< SerializableSequence< S > >::operator~ ( ) const
inlineinherited

Constant cast operator to class T

Definition at line 217 of file Binarize.hpp.

SerializableSequence< S > & SUNphi::Binarizable< SerializableSequence< S > >::operator~ ( )
inlineinherited

Cast operator to class T

Definition at line 217 of file Binarize.hpp.

template<typename S>
YAML::Node SUNphi::SerializableSequence< S >::serialize ( YAML::Node &  node,
const bool &  onlyNonDefault = false 
) const
inline

Returns a YAML node after serializing to it.

Create the subnode

Definition at line 77 of file Sequence.hpp.

template<typename S>
YAML::Node SUNphi::SerializableSequence< S >::serialize ( const bool &  onlyNonDefault = false) const
inline

Returns a YAML node.

Returned value

Definition at line 110 of file Sequence.hpp.


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