Go to the source code of this file.
|
template<typename Production , typename Action > |
using | lexy::_subgrammar_for = _subgrammar< Production, typename Action::handler, typename Action::state, lexy::input_reader< typename Action::input > > |
|
|
template<typename Production , typename T > |
constexpr auto | lexyd::subgrammar = _subg<Production, T>{} |
|
◆ LEXY_DECLARE_SUBGRAMMAR
#define LEXY_DECLARE_SUBGRAMMAR |
( |
|
Production | ) |
|
Value:
{ \
template <typename Handler, typename State, typename Reader> \
struct _subgrammar<Production, Handler, State, Reader> \
{ \
template <typename T> \
static
bool parse(_detail::lazy_init<T>& value, \
_detail::parse_context_control_block<Handler, State>* control_block, \
Reader& reader); \
}; \
}
Definition at line 20 of file subgrammar.hpp.
◆ LEXY_DEFINE_SUBGRAMMAR
#define LEXY_DEFINE_SUBGRAMMAR |
( |
|
Production | ) |
|
Value: template <typename Handler, typename State, typename Reader> \
template <typename T> \
bool ::lexy::_subgrammar<Production, Handler, State, Reader>:: \
Reader& reader) \
{ \
lexy::_pc<Handler, State, Production> context(control_block); \
}
Definition at line 33 of file subgrammar.hpp.
◆ LEXY_INSTANTIATE_SUBGRAMMAR
#define LEXY_INSTANTIATE_SUBGRAMMAR |
( |
|
Production, |
|
|
|
... |
|
) |
| |
Value: template bool ::lexy::_subgrammar_for<Production, __VA_ARGS__> \
typename __VA_ARGS__::state, Production>> \
typename __VA_ARGS__::handler, typename __VA_ARGS__::state, Production>>&, \
typename __VA_ARGS__::state>*, \
Definition at line 47 of file subgrammar.hpp.
constexpr auto parse(const Input &input, const ErrorCallback &callback)
Parses the production into a value, invoking the callback on error.