/*============================================================================== Copyright (c) 2001-2010 Joel de Guzman Copyright (c) 2010 Thomas Heller 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) ==============================================================================*/ #ifndef BOOST_PHOENIX_OBJECT_DETAIL_CAST_TARGET_HPP #define BOOST_PHOENIX_OBJECT_DETAIL_CAST_TARGET_HPP namespace boost { namespace phoenix { namespace detail { template struct target { typedef T type; }; namespace result_of { template struct target { typedef typename proto::detail::uncvref< typename proto::result_of::value::type >::type target_type; typedef typename target_type::type type; }; template struct target : target {}; template struct target : target {}; } } }} #endif