Return the host

Synopsis

Declared in header </boost/url/authority_view.hpp#L796[boost/url/authority_view.hpp,window=blank_]>

template<class StringToken = string_token::return_string>
StringToken::result_type
host_address(StringToken&& token) const;

Description

The value returned by this function depends on the type of host returned from the function host_type.

  • If the type is host_type::ipv4, then the IPv4 address string is returned.

  • If the type is host_type::ipv6, then the IPv6 address string is returned, without any enclosing brackets.

  • If the type is host_type::ipvfuture, then the IPvFuture address string is returned, without any enclosing brackets.

  • If the type is host_type::name, then the host name string is returned. Any percent-escapes in the string are decoded first.

  • If the type is host_type::none, then an empty string is returned.

Example

assert( url_view( "https://[1::6:c0a8:1]/" ).host_address() == "1::6:c0a8:1" );

Complexity

Linear in this->host_address().size().

Exception Safety

Calls to allocate may throw.

BNF

host        = IP-literal / IPv4address / reg-name

IP-literal  = "[" ( IPv6address / IPvFuture  ) "]"

reg-name    = *( unreserved / pct-encoded / "-" / ".")

Specification

Return Value

  • result_type

Parameters

Name Type

token

``