set_encoded_host_name

Set the host to a name

Synopsis

url_base& set_encoded_host_name( pct_string_view s);

Declared in file <src/url_base.cpp> at line 904

Description

The host is set to the specified string, which may contain percent-escapes and can be empty. Escapes in the string are preserved, and reserved characters in the string are percent-escaped in the result. The host type is host_type::name.

Example

assert( url( "http://www.example.com/index.htm").set_encoded_host_name( "localhost" ).host_address() == "localhost" );

Postconditions

this->has_authority() == true && this->host_ipv6_address() == addr && this->host_type() == host_type::name

Exception Safety

Strong guarantee. Calls to allocate may throw. Exceptions thrown on invalid input.

BNF

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

Specification

  • 3.2.2. Host (rfc3986)