From 0fbe357e3e2d3df89ceb2e8992d31bf19e0099dd Mon Sep 17 00:00:00 2001 From: John Fletcher Date: Mon, 2 Feb 2015 21:37:25 +0000 Subject: [PATCH] phoenix/core/is_value.hpp New file --- include/boost/phoenix/core/is_value.hpp | 54 +++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 include/boost/phoenix/core/is_value.hpp diff --git a/include/boost/phoenix/core/is_value.hpp b/include/boost/phoenix/core/is_value.hpp new file mode 100644 index 0000000..1cc4f01 --- /dev/null +++ b/include/boost/phoenix/core/is_value.hpp @@ -0,0 +1,54 @@ +/*============================================================================== + Copyright (c) 2005-2010 Joel de Guzman + Copyright (c) 2015 John Fletcher + + 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_CORE_IS_VALUE_HPP +#define BOOST_PHOENIX_CORE_IS_VALUE_HPP + +#include + +// Copied from is_actor.hpp + +// Note to Thomas and any future maintainer: please make this as +// lightweight as possible (as it is right now). + +namespace boost { namespace phoenix +{ +/////////////////////////////////////////////////////////////////////////////// +// +// is_value +// +// Tests if T is a value. Evaluates to mpl::true_ or mpl::false_ +// +/////////////////////////////////////////////////////////////////////////////// + + namespace expression { + template + struct value; + } + + template + struct is_value + : mpl::false_ + {}; + + template + struct is_value + : is_value + {}; + + template + struct is_value + : is_value + {}; + + template + struct is_value > + : mpl::true_ + {}; + }} + +#endif