9#ifndef SQUID_SRC_ANYP_HOST_H
10#define SQUID_SRC_ANYP_HOST_H
45 auto ip()
const {
return std::get_if<Ip::Address>(&
raw_); }
51 using Storage = std::variant<Ip::Address, Dns::DomainName>;
Bracketed(const Host &aHost)
either a domain name (as defined in DNS RFC 1034) or an IP address
static std::optional< Host > ParseIp(const Ip::Address &)
converts an already parsed IP address to a Host object
static std::optional< Host > ParseSimpleDomainName(const SBuf &)
auto domainName() const
stored domain name (if any)
Storage raw_
the host we are providing access to
static std::optional< Host > ParseWildDomainName(const SBuf &)
std::variant< Ip::Address, Dns::DomainName > Storage
static std::optional< Host > ParseDomainName(const SBuf &)
common parts of FromSimpleDomain() and FromWildDomain()
std::ostream & operator<<(std::ostream &, const Host &)