Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-12-16 09:42:51

0001 // Copyright Antony Polukhin, 2020-2025.
0002 //
0003 // Distributed under the Boost Software License, Version 1.0. (See
0004 // accompanying file LICENSE_1_0.txt or copy at
0005 // http://www.boost.org/LICENSE_1_0.txt)
0006 
0007 // See http://www.boost.org/libs/any for Documentation.
0008 
0009 #ifndef BOOST_ANYS_BAD_ANY_CAST_HPP_INCLUDED
0010 #define BOOST_ANYS_BAD_ANY_CAST_HPP_INCLUDED
0011 
0012 #include <boost/config.hpp>
0013 #ifdef BOOST_HAS_PRAGMA_ONCE
0014 #   pragma once
0015 #endif
0016 
0017 #ifndef BOOST_NO_RTTI
0018 #include <typeinfo>
0019 #endif
0020 
0021 #include <stdexcept>
0022 
0023 namespace boost {
0024 
0025 /// The exception thrown in the event of a failed boost::any_cast of
0026 /// an boost::any, boost::anys::basic_any or boost::anys::unique_any value.
0027 class BOOST_SYMBOL_VISIBLE bad_any_cast :
0028 #ifndef BOOST_NO_RTTI
0029     public std::bad_cast
0030 #else
0031     public std::exception
0032 #endif
0033 {
0034 public:
0035     const char * what() const BOOST_NOEXCEPT_OR_NOTHROW override
0036     {
0037         return "boost::bad_any_cast: "
0038                "failed conversion using boost::any_cast";
0039     }
0040 };
0041 
0042 } // namespace boost
0043 
0044 
0045 #endif // #ifndef BOOST_ANYS_BAD_ANY_CAST_HPP_INCLUDED