8 struct CreateParserInPlaceFunction {
9 template<
typename T, concepts::ParserContext Context>
10 requires(concepts::TagInvocable<CreateParserInPlaceFunction, InPlaceType<T>, Context&> ||
11 concepts::TagInvocable<CreateParserInPlaceFunction, InPlaceType<T>>)
12 constexpr auto operator()(InPlaceType<T>, Context& context)
const -> concepts::Parser<Context>
auto {
13 if constexpr (concepts::TagInvocable<CreateParserInPlaceFunction, InPlaceType<T>, Context&>) {
21 requires(concepts::TagInvocable<CreateParserInPlaceFunction, InPlaceType<T>>)
22 constexpr auto operator()(InPlaceType<T>)
const {
32template<
typename T,
typename Context>
39 struct CreateParserFunction {
40 template<concepts::ParserContext Context>
42 constexpr auto operator()(Context& context)
const {
46 constexpr auto operator()() const
55constexpr inline auto create_parser = detail::CreateParserFunction<T> {};
Definition create_parser.h:33
Definition any_storable.h:9
constexpr tag_invoke_detail::TagInvokeFn tag_invoke
Definition tag_invoke.h:22
Definition code_point_parser.h:10
constexpr auto create_parser
Definition create_parser.h:55
constexpr auto create_parser_in_place
Definition create_parser.h:28
Definition any_storable.h:9
constexpr auto in_place_type
Definition in_place_type.h:12