metaparse/doc/reject.qbk
2015-09-06 12:30:27 +02:00

52 lines
1.2 KiB
Plaintext

[#reject]
[section reject]
[h1 Synopsis]
template <class Msg, class Pos>
struct reject;
This is a [link metaprogramming_value template metaprogramming value].
[table Arguments
[[Name] [Type]]
[[`Msg`] [[link metaprogramming_value template metaprogramming value]]]
[[`Pos`] [[link source_position source position]]]
]
[h1 Description]
Values representing a failed parser application. It behaves as a
[link lazy_metafunction lazy template metafunction]: when it is evaluated as a
metafunction, it returns itself with its arguments evaluated. See expression
semantics for further details.
[note
Note that for backward compatibility when `Msg::type` is not defined,
`reject<....>::type` does not evaluate `Msg`. For example
`reject<int, start>::type` is `reject<int, start::type>`. Using types that are
not template metaprogramming values as `Msg` is deprecated and will not work
in future versions of the library.
]
[h1 Expressions semantics]
For any `m` template metaprogramming value and `p` source position the following
are equivalent:
reject<m, p>::type
reject<m, p::type>
[h1 Header]
#include <boost/metaparse/reject.hpp>
[h1 Operations]
* [link get_position `get_position`]
* [link get_message `get_message`]
[endsect]