runtime_cast.hpp 924 B

12345678910111213141516171819202122232425262728
  1. //
  2. // Copyright (c) Chris Glover, 2016.
  3. //
  4. //
  5. // Distributed under the Boost Software License, Version 1.0. (See accompanying
  6. // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  7. //
  8. #ifndef BOOST_TYPE_INDEX_RUNTIME_CAST_HPP
  9. #define BOOST_TYPE_INDEX_RUNTIME_CAST_HPP
  10. /// \file runtime_cast.hpp
  11. /// \brief Contains the basic utilities necessary to fully emulate
  12. /// dynamic_cast for language level constructs (raw pointers and references).
  13. ///
  14. /// boost::typeindex::runtime_cast is a drop in replacement for dynamic_cast
  15. /// that can be used in situations where traditional rtti is either unavailable
  16. /// or undesirable.
  17. #include <boost/type_index/runtime_cast/register_runtime_class.hpp>
  18. #include <boost/type_index/runtime_cast/pointer_cast.hpp>
  19. #include <boost/type_index/runtime_cast/reference_cast.hpp>
  20. #ifdef BOOST_HAS_PRAGMA_ONCE
  21. # pragma once
  22. #endif
  23. #endif // BOOST_TYPE_INDEX_RUNTIME_CAST_HPP