// Copyright (C) 2001-2003 // Mac Murrett // // 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) // // See http://www.boost.org for most recent version including documentation. #ifndef BOOST_FORCE_CAST_MJM012402_HPP #define BOOST_FORCE_CAST_MJM012402_HPP #include namespace boost { namespace detail { namespace thread { // force_cast will convert anything to anything. // general case template inline Return_Type &force_cast(Argument_Type &rSrc) { return(*reinterpret_cast(&rSrc)); } // specialization for const template inline const Return_Type &force_cast(const Argument_Type &rSrc) { return(*reinterpret_cast(&rSrc)); } } // namespace thread } // namespace detail } // namespace boost #endif // BOOST_FORCE_CAST_MJM012402_HPP