5 #ifndef LODESTAR_DYNAMICDATA_HPP
6 #define LODESTAR_DYNAMICDATA_HPP
8 #include "DynamicDataTypes.hpp"
16 template <
typename TType>
19 data.template operator=(x);
24 static std::ostream& operator<<(std::ostream& os,
const DynamicData dd)
26 switch (dd.data.tag()) {
28 case DynamicDataTypes::Types::intType:
29 os << dd.data.as<
int>();
31 case DynamicDataTypes::Types::boolType:
32 os << dd.data.as<
bool>();
34 case DynamicDataTypes::Types::floatType:
35 os << dd.data.as<
float>();
37 case DynamicDataTypes::Types::doubleType:
38 os << dd.data.as<
double>();
40 case DynamicDataTypes::Types::longType:
41 os << dd.data.as<
long>();
43 case DynamicDataTypes::Types::stringType:
44 os << dd.data.as<std::string>();
53 #endif //LODESTAR_DYNAMICDATA_HPP