Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for a snapshot of the develop branch, built from commit d7c8a7cf0d.
PrevUpHomeNext
url_base::set_encoded_host

Set the host.

Synopsis
url_base&
set_encoded_host(
    pct_string_view s);
Description

Depending on the contents of the passed string, this function sets the host:

In all cases, when this function returns, the URL contains an authority.

Example
assert( url( "http://www.example.com" ).set_host( "127.0.0.1" ).buffer() == "http://127.0.0.1" );
Postconditions
this->has_authority() == true
Complexity

Linear in this->size() + s.size().

Exception Safety

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

Exceptions

Type

Thrown On

system_error

s contains an invalid percent-encoding.

Parameters

Name

Description

s

The string to set.

BNF
host        = IP-literal / IPv4address / reg-name

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

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

set_encoded_host_address, set_encoded_host_name, set_host, set_host_address, set_host_ipv4, set_host_ipv6, set_host_ipvfuture, set_host_name.


PrevUpHomeNext