]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/boost/phoenix/object/detail/target.hpp
update sources to v12.2.3
[ceph.git] / ceph / src / boost / boost / phoenix / object / detail / target.hpp
1 /*==============================================================================
2 Copyright (c) 2001-2010 Joel de Guzman
3 Copyright (c) 2010 Thomas Heller
4
5 Distributed under the Boost Software License, Version 1.0. (See accompanying
6 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7 ==============================================================================*/
8 #ifndef BOOST_PHOENIX_OBJECT_DETAIL_CAST_TARGET_HPP
9 #define BOOST_PHOENIX_OBJECT_DETAIL_CAST_TARGET_HPP
10
11 namespace boost { namespace phoenix
12 {
13 namespace detail
14 {
15 template <typename T>
16 struct target
17 {
18 typedef T type;
19 };
20
21 namespace result_of
22 {
23 template <typename T>
24 struct target
25 {
26 typedef
27 typename proto::detail::uncvref<
28 typename proto::result_of::value<T>::type
29 >::type
30 target_type;
31 typedef typename target_type::type type;
32 };
33
34 template <typename T>
35 struct target<T const&>
36 : target<T>
37 {};
38
39 template <typename T>
40 struct target<T&>
41 : target<T>
42 {};
43 }
44 }
45 }}
46
47 #endif