diff options
Diffstat (limited to 'boost/dll/detail/demangling/mangled_storage_base.hpp')
-rw-r--r-- | boost/dll/detail/demangling/mangled_storage_base.hpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/boost/dll/detail/demangling/mangled_storage_base.hpp b/boost/dll/detail/demangling/mangled_storage_base.hpp index e4bf3753f9..b9cfd64fa2 100644 --- a/boost/dll/detail/demangling/mangled_storage_base.hpp +++ b/boost/dll/detail/demangling/mangled_storage_base.hpp @@ -12,7 +12,8 @@ #include <map> #include <boost/dll/detail/demangling/demangle_symbol.hpp> #include <boost/dll/library_info.hpp> -#include <boost/type_index/stl_type_index.hpp> +#include <boost/type_index/ctti_type_index.hpp> +#include <boost/type_traits/remove_reference.hpp> namespace boost { namespace dll { namespace detail { @@ -33,7 +34,7 @@ struct mangled_storage_base protected: std::vector<entry> storage_; ///if a unknown class is imported it can be overloaded by this type - std::map<boost::typeindex::stl_type_index, std::string> aliases_; + std::map<boost::typeindex::ctti_type_index, std::string> aliases_; public: void assign(const mangled_storage_base & storage) { @@ -50,11 +51,12 @@ public: storage_.clear(); aliases_.clear(); } - const std::vector<entry> & get_storage() const {return storage_;}; + std::vector<entry> & get_storage() {return storage_;}; template<typename T> std::string get_name() const { - auto tx = boost::typeindex::stl_type_index::type_id<T>(); + using boost::typeindex::ctti_type_index; + auto tx = ctti_type_index::type_id<T>(); auto val = (aliases_.count(tx) > 0) ? aliases_.at(tx) : tx.pretty_name(); return val; } @@ -93,7 +95,7 @@ public: template<typename Alias> void add_alias(const std::string& name) { aliases_.emplace( - boost::typeindex::stl_type_index::type_id<Alias>(), + boost::typeindex::ctti_type_index::type_id<Alias>(), name ); } @@ -115,4 +117,4 @@ public: }}} -#endif /* INCLUDE_BOOST_DLL_DETAIL_MANGLE_STORAGE_HPP_ */ +#endif /* BOOST_DLL_DETAIL_MANGLE_STORAGE_HPP_ */ |