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)
void SetProperty(const std::string &name, boost::any)
std::string GetType() const
bool IsStringType() const
void SetName(const std::string &name)
boost::any GetProperty(const std::string &name) const
std::vector< std::string > GetPropertyNames() const
Property(const std::string &prop_name)
std::map< std::string, Property > properties_
void AddProperty(const Property &prop)
const std::string & GetName() const
std::string GetTypeName(const std::type_info &type)
bool IsInitializerVectorType() const
bool HasProperty(const std::string &name) const
const std::string & GetName() const
#define WARNING(x)
With endline.