boost::urls::authority_view::host_address :: Boost Libraries Documentation

# boost::urls::authority_view::host_address

Return the host

## Synopsis

Declared in `<boost/url/authority_view.hpp>`

    template<string_token::StringToken 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

- 3.2.2. Host (rfc3986)

## Return Value

The host address

## Parameters

Name | Description
--- | ---
token | A string token to receive the result.

Created with MrDocs