11#include "ada/expected.h"
22#if ADA_INCLUDE_URL_PATTERN
23template <url_pattern_regex::regex_concept regex_prov
ider>
25struct url_pattern_options;
27enum class errors : uint8_t;
41template <
typename result_type = url_aggregator>
42result_type
parse_url(std::string_view user_input,
43 const result_type* base_url =
nullptr);
50template <
typename result_type = url_aggregator,
bool store_values = true>
52 const result_type* base_url =
nullptr);
59#if ADA_INCLUDE_URL_PATTERN
60template <url_pattern_regex::regex_concept regex_prov
ider>
61tl::expected<url_pattern<regex_provider>,
errors> parse_url_pattern_impl(
62 std::variant<std::string_view, url_pattern_init>&& input,
63 const std::string_view* base_url,
const url_pattern_options* options);
Includes the definitions for supported parsers.
template url parse_url< url >(std::string_view user_input, const url *base_url)
result_type parse_url(std::string_view user_input, const result_type *base_url=nullptr)
template url parse_url_impl< url >(std::string_view user_input, const url *base_url)
template url_aggregator parse_url_impl< url_aggregator >(std::string_view user_input, const url_aggregator *base_url)
template url_aggregator parse_url< url_aggregator >(std::string_view user_input, const url_aggregator *base_url)
result_type parse_url_impl(std::string_view user_input, const result_type *base_url=nullptr)
Generic URL struct reliant on std::string instantiation.
Declaration for the url_pattern_init implementation.