Go to the source code of this file.
Classes | |
struct | lexy::_bound_cb< Callback, BoundArgs > |
struct | lexy::_bound_sink< Sink, BoundArgs > |
struct | lexy::_default |
struct | lexy::_nth_value< N, T, Fn > |
struct | lexy::_nth_value< N, T, void > |
struct | lexy::_nth_value< N, void, Fn > |
struct | lexy::_nth_value< N, void, void > |
struct | lexy::_parse_state< Fn > |
struct | lexy::_parse_state< void > |
struct | lexy::_sink_wrapper< Sink > |
struct | lexy::_bound_cb< Callback, BoundArgs >::_with_state< State > |
struct | lexy::_detail::all_values_placeholder |
struct | lexy::_detail::no_bind_state |
struct | lexy::_detail::placeholder_base |
Namespaces | |
lexy | |
lexy::_detail | |
lexy::placeholders | |
Functions | |
template<std::size_t Idx, typename Fn , typename... BoundArgs, typename State , typename... ActualArgs, std::size_t... ActualIdx, typename... ProducedArgs> | |
constexpr decltype(auto) | lexy::_detail::_invoke_bound (Fn &&fn, const _detail::tuple< BoundArgs... > &bound_args, State &state, const _detail::tuple< ActualArgs... > &actual_args, _detail::index_sequence< ActualIdx... >, ProducedArgs &&... produced_args) |
template<typename Callback , typename... BoundArgs> | |
constexpr auto | lexy::bind (Callback &&callback, BoundArgs &&... args) |
Binds the operator() of the callback with pre-defined/remapped values. More... | |
template<typename Sink , typename... BoundArgs> | |
constexpr auto | lexy::bind_sink (Sink &&sink, BoundArgs &&... args) |
template<typename BoundArg , typename State , typename... Args> | |
constexpr decltype(auto) | lexy::_detail::expand_bound_arg (const BoundArg &bound, State &state, const _detail::tuple< Args... > &actual_args) |
template<typename Fn , typename... BoundArgs, std::size_t... Idx, typename State , typename... Args> | |
constexpr decltype(auto) | lexy::_detail::invoke_bound (Fn &&fn, const _detail::tuple< BoundArgs... > &bound_args, _detail::index_sequence< Idx... >, State &state, Args &&... args) |
Variables | |
constexpr auto | lexy::placeholders::_1 = nth_value<1> |
constexpr auto | lexy::placeholders::_2 = nth_value<2> |
constexpr auto | lexy::placeholders::_3 = nth_value<3> |
constexpr auto | lexy::placeholders::_4 = nth_value<4> |
constexpr auto | lexy::placeholders::_5 = nth_value<5> |
constexpr auto | lexy::placeholders::_6 = nth_value<6> |
constexpr auto | lexy::placeholders::_7 = nth_value<7> |
constexpr auto | lexy::placeholders::_8 = nth_value<8> |
template<typename T > | |
constexpr auto | lexy::_detail::is_placeholder = std::is_base_of_v<placeholder_base, T> |
template<std::size_t N> | |
constexpr auto | lexy::nth_value = _nth_value<N, void, void>{} |
Placeholder for bind that expands to the nth value produced by the rule. More... | |
constexpr auto | lexy::parse_state = _parse_state<void>{} |
constexpr auto | lexy::values = _detail::all_values_placeholder{} |
Placeholder for bind that expands to all values produced by the rule. More... | |