Iros
 
Loading...
Searching...
No Matches
parse.h
Go to the documentation of this file.
1#pragma once
2
7
8namespace di::parser {
9namespace detail {
10 template<typename T>
12 template<concepts::IntoParserContext U, typename Context = meta::AsParserContext<U>>
14 constexpr auto operator()(U&& input) const {
15 auto context = into_parser_context(util::forward<U>(input));
16 auto parser = sequence(create_parser<T>(context), eof());
17 return parser.parse(context);
18 }
19 };
20}
21
22template<typename T>
23constexpr inline auto parse = detail::ParseFunction<T> {};
24}
25
26namespace di {
27using parser::parse;
28}
Definition create_parser.h:33
Definition zstring_parser.h:10
Definition zstring_parser.h:9
constexpr auto create_parser
Definition create_parser.h:55
constexpr auto into_parser_context
Definition into_parser_context.h:21
constexpr auto eof
Definition eof_parser.h:27
constexpr auto parse
Definition parse.h:23
constexpr auto sequence
Definition sequence.h:71
Definition zstring_parser.h:9