@@ -117,6 +117,12 @@ any::~any() {
117117 }
118118 template auto any::cast<string>() const -> const string&;
119119
120+ template <typename T>
121+ auto any::cast() const -> typename std::enable_if<std::is_same<T, const char*>::value, const T>::type {
122+ RETURN_VALUE(Type::String, s->c_str(),)
123+ }
124+ template auto any::cast<const char*>() const -> const char* const;
125+
120126 template <typename T>
121127 auto any::cast() const -> typename std::enable_if<std::is_same<T, map>::value, const T&>::type {
122128 RETURN_VALUE(Type::Map, m, *)