1[#reject] 2[section reject] 3 4[h1 Synopsis] 5 6 template <class Msg, class Pos> 7 struct reject; 8 9This is a [link metaprogramming_value template metaprogramming value]. 10 11[table Arguments 12 [[Name] [Type]] 13 [[`Msg`] [[link metaprogramming_value template metaprogramming value]]] 14 [[`Pos`] [[link source_position source position]]] 15] 16 17[h1 Description] 18 19Values representing a failed parser application. It behaves as a 20[link lazy_metafunction lazy template metafunction]: when it is evaluated as a 21metafunction, it returns itself with its arguments evaluated. See expression 22semantics for further details. 23 24[note 25Note that for backward compatibility when `Msg::type` is not defined, 26`reject<....>::type` does not evaluate `Msg`. For example 27`reject<int, start>::type` is `reject<int, start::type>`. Using types that are 28not template metaprogramming values as `Msg` is deprecated and will not work 29in future versions of the library. 30] 31 32[h1 Expressions semantics] 33 34For any `m` template metaprogramming value and `p` source position the following 35are equivalent: 36 37 reject<m, p>::type 38 39 reject<m, p::type> 40 41[h1 Header] 42 43 #include <boost/metaparse/reject.hpp> 44 45[h1 Operations] 46 47* [link get_position `get_position`] 48* [link get_message `get_message`] 49 50[endsect] 51 52