A PrimitiveTransform that uses make<> to build a CallableTransform, and then uses call<> to apply it.
More...
#include <lazy.hpp>


Classes | |
| struct | impl |
Public Types | |
| typedef lazy< Object > | transform_type |
Public Member Functions | |
| BOOST_PROTO_CALLABLE () typedef X proto_is_transform_ | |
| BOOST_FORCEINLINE boost::proto::detail::apply_transform < transform_type(Expr const &)> ::result_type | operator() (Expr &&e) const |
| BOOST_FORCEINLINE boost::proto::detail::apply_transform < transform_type(Expr const &, State const &)> ::result_type | operator() (Expr &&e, State &&s) const |
| BOOST_FORCEINLINE boost::proto::detail::apply_transform < transform_type(Expr const &, State const &, Data const &)> ::result_type | operator() (Expr &&e, State &&s, Data &&d) const |
A PrimitiveTransform that uses make<> to build a CallableTransform, and then uses call<> to apply it.
lazy<> is useful as a higher-order transform, when the transform to be applied depends on the current state of the transformation. The invocation of the make<> transform evaluates any nested transforms, and the resulting type is treated as a CallableTransform, which is evaluated with call<>.
|
inherited |
|
inherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |