| Home | Libraries | People | FAQ | More

##### authority_view::host_name

Return the host name.

###### Synopsis

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

###### Description

If the host type is `host_type::name`, this function returns the name as a string. Otherwise, if the host type is not an name, it returns an empty string. Any percent-escapes in the string are decoded first.

###### Example

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

###### Complexity

Linear in `this->host_name().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

- 3.2.2. Host (rfc3986)