boost::proto::function::impl
template<typename Expr, typename State, typename Data> struct impl : proto::pass_through<function>::template impl<Expr, State, Data> { };