...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
boost::proto::assert_matches — Assert at compile time that a particular expression matches the specified grammar.
// In header: <boost/proto/debug.hpp> template<typename Grammar, typename Expr> void assert_matches(Expr const & expr);
Use proto::assert_matches()
to assert at compile-time that
an expression matches a grammar.
Example:
typedef proto::plus< proto::terminal< int >, proto::terminal< int > > PlusInts;
proto::assert_matches<PlusInts>( proto::lit
(1) + 42 );
See also:
Notes: |
Equivalent to |