Namespaces | |
| detail | |
Classes | |
| class | ctti_type_index |
| This class is a wrapper that pretends to work exactly like stl_type_index, but does not require RTTI support. More... | |
| class | stl_type_index |
| This class is a wrapper around std::type_info, that workarounds issues and provides much more rich interface. More... | |
| class | type_index_facade |
| This class takes care about the comparison operators, hash functions and ostream operators. More... | |
Typedefs | |
| typedef boost::typeindex::stl_type_index | type_index |
| typedef type_index::type_info_t | type_info |
| Depending on a compiler flags, optimal implementation of type_info will be used as a default boost::typeindex::type_info. More... | |
Functions | |
| template<class T > | |
| const detail::ctti_data & | ctti_construct () BOOST_NOEXCEPT |
| Helper method for getting detail::ctti_data of a template parameter T. More... | |
| template<class CharT , class TriatT , class Derived , class TypeInfo > | |
| std::basic_ostream< CharT, TriatT > & | operator<< (std::basic_ostream< CharT, TriatT > &ostr, const type_index_facade< Derived, TypeInfo > &ind) |
| Ostream operator that will output demangled name. More... | |
| template<class Derived , class TypeInfo > | |
| std::size_t | hash_value (const type_index_facade< Derived, TypeInfo > &lhs) BOOST_NOEXCEPT |
| This free function is used by Boost's unordered containers. More... | |
| template<class T > | |
| type_index | type_id () BOOST_NOEXCEPT |
| Function to get boost::typeindex::type_index for a type T. More... | |
| template<class T > | |
| type_index | type_id_with_cvr () BOOST_NOEXCEPT |
| Function for constructing boost::typeindex::type_index instance for type T. More... | |
| template<class T > | |
| type_index | type_id_runtime (const T &runtime_val) BOOST_NOEXCEPT |
| Function that works exactly like C++ typeid(rtti_val) call, but returns boost::type_index. More... | |
Depending on a compiler flags, optimal implementation of type_info will be used as a default boost::typeindex::type_info.
Could be a std::type_info, boost::typeindex::detail::ctti_data or some user defined class.
type_info is not copyable or default constructible. It is not assignable too!
|
inline |
Helper method for getting detail::ctti_data of a template parameter T.
References n.
|
inline |
This free function is used by Boost's unordered containers.
References boost::detail::const.
|
inline |
Ostream operator that will output demangled name.
|
inline |
Function to get boost::typeindex::type_index for a type T.
Removes const, volatile && and & modifiers from T.
Example:
| T | Type for which type_index must be created. |
| Nothing. |
|
inline |
Function that works exactly like C++ typeid(rtti_val) call, but returns boost::type_index.
Retunrs runtime information about specified type.
Requirements: RTTI available or Base and Derived classes must be marked with BOOST_TYPE_INDEX_REGISTER_CLASS.
Example:
| runtime_val | Varaible which runtime type must be returned. |
| Nothing. |
References boost::typeindex::stl_type_index::type_id_runtime().
|
inline |
Function for constructing boost::typeindex::type_index instance for type T.
Does not remove const, volatile, & and && modifiers from T.
If T has no const, volatile, & and && modifiers, then returns exactly the same result as in case of calling type_id<T>().
Example:
| T | Type for which type_index must be created. |
| Nothing. |