13 #ifndef DD4HEP_DDG4_BASICGRAMMAR_H
14 #define DD4HEP_DDG4_BASICGRAMMAR_H
47 static void invalidConversion(
const std::type_info& from,
const std::type_info& to);
49 static void invalidConversion(
const std::string& value,
const std::type_info& to);
51 virtual const std::type_info&
type()
const = 0;
53 virtual const std::string&
type_name()
const = 0;
55 virtual size_t sizeOf()
const = 0;
57 virtual std::string
str(
const void* ptr)
const = 0;
59 virtual bool fromString(
void* ptr,
const std::string& value)
const = 0;
virtual const std::string & type_name() const =0
Access to the type information name.
virtual const std::type_info & type() const =0
Access to the type information.
virtual std::string str(const void *ptr) const =0
Serialize an opaque value to a string.
Base class describing string evaluation to C++ objects using boost::spirit.
static const BasicGrammar & instance()
Instance factory.
static void invalidConversion(const std::type_info &from, const std::type_info &to)
Error callback on invalid conversion.
virtual size_t sizeOf() const =0
Access the object size (sizeof operator)
virtual ~BasicGrammar()
Default destructor.
virtual bool fromString(void *ptr, const std::string &value) const =0
Set value from serialized string. On successful data conversion TRUE is returned. ...
BasicGrammar()
Default constructor.