58  std::string username{};
 
   65  std::string password{};
 
   71  std::optional<std::string> host{};
 
   78  std::optional<uint16_t> port{};
 
   91  std::optional<std::string> query{};
 
   99  std::optional<std::string> hash{};
 
  104  [[nodiscard]] inline 
bool has_port() const noexcept;
 
  106  [[nodiscard]] inline 
bool has_hostname() const noexcept;
 
  112  [[nodiscard]] std::
string to_string() const override;
 
  126  [[nodiscard]] std::
string get_origin() const noexcept override;
 
  134  [[nodiscard]] std::
string get_protocol() const noexcept;
 
  143  [[nodiscard]] std::
string get_host() const noexcept;
 
  151  [[nodiscard]] std::
string get_hostname() const noexcept;
 
  159  [[nodiscard]] constexpr std::string_view 
get_pathname() const noexcept;
 
  174  [[nodiscard]] std::
string get_search() const noexcept;
 
  181  [[nodiscard]] const std::
string &
get_username() const noexcept;
 
  199  bool set_port(std::string_view input);
 
  205  void set_hash(std::string_view input);
 
  223  bool set_host(std::string_view input);
 
  240  bool set_href(std::string_view input);
 
  247  [[nodiscard]] const std::
string &
get_password() const noexcept;
 
  254  [[nodiscard]] std::
string get_port() const noexcept;
 
  261  [[nodiscard]] std::
string get_hash() const noexcept;
 
  293  [[nodiscard]] constexpr 
bool has_hash() const noexcept override;
 
  295  [[nodiscard]] constexpr 
bool has_search() const noexcept override;
 
  310  inline 
void update_unencoded_base_hash(std::string_view input);
 
  311  inline 
void update_base_hostname(std::string_view input);
 
  312  inline 
void update_base_search(std::string_view input,
 
  313                                 const uint8_t query_percent_encode_set[]);
 
  314  inline 
void update_base_search(std::
optional<std::
string> &&input);
 
  315  inline 
void update_base_pathname(std::string_view input);
 
  316  inline 
void update_base_username(std::string_view input);
 
  317  inline 
void update_base_password(std::string_view input);
 
  318  inline 
void update_base_port(std::
optional<uint16_t> input);
 
  325  template <
bool override_hostname = false>
 
  326  bool set_host_or_hostname(std::string_view input);
 
  332  [[nodiscard]] 
bool parse_ipv4(std::string_view input);
 
  338  [[nodiscard]] 
bool parse_ipv6(std::string_view input);
 
  344  [[nodiscard]] 
bool parse_opaque_host(std::string_view input);
 
  355  std::
string non_special_scheme{};
 
  361  [[nodiscard]] 
inline bool cannot_have_credentials_or_port() 
const;
 
  364      std::string_view view, 
bool check_trailing_content) 
noexcept override;
 
  367    return this->parse_port(view, 
false);
 
  380  template <
bool has_state_overr
ide = false>
 
  383  constexpr void clear_pathname() 
override;
 
  384  constexpr void clear_search() 
override;
 
  385  constexpr void set_protocol_as_file();
 
  404  inline void set_scheme(std::string &&new_scheme) 
noexcept;
 
  410  constexpr void copy_scheme(
ada::url &&u) 
noexcept;
 
  416  constexpr void copy_scheme(
const ada::url &u);
 
 
  420inline std::ostream &
operator<<(std::ostream &out, 
const ada::url &u);
 
Declarations for URL specific checkers used within Ada.
 
Common definitions for cross-platform compiler support.
 
#define ada_really_inline
 
Definitions for helper functions used within Ada.
 
Includes the definitions for helper functions.
 
Includes the definitions for supported parsers.
 
std::ostream & operator<<(std::ostream &out, const ada::url &u)
 
Base class of URL implementations.
 
Generic URL struct reliant on std::string instantiation.
 
void set_hash(std::string_view input)
 
std::string get_search() const noexcept
 
bool set_hostname(std::string_view input)
 
bool set_host(std::string_view input)
 
ada_really_inline ada::url_components get_components() const noexcept
 
url(url &&u) noexcept=default
 
bool has_empty_hostname() const noexcept
 
bool has_port() const noexcept
 
ada_really_inline bool has_credentials() const noexcept
 
friend ada::url ada::parser::parse_url(std::string_view, const ada::url *)
 
bool set_password(std::string_view input)
 
url & operator=(url &&u) noexcept=default
 
url & operator=(const url &u)=default
 
void set_search(std::string_view input)
 
ada_really_inline size_t get_pathname_length() const noexcept
 
bool set_href(std::string_view input)
 
ada_really_inline std::string get_href() const noexcept
 
bool has_hostname() const noexcept
 
bool set_username(std::string_view input)
 
constexpr std::string_view get_pathname() const noexcept
 
url(const url &u)=default
 
std::string get_host() const noexcept
 
std::string get_hash() const noexcept
 
bool set_pathname(std::string_view input)
 
std::string get_origin() const noexcept override
 
friend void ada::helpers::strip_trailing_spaces_from_opaque_path(ada::url &url) noexcept
 
std::string get_hostname() const noexcept
 
friend ada::url ada::parser::parse_url_impl(std::string_view, const ada::url *)
 
const std::string & get_password() const noexcept
 
bool set_protocol(std::string_view input)
 
std::string get_port() const noexcept
 
const std::string & get_username() const noexcept
 
bool set_port(std::string_view input)
 
constexpr bool has_search() const noexcept override
 
std::string to_string() const override
 
std::string get_protocol() const noexcept
 
constexpr bool has_hash() const noexcept override
 
bool has_valid_domain() const noexcept override
 
Declaration for the basic URL definitions.
 
Declaration for the URL Components.