#ifndef BOOST_PHOENIX_CORE_IS_VALUE_HPP
#define BOOST_PHOENIX_CORE_IS_VALUE_HPP
#include <boost/mpl/bool.hpp>
namespace boost { namespace phoenix
{
namespace expression {
template <typename T>
struct value;
}
template <typename T, typename Enable = void>
struct is_value
: mpl::false_
{};
template <typename T>
struct is_value<T const>
: is_value<T>
{};
template <typename T>
struct is_value<T &>
: is_value<T>
{};
template <typename T>
struct is_value< expression::value<T> >
: mpl::true_
{};
template <typename T>
bool is_val(T const & )
{
return is_value<T>::value;
}
}}
#endif