/extlibs/Boost/include/boost/exception/detail/error_info_impl.hpp
https://bitbucket.org/hugoruscitti/pilascpp · C++ Header · 75 lines · 56 code · 16 blank · 3 comment · 3 complexity · 1a5a9ee6a3be18b0114ab1f1b3ffc902 MD5 · raw file
- //Copyright (c) 2006-2010 Emil Dotchevski and Reverge Studios, Inc.
- //Distributed under the Boost Software License, Version 1.0. (See accompanying
- //file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- #ifndef UUID_CE6983AC753411DDA764247956D89593
- #define UUID_CE6983AC753411DDA764247956D89593
- #if defined(__GNUC__) && !defined(BOOST_EXCEPTION_ENABLE_WARNINGS)
- #pragma GCC system_header
- #endif
- #if defined(_MSC_VER) && !defined(BOOST_EXCEPTION_ENABLE_WARNINGS)
- #pragma warning(push,1)
- #endif
- #include <string>
- namespace
- boost
- {
- namespace
- exception_detail
- {
- class
- error_info_base
- {
- public:
- virtual std::string tag_typeid_name() const = 0;
- virtual std::string value_as_string() const = 0;
- protected:
- ~error_info_base() throw()
- {
- }
- };
- }
- template <class Tag,class T>
- class
- error_info:
- public exception_detail::error_info_base
- {
- public:
- typedef T value_type;
- error_info( value_type const & value );
- ~error_info() throw();
- value_type const &
- value() const
- {
- return value_;
- }
- value_type &
- value()
- {
- return value_;
- }
- private:
- std::string tag_typeid_name() const;
- std::string value_as_string() const;
- value_type value_;
- };
- }
- #if defined(_MSC_VER) && !defined(BOOST_EXCEPTION_ENABLE_WARNINGS)
- #pragma warning(pop)
- #endif
- #endif