template <class Name, class Exp, class Body>
struct eval_let
{
// unspecified
};
This is similar to let
, but it evaluates the substituted expression.
#include <mpllibs/metamonad/eval_let.hpp>
For any n
, x
and f
classes
eval_let<n, x, f>
is equivalent to
eval_syntax<let<n, x, f>>
using boost::mpl::times;
using boost::mpl::plus;
using boost::mpl::int_;
using namespace mpllibs::metamonad::name;
template <class N>
struct my_metafunction :
eval_let<
x, syntax<plus<n, int_<13>>>,
syntax<times<x, x>>
>
{};
Copyright Abel Sinkovics (abel at elte dot hu) 2011. 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