| Home | Libraries | People | FAQ | More

##### url_view_base::encoded_host_address

Return the host.

###### Synopsis

    pct_string_view
    encoded_host_address() 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. The returned string may contain percent escapes.

###### Example

    assert( url_view( "https://www%2droot.example.com/" ).encoded_host_address() == "www%2droot.example.com" );

###### Complexity

Constant.

###### Exception Safety

Throws nothing.

###### BNF

    host        = IP-literal / IPv4address / reg-name

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

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

###### Specification

- 3.2.2. Host (rfc3986)