File indexing completed on 2024-11-16 09:26:07
0001
0002
0003
0004
0005
0006
0007
0008 #ifndef BOOST_PHOENIX_OBJECT_DETAIL_CAST_TARGET_HPP
0009 #define BOOST_PHOENIX_OBJECT_DETAIL_CAST_TARGET_HPP
0010
0011 namespace boost { namespace phoenix
0012 {
0013 namespace detail
0014 {
0015 template <typename T>
0016 struct target
0017 {
0018 typedef T type;
0019 };
0020
0021 namespace result_of
0022 {
0023 template <typename T>
0024 struct target
0025 {
0026 typedef
0027 typename proto::detail::uncvref<
0028 typename proto::result_of::value<T>::type
0029 >::type
0030 target_type;
0031 typedef typename target_type::type type;
0032 };
0033
0034 template <typename T>
0035 struct target<T const&>
0036 : target<T>
0037 {};
0038
0039 template <typename T>
0040 struct target<T&>
0041 : target<T>
0042 {};
0043 }
0044 }
0045 }}
0046
0047 #endif