| Home | Libraries | People | FAQ | More

## Macro BOOST_PROTO_ASSERT_MATCHES

BOOST_PROTO_ASSERT_MATCHES — Assert at compile time that a particular expression matches the specified grammar.

## Synopsis

    // In header: <boost/proto/debug.hpp>

    BOOST_PROTO_ASSERT_MATCHES(expr, Grammar)

## Description

Use `BOOST_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;

    BOOST_PROTO_ASSERT_MATCHES( proto::lit(1) + 42, PlusInts );

See also:

- `proto::assert_matches()`
- `proto::assert_matches_not()`
- `BOOST_PROTO_ASSERT_MATCHES_NOT()`