12template <
class result_type>
 
   14    std::string_view input, 
const result_type* base_url) {
 
 
   24                                     const url* base_url = 
nullptr);
 
   26    std::string_view input, 
const url_aggregator* base_url = 
nullptr);
 
   30  std::string tmp_buffer;
 
   31  std::string_view internal_input;
 
   32  if (unicode::has_tabs_or_newline(input)) {
 
   34    helpers::remove_ascii_tab_or_newline(tmp_buffer);
 
   35    internal_input = tmp_buffer;
 
   37    internal_input = input;
 
   40  if (internal_input.empty()) {
 
   42  } 
else if ((internal_input[0] == 
'/') || (internal_input[0] == 
'\\')) {
 
   43    helpers::parse_prepared_path(internal_input.substr(1),
 
   48  return "file://" + path;
 
 
   51bool can_parse(std::string_view input, 
const std::string_view* base_input) {
 
   55  if (base_input != 
nullptr) {
 
   57        *base_input, 
nullptr);
 
   61    base_pointer = &base_aggregator;
 
 
Common definitions for cross-platform compiler support.
 
result_type parse_url_impl(std::string_view user_input, const result_type *base_url=nullptr)
 
bool can_parse(std::string_view input, const std::string_view *base_input=nullptr)
 
template ada::result< url > parse< url >(std::string_view input, const url *base_url)
 
std::string href_from_file(std::string_view path)
 
ada_warn_unused std::string to_string(encoding_type type)
 
template ada::result< url_aggregator > parse< url_aggregator >(std::string_view input, const url_aggregator *base_url)
 
tl::expected< result_type, ada::errors > result
 
ada_warn_unused ada::result< result_type > parse(std::string_view input, const result_type *base_url=nullptr)
 
Definitions for the parser.
 
Declaration for the basic URL definitions.