diff -r 000000000000 -r 044383f39525 imgtools/imglib/boostlibrary/boost/thread/detail/move.hpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/imgtools/imglib/boostlibrary/boost/thread/detail/move.hpp Tue Oct 27 16:36:35 2009 +0000 @@ -0,0 +1,60 @@ +// 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) +// (C) Copyright 2007-8 Anthony Williams + +#ifndef BOOST_THREAD_MOVE_HPP +#define BOOST_THREAD_MOVE_HPP + +#ifndef BOOST_NO_SFINAE +#include +#include +#endif + +#include + +namespace boost +{ + namespace detail + { + template + struct thread_move_t + { + T& t; + explicit thread_move_t(T& t_): + t(t_) + {} + + T& operator*() const + { + return t; + } + + T* operator->() const + { + return &t; + } + private: + void operator=(thread_move_t&); + }; + } + +#ifndef BOOST_NO_SFINAE + template + typename enable_if >, T >::type move(T& t) + { + return T(detail::thread_move_t(t)); + } +#endif + + template + detail::thread_move_t move(detail::thread_move_t t) + { + return t; + } + +} + +#include + +#endif