Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::proto::call< Fun * > Struct Template Reference

A specialization that treats function pointer Transforms as if they were function type Transforms. More...

#include <call.hpp>

Inheritance diagram for boost::proto::call< Fun * >:
Collaboration diagram for boost::proto::call< Fun * >:

Detailed Description

template<typename Fun>
struct boost::proto::call< Fun * >

A specialization that treats function pointer Transforms as if they were function type Transforms.

This specialization requires that Fun is actually a function type.

This specialization is required for nested transforms such as call<T0(T1(_))>. In C++, functions that are used as parameters to other functions automatically decay to funtion pointer types. In other words, the type T0(T1(_)) is indistinguishable from T0(T1(*)(_)). This specialization is required to handle these nested function pointer type transforms properly.


The documentation for this struct was generated from the following file: