Ada 2.9.2
Fast spec-compliant URL parser
Loading...
Searching...
No Matches
ada Namespace Reference

Namespaces

namespace  character_sets
 Includes the definitions for unicode character sets.
 
namespace  checkers
 Includes the definitions for validation functions.
 
namespace  helpers
 Includes the definitions for helper functions.
 
namespace  idna
 
namespace  parser
 Includes the definitions for supported parsers.
 
namespace  scheme
 Includes the scheme declarations.
 
namespace  serializers
 Includes the definitions for URL serializers.
 
namespace  unicode
 Includes the declarations for unicode operations.
 

Classes

struct  url
 Generic URL struct reliant on std::string instantiation. More...
 
struct  url_aggregator
 Lightweight URL struct. More...
 
struct  url_base
 Base class of URL implementations. More...
 
struct  url_components
 URL Component representations using offsets. More...
 
struct  url_search_params
 
struct  url_search_params_iter
 

Typedefs

template<class result_type = ada::url_aggregator>
using result = tl::expected<result_type, ada::errors>
 
typedef std::pair< std::string_view, std::string_view > key_value_view_pair
 
using url_search_params_keys_iter
 
using url_search_params_values_iter
 
using url_search_params_entries_iter
 

Enumerations

enum  { ADA_VERSION_MAJOR = 2 , ADA_VERSION_MINOR = 9 , ADA_VERSION_REVISION = 2 }
 
enum class  encoding_type {
  UTF8 , UTF_16LE , UTF_16BE , UTF8 ,
  UTF_16LE , UTF_16BE
}
 
enum class  errors { generic_error , generic_error }
 
enum class  state {
  AUTHORITY , SCHEME_START , SCHEME , HOST ,
  NO_SCHEME , FRAGMENT , RELATIVE_SCHEME , RELATIVE_SLASH ,
  FILE , FILE_HOST , FILE_SLASH , PATH_OR_AUTHORITY ,
  SPECIAL_AUTHORITY_IGNORE_SLASHES , SPECIAL_AUTHORITY_SLASHES , SPECIAL_RELATIVE_OR_AUTHORITY , QUERY ,
  PATH , PATH_START , OPAQUE_PATH , PORT ,
  AUTHORITY , SCHEME_START , SCHEME , HOST ,
  NO_SCHEME , FRAGMENT , RELATIVE_SCHEME , RELATIVE_SLASH ,
  FILE , FILE_HOST , FILE_SLASH , PATH_OR_AUTHORITY ,
  SPECIAL_AUTHORITY_IGNORE_SLASHES , SPECIAL_AUTHORITY_SLASHES , SPECIAL_RELATIVE_OR_AUTHORITY , QUERY ,
  PATH , PATH_START , OPAQUE_PATH , PORT
}
 
enum  url_host_type : uint8_t {
  DEFAULT = 0 , IPV4 = 1 , IPV6 = 2 , DEFAULT = 0 ,
  IPV4 = 1 , IPV6 = 2
}
 
enum class  url_search_params_iter_type {
  KEYS , VALUES , ENTRIES , KEYS ,
  VALUES , ENTRIES
}
 
enum class  encoding_type {
  UTF8 , UTF_16LE , UTF_16BE , UTF8 ,
  UTF_16LE , UTF_16BE
}
 
enum class  state {
  AUTHORITY , SCHEME_START , SCHEME , HOST ,
  NO_SCHEME , FRAGMENT , RELATIVE_SCHEME , RELATIVE_SLASH ,
  FILE , FILE_HOST , FILE_SLASH , PATH_OR_AUTHORITY ,
  SPECIAL_AUTHORITY_IGNORE_SLASHES , SPECIAL_AUTHORITY_SLASHES , SPECIAL_RELATIVE_OR_AUTHORITY , QUERY ,
  PATH , PATH_START , OPAQUE_PATH , PORT ,
  AUTHORITY , SCHEME_START , SCHEME , HOST ,
  NO_SCHEME , FRAGMENT , RELATIVE_SCHEME , RELATIVE_SLASH ,
  FILE , FILE_HOST , FILE_SLASH , PATH_OR_AUTHORITY ,
  SPECIAL_AUTHORITY_IGNORE_SLASHES , SPECIAL_AUTHORITY_SLASHES , SPECIAL_RELATIVE_OR_AUTHORITY , QUERY ,
  PATH , PATH_START , OPAQUE_PATH , PORT
}
 
enum  url_host_type : uint8_t {
  DEFAULT = 0 , IPV4 = 1 , IPV6 = 2 , DEFAULT = 0 ,
  IPV4 = 1 , IPV6 = 2
}
 
enum class  url_search_params_iter_type {
  KEYS , VALUES , ENTRIES , KEYS ,
  VALUES , ENTRIES
}
 
enum  { ADA_VERSION_MAJOR = 2 , ADA_VERSION_MINOR = 9 , ADA_VERSION_REVISION = 2 }
 
enum class  errors { generic_error , generic_error }
 

Functions

void unreachable ()
 
ada_warn_unused std::string to_string (encoding_type type)
 
template<class result_type = ada::url_aggregator>
ada_warn_unused ada::result< result_type > parse (std::string_view input, const result_type *base_url=nullptr)
 
template ada::result< urlparse< url > (std::string_view input, const url *base_url)
 
template ada::result< url_aggregatorparse< url_aggregator > (std::string_view input, const url_aggregator *base_url)
 
bool can_parse (std::string_view input, const std::string_view *base_input=nullptr)
 
std::string href_from_file (std::string_view path)
 
ada_warn_unused std::string to_string (ada::state s)
 
std::ostream & operator<< (std::ostream &out, const ada::url &u)
 
std::ostream & operator<< (std::ostream &out, const ada::url_aggregator &u)
 
template<class result_type >
ada_warn_unused tl::expected< result_type, ada::errorsparse (std::string_view input, const result_type *base_url)
 

Typedef Documentation

◆ key_value_view_pair

typedef std::pair< std::string_view, std::string_view > ada::key_value_view_pair

Definition at line 24 of file url_search_params.h.

◆ result

template<class result_type = ada::url_aggregator>
using ada::result = tl::expected<result_type, ada::errors>

Definition at line 23 of file implementation.h.

◆ url_search_params_entries_iter

Initial value:
url_search_params_iter<key_value_view_pair,
url_search_params_iter_type::ENTRIES>
std::pair< std::string_view, std::string_view > key_value_view_pair

Definition at line 31 of file url_search_params.h.

◆ url_search_params_keys_iter

Initial value:
url_search_params_iter<std::string_view, url_search_params_iter_type::KEYS>

Definition at line 26 of file url_search_params.h.

◆ url_search_params_values_iter

Initial value:
url_search_params_iter<std::string_view,
url_search_params_iter_type::VALUES>

Definition at line 28 of file url_search_params.h.

Enumeration Type Documentation

◆ anonymous enum

Enumerator
ADA_VERSION_MAJOR 
ADA_VERSION_MINOR 
ADA_VERSION_REVISION 

Definition at line 12 of file ada_version.h.

◆ anonymous enum

Enumerator
ADA_VERSION_MAJOR 
ADA_VERSION_MINOR 
ADA_VERSION_REVISION 

Definition at line 7314 of file ada.h.

◆ encoding_type [1/2]

This specification defines three encodings with the same names as encoding schemes defined in the Unicode standard: UTF-8, UTF-16LE, and UTF-16BE.

See also
https://encoding.spec.whatwg.org/#encodings
Enumerator
UTF8 
UTF_16LE 
UTF_16BE 
UTF8 
UTF_16LE 
UTF_16BE 

Definition at line 19 of file encoding_type.h.

◆ encoding_type [2/2]

This specification defines three encodings with the same names as encoding schemes defined in the Unicode standard: UTF-8, UTF-16LE, and UTF-16BE.

See also
https://encoding.spec.whatwg.org/#encodings
Enumerator
UTF8 
UTF_16LE 
UTF_16BE 
UTF8 
UTF_16LE 
UTF_16BE 

Definition at line 1189 of file ada.h.

◆ errors [1/2]

Enumerator
generic_error 
generic_error 

Definition at line 20 of file implementation.h.

◆ errors [2/2]

Enumerator
generic_error 
generic_error 

Definition at line 7338 of file ada.h.

◆ state [1/2]

See also
https://url.spec.whatwg.org/#url-parsing
Enumerator
AUTHORITY 
See also
https://url.spec.whatwg.org/#authority-state
SCHEME_START 
See also
https://url.spec.whatwg.org/#scheme-start-state
SCHEME 
See also
https://url.spec.whatwg.org/#scheme-state
HOST 
See also
https://url.spec.whatwg.org/#host-state
NO_SCHEME 
See also
https://url.spec.whatwg.org/#no-scheme-state
FRAGMENT 
See also
https://url.spec.whatwg.org/#fragment-state
RELATIVE_SCHEME 
See also
https://url.spec.whatwg.org/#relative-state
RELATIVE_SLASH 
See also
https://url.spec.whatwg.org/#relative-slash-state
FILE 
See also
https://url.spec.whatwg.org/#file-state
FILE_HOST 
See also
https://url.spec.whatwg.org/#file-host-state
FILE_SLASH 
See also
https://url.spec.whatwg.org/#file-slash-state
PATH_OR_AUTHORITY 
See also
https://url.spec.whatwg.org/#path-or-authority-state
SPECIAL_AUTHORITY_IGNORE_SLASHES 
See also
https://url.spec.whatwg.org/#special-authority-ignore-slashes-state
SPECIAL_AUTHORITY_SLASHES 
See also
https://url.spec.whatwg.org/#special-authority-slashes-state
SPECIAL_RELATIVE_OR_AUTHORITY 
See also
https://url.spec.whatwg.org/#special-relative-or-authority-state
QUERY 
See also
https://url.spec.whatwg.org/#query-state
PATH 
See also
https://url.spec.whatwg.org/#path-state
PATH_START 
See also
https://url.spec.whatwg.org/#path-start-state
OPAQUE_PATH 
See also
https://url.spec.whatwg.org/#cannot-be-a-base-url-path-state
PORT 
See also
https://url.spec.whatwg.org/#port-state
AUTHORITY 
See also
https://url.spec.whatwg.org/#authority-state
SCHEME_START 
See also
https://url.spec.whatwg.org/#scheme-start-state
SCHEME 
See also
https://url.spec.whatwg.org/#scheme-state
HOST 
See also
https://url.spec.whatwg.org/#host-state
NO_SCHEME 
See also
https://url.spec.whatwg.org/#no-scheme-state
FRAGMENT 
See also
https://url.spec.whatwg.org/#fragment-state
RELATIVE_SCHEME 
See also
https://url.spec.whatwg.org/#relative-state
RELATIVE_SLASH 
See also
https://url.spec.whatwg.org/#relative-slash-state
FILE 
See also
https://url.spec.whatwg.org/#file-state
FILE_HOST 
See also
https://url.spec.whatwg.org/#file-host-state
FILE_SLASH 
See also
https://url.spec.whatwg.org/#file-slash-state
PATH_OR_AUTHORITY 
See also
https://url.spec.whatwg.org/#path-or-authority-state
SPECIAL_AUTHORITY_IGNORE_SLASHES 
See also
https://url.spec.whatwg.org/#special-authority-ignore-slashes-state
SPECIAL_AUTHORITY_SLASHES 
See also
https://url.spec.whatwg.org/#special-authority-slashes-state
SPECIAL_RELATIVE_OR_AUTHORITY 
See also
https://url.spec.whatwg.org/#special-relative-or-authority-state
QUERY 
See also
https://url.spec.whatwg.org/#query-state
PATH 
See also
https://url.spec.whatwg.org/#path-state
PATH_START 
See also
https://url.spec.whatwg.org/#path-start-state
OPAQUE_PATH 
See also
https://url.spec.whatwg.org/#cannot-be-a-base-url-path-state
PORT 
See also
https://url.spec.whatwg.org/#port-state

Definition at line 17 of file state.h.

◆ state [2/2]

See also
https://url.spec.whatwg.org/#url-parsing
Enumerator
AUTHORITY 
See also
https://url.spec.whatwg.org/#authority-state
SCHEME_START 
See also
https://url.spec.whatwg.org/#scheme-start-state
SCHEME 
See also
https://url.spec.whatwg.org/#scheme-state
HOST 
See also
https://url.spec.whatwg.org/#host-state
NO_SCHEME 
See also
https://url.spec.whatwg.org/#no-scheme-state
FRAGMENT 
See also
https://url.spec.whatwg.org/#fragment-state
RELATIVE_SCHEME 
See also
https://url.spec.whatwg.org/#relative-state
RELATIVE_SLASH 
See also
https://url.spec.whatwg.org/#relative-slash-state
FILE 
See also
https://url.spec.whatwg.org/#file-state
FILE_HOST 
See also
https://url.spec.whatwg.org/#file-host-state
FILE_SLASH 
See also
https://url.spec.whatwg.org/#file-slash-state
PATH_OR_AUTHORITY 
See also
https://url.spec.whatwg.org/#path-or-authority-state
SPECIAL_AUTHORITY_IGNORE_SLASHES 
See also
https://url.spec.whatwg.org/#special-authority-ignore-slashes-state
SPECIAL_AUTHORITY_SLASHES 
See also
https://url.spec.whatwg.org/#special-authority-slashes-state
SPECIAL_RELATIVE_OR_AUTHORITY 
See also
https://url.spec.whatwg.org/#special-relative-or-authority-state
QUERY 
See also
https://url.spec.whatwg.org/#query-state
PATH 
See also
https://url.spec.whatwg.org/#path-state
PATH_START 
See also
https://url.spec.whatwg.org/#path-start-state
OPAQUE_PATH 
See also
https://url.spec.whatwg.org/#cannot-be-a-base-url-path-state
PORT 
See also
https://url.spec.whatwg.org/#port-state
AUTHORITY 
See also
https://url.spec.whatwg.org/#authority-state
SCHEME_START 
See also
https://url.spec.whatwg.org/#scheme-start-state
SCHEME 
See also
https://url.spec.whatwg.org/#scheme-state
HOST 
See also
https://url.spec.whatwg.org/#host-state
NO_SCHEME 
See also
https://url.spec.whatwg.org/#no-scheme-state
FRAGMENT 
See also
https://url.spec.whatwg.org/#fragment-state
RELATIVE_SCHEME 
See also
https://url.spec.whatwg.org/#relative-state
RELATIVE_SLASH 
See also
https://url.spec.whatwg.org/#relative-slash-state
FILE 
See also
https://url.spec.whatwg.org/#file-state
FILE_HOST 
See also
https://url.spec.whatwg.org/#file-host-state
FILE_SLASH 
See also
https://url.spec.whatwg.org/#file-slash-state
PATH_OR_AUTHORITY 
See also
https://url.spec.whatwg.org/#path-or-authority-state
SPECIAL_AUTHORITY_IGNORE_SLASHES 
See also
https://url.spec.whatwg.org/#special-authority-ignore-slashes-state
SPECIAL_AUTHORITY_SLASHES 
See also
https://url.spec.whatwg.org/#special-authority-slashes-state
SPECIAL_RELATIVE_OR_AUTHORITY 
See also
https://url.spec.whatwg.org/#special-relative-or-authority-state
QUERY 
See also
https://url.spec.whatwg.org/#query-state
PATH 
See also
https://url.spec.whatwg.org/#path-state
PATH_START 
See also
https://url.spec.whatwg.org/#path-start-state
OPAQUE_PATH 
See also
https://url.spec.whatwg.org/#cannot-be-a-base-url-path-state
PORT 
See also
https://url.spec.whatwg.org/#port-state

Definition at line 1228 of file ada.h.

◆ url_host_type [1/2]

Type of URL host as an enum.

Enumerator
DEFAULT 

Represents common URLs such as "https://www.google.com"

IPV4 

Represents ipv4 addresses such as "http://127.0.0.1"

IPV6 

Represents ipv6 addresses such as "http://[2001:db8:3333:4444:5555:6666:7777:8888]"

DEFAULT 

Represents common URLs such as "https://www.google.com"

IPV4 

Represents ipv4 addresses such as "http://127.0.0.1"

IPV6 

Represents ipv6 addresses such as "http://[2001:db8:3333:4444:5555:6666:7777:8888]"

Definition at line 19 of file url_base.h.

◆ url_host_type [2/2]

Type of URL host as an enum.

Enumerator
DEFAULT 

Represents common URLs such as "https://www.google.com"

IPV4 

Represents ipv4 addresses such as "http://127.0.0.1"

IPV6 

Represents ipv6 addresses such as "http://[2001:db8:3333:4444:5555:6666:7777:8888]"

DEFAULT 

Represents common URLs such as "https://www.google.com"

IPV4 

Represents ipv4 addresses such as "http://127.0.0.1"

IPV6 

Represents ipv6 addresses such as "http://[2001:db8:3333:4444:5555:6666:7777:8888]"

Definition at line 1514 of file ada.h.

◆ url_search_params_iter_type [1/2]

Enumerator
KEYS 
VALUES 
ENTRIES 
KEYS 
VALUES 
ENTRIES 

Definition at line 15 of file url_search_params.h.

◆ url_search_params_iter_type [2/2]

Enumerator
KEYS 
VALUES 
ENTRIES 
KEYS 
VALUES 
ENTRIES 

Definition at line 6900 of file ada.h.

Function Documentation

◆ can_parse()

bool ada::can_parse ( std::string_view input,
const std::string_view * base_input = nullptr )

Verifies whether the URL strings can be parsed. The function assumes that the inputs are valid ASCII or UTF-8 strings.

See also
https://url.spec.whatwg.org/#dom-url-canparse
Returns
If URL can be parsed or not.

Definition at line 10389 of file ada.cpp.

References parse().

Referenced by ada_can_parse(), ada_can_parse(), ada_can_parse_with_base(), ada_can_parse_with_base(), and LLVMFuzzerTestOneInput().

◆ href_from_file()

std::string ada::href_from_file ( std::string_view path)

Computes a href string from a file path. The function assumes that the input is a valid ASCII or UTF-8 string.

Returns
a href string (starts with file:://)

Definition at line 10366 of file ada.cpp.

References parse().

Referenced by LLVMFuzzerTestOneInput().

◆ operator<<() [1/2]

std::ostream & ada::operator<< ( std::ostream & out,
const ada::url & u )
inline

Definition at line 38 of file url-inl.h.

References parse().

◆ operator<<() [2/2]

std::ostream & ada::operator<< ( std::ostream & out,
const ada::url_aggregator & u )
inline

Definition at line 922 of file url_aggregator-inl.h.

References parse().

◆ parse() [1/2]

template<class result_type >
ada_warn_unused tl::expected< result_type, ada::errors > ada::parse ( std::string_view input,
const result_type * base_url = nullptr )

The URL parser takes a scalar value string input, with an optional null or base URL base (default null). The parser assumes the input is a valid ASCII or UTF-8 string.

Parameters
inputthe string input to analyze (must be valid ASCII or UTF-8)
base_urlthe optional URL input to use as a base url.
Returns
a parsed URL.

Definition at line 10351 of file ada.cpp.

References generic_error, and parse().

Referenced by ada_can_parse(), ada_can_parse_with_base(), ada_clear_hash(), ada_clear_port(), ada_clear_search(), ada_copy(), ada_copy(), ada_free(), ada_free_owned_string(), ada_free_search_params(), ada_free_search_params_entries_iter(), ada_free_search_params_keys_iter(), ada_free_search_params_values_iter(), ada_free_strings(), ada_get_components(), ada_get_hash(), ada_get_host(), ada_get_host_type(), ada_get_hostname(), ada_get_href(), ada_get_origin(), ada_get_password(), ada_get_pathname(), ada_get_port(), ada_get_protocol(), ada_get_scheme_type(), ada_get_search(), ada_get_username(), ada_has_credentials(), ada_has_empty_hostname(), ada_has_hash(), ada_has_hostname(), ada_has_non_empty_password(), ada_has_non_empty_username(), ada_has_password(), ada_has_port(), ada_has_search(), ada_idna_to_ascii(), ada_idna_to_unicode(), ada_is_valid(), ada_parse(), ada_parse(), ada_parse_search_params(), ada_parse_with_base(), ada_parse_with_base(), ada_search_params_append(), ada_search_params_entries_iter_has_next(), ada_search_params_entries_iter_next(), ada_search_params_get(), ada_search_params_get_all(), ada_search_params_get_entries(), ada_search_params_get_keys(), ada_search_params_get_values(), ada_search_params_has(), ada_search_params_has_value(), ada_search_params_keys_iter_has_next(), ada_search_params_keys_iter_next(), ada_search_params_remove(), ada_search_params_remove_value(), ada_search_params_reset(), ada_search_params_set(), ada_search_params_size(), ada_search_params_sort(), ada_search_params_to_string(), ada_search_params_values_iter_has_next(), ada_search_params_values_iter_next(), ada_set_hash(), ada_set_host(), ada_set_hostname(), ada_set_href(), ada_set_password(), ada_set_pathname(), ada_set_port(), ada_set_protocol(), ada_set_search(), ada_set_username(), ada_string_create(), ada_strings_get(), ada_strings_size(), ada::idna::adapt(), ada::idna::ascii_has_upper_case(), ada::idna::ascii_map(), ada::checkers::begins_with(), ada::idna::begins_with(), ada::idna::begins_with(), ada::character_sets::bit_at(), ada::unicode::broadcast(), can_parse(), ada::url_aggregator::clear_port(), ada::idna::compose(), ada::idna::compute_decomposition_length(), ada::idna::contains_forbidden_domain_code_point(), ada::idna::decompose(), ada::idna::decompose_nfc(), ada::idna::digit_to_char(), ada::idna::find_direction(), ada::idna::find_last_not_of_nsm(), ada::serializers::find_longest_sequence_of_ipv6_pieces(), ada::idna::find_range_index(), ada::idna::from_ascii_to_ascii(), ada::url_search_params::get(), ada::url_search_params::get_all(), ada::idna::get_ccc(), ada::url::get_components(), ada::url::get_href(), ada::url::get_origin(), ada::url_aggregator::get_origin(), ada::url_aggregator::get_pathname_length(), ada::scheme::get_scheme_type(), ada::scheme::get_special_port(), ada::scheme::get_special_port(), ada::url_search_params::has(), ada::url_search_params::has(), ada::checkers::has_hex_prefix(), ada::checkers::has_hex_prefix_unsafe(), href_from_file(), ada::serializers::ipv4(), ada::serializers::ipv6(), ada::checkers::is_alpha(), ada::idna::is_ascii(), ada::idna::is_ascii(), ada::checkers::is_digit(), ada::idna::is_forbidden_domain_code_point(), ada::idna::is_label_valid(), ada::checkers::is_normalized_windows_drive_letter(), ada::idna::is_rtl_label(), ada::unicode::is_tabs_or_newline(), ada::checkers::is_windows_drive_letter(), LLVMFuzzerTestOneInput(), main(), ada::idna::map(), ada::idna::normalize(), operator<<(), operator<<(), parse(), ada::url_base::parse_port(), ada::unicode::percent_encode_index(), ada::idna::punycode_to_utf32(), ada::url_search_params::remove(), ada::url_search_params::remove(), ada::url_search_params::set(), ada::url::set_href(), ada::url_search_params::sort(), ada::idna::sort_marks(), ada::idna::to_ascii(), ada::url_aggregator::to_diagram(), ada::checkers::to_lower(), ada::url_search_params::to_string(), ada::url_aggregator::to_string(), ada::idna::to_unicode(), unreachable(), ada::url_search_params::url_search_params(), ada::idna::utf32_length_from_utf8(), ada::idna::utf32_to_punycode(), ada::idna::utf32_to_utf8(), ada::idna::utf8_length_from_utf32(), ada::idna::utf8_to_utf32(), and ada::idna::verify_punycode().

◆ parse() [2/2]

template<class result_type = ada::url_aggregator>
ada_warn_unused ada::result< result_type > ada::parse ( std::string_view input,
const result_type * base_url = nullptr )

The URL parser takes a scalar value string input, with an optional null or base URL base (default null). The parser assumes the input is a valid ASCII or UTF-8 string.

Parameters
inputthe string input to analyze (must be valid ASCII or UTF-8)
base_urlthe optional URL input to use as a base url.
Returns
a parsed URL.

Definition at line 10351 of file ada.cpp.

References generic_error, and parse().

Referenced by ada_can_parse(), ada_can_parse_with_base(), ada_clear_hash(), ada_clear_port(), ada_clear_search(), ada_copy(), ada_copy(), ada_free(), ada_free_owned_string(), ada_free_search_params(), ada_free_search_params_entries_iter(), ada_free_search_params_keys_iter(), ada_free_search_params_values_iter(), ada_free_strings(), ada_get_components(), ada_get_hash(), ada_get_host(), ada_get_host_type(), ada_get_hostname(), ada_get_href(), ada_get_origin(), ada_get_password(), ada_get_pathname(), ada_get_port(), ada_get_protocol(), ada_get_scheme_type(), ada_get_search(), ada_get_username(), ada_has_credentials(), ada_has_empty_hostname(), ada_has_hash(), ada_has_hostname(), ada_has_non_empty_password(), ada_has_non_empty_username(), ada_has_password(), ada_has_port(), ada_has_search(), ada_idna_to_ascii(), ada_idna_to_unicode(), ada_is_valid(), ada_parse(), ada_parse(), ada_parse_search_params(), ada_parse_with_base(), ada_parse_with_base(), ada_search_params_append(), ada_search_params_entries_iter_has_next(), ada_search_params_entries_iter_next(), ada_search_params_get(), ada_search_params_get_all(), ada_search_params_get_entries(), ada_search_params_get_keys(), ada_search_params_get_values(), ada_search_params_has(), ada_search_params_has_value(), ada_search_params_keys_iter_has_next(), ada_search_params_keys_iter_next(), ada_search_params_remove(), ada_search_params_remove_value(), ada_search_params_reset(), ada_search_params_set(), ada_search_params_size(), ada_search_params_sort(), ada_search_params_to_string(), ada_search_params_values_iter_has_next(), ada_search_params_values_iter_next(), ada_set_hash(), ada_set_host(), ada_set_hostname(), ada_set_href(), ada_set_password(), ada_set_pathname(), ada_set_port(), ada_set_protocol(), ada_set_search(), ada_set_username(), ada_string_create(), ada_strings_get(), ada_strings_size(), ada::idna::adapt(), ada::idna::ascii_has_upper_case(), ada::idna::ascii_map(), ada::checkers::begins_with(), ada::idna::begins_with(), ada::idna::begins_with(), ada::character_sets::bit_at(), ada::unicode::broadcast(), can_parse(), ada::url_aggregator::clear_port(), ada::idna::compose(), ada::idna::compute_decomposition_length(), ada::idna::contains_forbidden_domain_code_point(), ada::idna::decompose(), ada::idna::decompose_nfc(), ada::idna::digit_to_char(), ada::idna::find_direction(), ada::idna::find_last_not_of_nsm(), ada::serializers::find_longest_sequence_of_ipv6_pieces(), ada::idna::find_range_index(), ada::idna::from_ascii_to_ascii(), ada::url_search_params::get(), ada::url_search_params::get_all(), ada::idna::get_ccc(), ada::url::get_components(), ada::url::get_href(), ada::url::get_origin(), ada::url_aggregator::get_origin(), ada::url_aggregator::get_pathname_length(), ada::scheme::get_scheme_type(), ada::scheme::get_special_port(), ada::scheme::get_special_port(), ada::url_search_params::has(), ada::url_search_params::has(), ada::checkers::has_hex_prefix(), ada::checkers::has_hex_prefix_unsafe(), href_from_file(), ada::serializers::ipv4(), ada::serializers::ipv6(), ada::checkers::is_alpha(), ada::idna::is_ascii(), ada::idna::is_ascii(), ada::checkers::is_digit(), ada::idna::is_forbidden_domain_code_point(), ada::idna::is_label_valid(), ada::checkers::is_normalized_windows_drive_letter(), ada::idna::is_rtl_label(), ada::unicode::is_tabs_or_newline(), ada::checkers::is_windows_drive_letter(), LLVMFuzzerTestOneInput(), main(), ada::idna::map(), ada::idna::normalize(), operator<<(), operator<<(), parse(), ada::url_base::parse_port(), ada::unicode::percent_encode_index(), ada::idna::punycode_to_utf32(), ada::url_search_params::remove(), ada::url_search_params::remove(), ada::url_search_params::set(), ada::url::set_href(), ada::url_search_params::sort(), ada::idna::sort_marks(), ada::idna::to_ascii(), ada::url_aggregator::to_diagram(), ada::checkers::to_lower(), ada::url_search_params::to_string(), ada::url_aggregator::to_string(), ada::idna::to_unicode(), unreachable(), ada::url_search_params::url_search_params(), ada::idna::utf32_length_from_utf8(), ada::idna::utf32_to_punycode(), ada::idna::utf32_to_utf8(), ada::idna::utf8_length_from_utf32(), ada::idna::utf8_to_utf32(), and ada::idna::verify_punycode().

◆ parse< url >()

template ada::result< url > ada::parse< url > ( std::string_view input,
const url * base_url )
extern

◆ parse< url_aggregator >()

template ada::result< url_aggregator > ada::parse< url_aggregator > ( std::string_view input,
const url_aggregator * base_url )
extern

◆ to_string() [1/2]

ada_warn_unused std::string ada::to_string ( ada::state s)

Stringify a URL state machine state.

Definition at line 11210 of file ada.cpp.

References ada::helpers::get_state(), and to_string().

◆ to_string() [2/2]

ada_warn_unused std::string ada::to_string ( ada::encoding_type type)

Convert a encoding_type to string.

Definition at line 10408 of file ada.cpp.

References unreachable(), UTF8, UTF_16BE, and UTF_16LE.

Referenced by ada::parser::parse_url_impl(), and to_string().

◆ unreachable()

void ada::unreachable ( )
inline

Definition at line 166 of file common_defs.h.

References parse().

Referenced by ada::parser::parse_url_impl(), and to_string().