![]() |
Home | Libraries | People | FAQ | More |
boost::proto::pod_generator — A generator that wraps expressions passed to it in the specified extension wrapper and uses aggregate initialization for the wrapper.
// In header: <boost/proto/generate.hpp> template<template< typename > class Extends> struct pod_generator : proto::callable { template<typename This, typename Expr> struct result<This(Expr)> { // types typedef Extends< Expr > type; }; // public member functions template<typename Expr> Extends< Expr > operator()(Expr const &) const; };
Generators are intended for use as the first template parameter to the proto::domain<> class template and control if and how expressions within that domain are to be customized. proto::pod_generator<> wraps each expression passed to it in the Extends<> wrapper, and uses aggregate initialzation for the wrapped object.