CONCEPT CALLABLE(7)

NAME
CallableTransform

DESCRIPTION

A CallableTransform is a function type or a function pointer type where the return type Fn is a PolymorphicFunctionObject and the arguments are Transforms. is_callable< Fn >::value must be true. The CallableTransform, when applied, has the effect of invoking the polymorphic function object Fn, passing as arguments the result(s) of applying transform(s) Tn.

ASSOCIATED TYPES

    &#8226; result_type

    boost::result_of<Fn(Transform<Tn, Expr, State, Data>::result_type...)>::type
    The result of applying the CallableTransform.

NOTATION

Fn
    A type playing the role of polymorphic-function-object-type in the CallableTransform concept.

Tn
    A type playing the role of transform-type in the CallableTransform concept.

Expr
    A type playing the role of expression-type in the CallableTransform concept.

State
    A type playing the role of state-type in the CallableTransform concept.

Data
    A type playing the role of data-type in the CallableTransform concept.

fn
    Object of type Fn

expr
    Object of type Expr

state
    Object of type State

data
    Object of type Data

VALID EXPRESSIONS
Name | Expression | Type | Semantics
Apply Transform | when< _, Fn(Tn...)>()(expr, state, data) | result_type | Applies the transform.

MODELS

    &#8226; boost::proto::_child(boost::proto::_left)