19 enum class Type : uint8_t {
25 static URI from_any(std::string_view uri);
26 static URI from_ipv4(std::string_view uri);
27 static URI from_ipv6(std::string_view uri);
28 static URI from_domain(std::string_view uri);
32 bool operator==(
const URI& a)
const {
return m_type == a.m_type && m_host == a.m_host && m_port == a.m_port; }
36 const std::string&
host()
const {
return m_host; }
38 uint16_t
port()
const {
return m_port; }
44 const std::string m_host;
45 const uint16_t m_port;