A URI according to RFC 3986.
More...
#include <uri.hpp>
|
struct | authority_type |
| Bundles the authority component of the URI, i.e., userinfo, host, and port. More...
|
|
|
using | host_type = std::variant< std::string, ip_address > |
| Host subcomponent of the authority component.
|
|
using | path_list = std::vector< std::string_view > |
| Separates the query component into key-value pairs.
|
|
using | query_map = unordered_flat_map< std::string, std::string > |
| Separates the query component into key-value pairs.
|
|
using | impl_ptr = intrusive_ptr< impl_type > |
| Pointer to implementation.
|
|
|
| uri (uri &&)=default |
|
| uri (const uri &)=default |
|
uri & | operator= (uri &&)=default |
|
uri & | operator= (const uri &)=default |
|
| uri (impl_ptr ptr) |
|
bool | empty () const noexcept |
| Returns whether all components of this URI are empty.
|
|
bool | valid () const noexcept |
| Returns whether the URI contains valid content.
|
|
std::string_view | str () const noexcept |
| Returns the full URI as provided by the user.
|
|
std::string_view | scheme () const noexcept |
| Returns the scheme component.
|
|
const authority_type & | authority () const noexcept |
| Returns the authority component.
|
|
std::string_view | path () const noexcept |
| Returns the path component as provided by the user.
|
|
const query_map & | query () const noexcept |
| Returns the query component as key-value map.
|
|
std::string_view | fragment () const noexcept |
| Returns the fragment component.
|
|
std::string | host_str () const |
| Returns the host sub-component of the authority as string.
|
|
std::string | path_query_fragment () const |
| Returns the path, query and fragment components (as they appear in the encoded URI) with a leading '/'.
|
|
size_t | hash_code () const noexcept |
| Returns a hash code over all components.
|
|
std::optional< uri > | authority_only () const |
| Returns a new URI with the authority component only.
|
|
auto | compare (const uri &other) const noexcept |
|
auto | compare (std::string_view x) const noexcept |
|
|
static bool | can_parse (std::string_view str) noexcept |
| Returns whether parse would produce a valid URI.
|
|
static void | encode (std::string &str, std::string_view x, bool is_path=false) |
|
static void | decode (std::string &str) |
|
|
template<class > |
struct | inspector_access |
|
|
(Note that these are not member symbols.)
|
CAF_CORE_EXPORT std::string | to_string (const uri &x) |
|
CAF_CORE_EXPORT std::string | to_string (const uri::authority_type &x) |
|
CAF_CORE_EXPORT error | parse (std::string_view str, uri &dest) |
|
CAF_CORE_EXPORT expected< uri > | make_uri (std::string_view str) |
|
A URI according to RFC 3986.
◆ host_type
Host subcomponent of the authority component.
Either an IP address or an hostname as string.
◆ authority_only()
std::optional< uri > caf::uri::authority_only |
( |
| ) |
const |
Returns a new URI with the authority
component only.
- Returns
- A new URI in the form
scheme://authority
if the authority exists, otherwise none
.`
The documentation for this class was generated from the following files:
- libcaf_core/caf/uri.hpp
- libcaf_core/caf/uri.cpp