]> AND Private Git Repository - canny.git/blob - stc/exp/ml_stc_linux_make_v1.0/include/boost/implicit_cast.hpp
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
b0ff30ae7929d31c31d80927f463628fbd48d393
[canny.git] / stc / exp / ml_stc_linux_make_v1.0 / include / boost / implicit_cast.hpp
1 // Copyright David Abrahams 2003.\r
2 // Distributed under the Boost Software License, Version 1.0. (See\r
3 // accompanying file LICENSE_1_0.txt or copy at\r
4 // http://www.boost.org/LICENSE_1_0.txt)\r
5 #ifndef IMPLICIT_CAST_DWA200356_HPP\r
6 # define IMPLICIT_CAST_DWA200356_HPP\r
7 \r
8 # include <boost/mpl/identity.hpp>\r
9 \r
10 namespace boost {\r
11 \r
12 // implementation originally suggested by C. Green in\r
13 // http://lists.boost.org/MailArchives/boost/msg00886.php\r
14 \r
15 // The use of identity creates a non-deduced form, so that the\r
16 // explicit template argument must be supplied\r
17 template <typename T>\r
18 inline T implicit_cast (typename mpl::identity<T>::type x) {\r
19     return x;\r
20 }\r
21 \r
22 // incomplete return type now is here\r
23 //template <typename T>\r
24 //void implicit_cast (...);\r
25 \r
26 } // namespace boost\r
27 \r
28 \r
29 #endif // IMPLICIT_CAST_DWA200356_HPP\r