52 std::vector<boost::any> val(_val);
53 if (val.size() != 2 || val[0].type() !=
typeid(std::string))
ThrowPretty(
"Invalid property initialization!");
54 name_ = boost::any_cast<std::string>(val[0]);
69 for (
auto& prop : properties)
84 WARNING(
"Property '" << prop.
GetName() <<
"' already added - overriding.");
std::vector< std::string > GetKeys(std::map< std::string, T > map)
bool IsStringType() const
boost::any GetProperty(const std::string &name) const
void SetProperty(const std::string &name, boost::any)
bool IsInitializerVectorType() const
const std::string & GetName() const
void SetName(const std::string &name)
Property(const std::string &prop_name)
std::string GetType() const
std::map< std::string, Property > properties_
bool HasProperty(const std::string &name) const
void AddProperty(const Property &prop)
const std::string & GetName() const
std::vector< std::string > GetPropertyNames() const
std::string GetTypeName(const std::type_info &type)
#define WARNING(x)
With endline.