11 #ifndef ASIO_IP_ADDRESS_V6_HPP 12 #define ASIO_IP_ADDRESS_V6_HPP 14 #if defined(_MSC_VER) && (_MSC_VER >= 1200) 16 #endif // defined(_MSC_VER) && (_MSC_VER >= 1200) 26 #if !defined(ASIO_NO_IOSTREAM) 28 #endif // !defined(ASIO_NO_IOSTREAM) 52 #if defined(GENERATING_DOCUMENTATION) 68 #if defined(ASIO_HAS_MOVE) 71 #endif // defined(ASIO_HAS_MOVE) 76 #if defined(ASIO_HAS_MOVE) 79 #endif // defined(ASIO_HAS_MOVE) 213 unsigned long scope_id_;
216 #if !defined(ASIO_NO_IOSTREAM) 230 template <
typename Elem,
typename Traits>
232 std::basic_ostream<Elem, Traits>& os,
const address_v6& addr);
234 #endif // !defined(ASIO_NO_IOSTREAM) 242 #if defined(ASIO_HEADER_ONLY) 244 #endif // defined(ASIO_HEADER_ONLY) 246 #endif // ASIO_IP_ADDRESS_V6_HPP ASIO_DECL bool is_multicast_link_local() const
Determine whether the address is a link-local multicast address.
ASIO_DECL friend bool operator==(const address_v6 &a1, const address_v6 &a2)
Compare two addresses for equality.
ASIO_DECL bool is_multicast() const
Determine whether the address is a multicast address.
ASIO_DECL address_v6 & operator=(const address_v6 &other)
Assign from another address.
ASIO_DECL bool is_multicast_node_local() const
Determine whether the address is a node-local multicast address.
friend bool operator>=(const address_v6 &a1, const address_v6 &a2)
Compare addresses for ordering.
static ASIO_DECL address_v6 v4_mapped(const address_v4 &addr)
Create an IPv4-mapped IPv6 address.
Implements IP version 4 style addresses.
asio::detail::array< unsigned char, 16 > bytes_type
The type used to represent an address as an array of bytes.
ASIO_DECL bool is_multicast_org_local() const
Determine whether the address is a org-local multicast address.
ASIO_DECL bool is_site_local() const
Determine whether the address is site local.
ASIO_DECL bytes_type to_bytes() const
Get the address in bytes, in network byte order.
static address_v6 any()
Obtain an address object that represents any address.
ASIO_DECL address_v6()
Default constructor.
static ASIO_DECL address_v6 from_string(const char *str)
Create an address from an IP address string.
friend bool operator<=(const address_v6 &a1, const address_v6 &a2)
Compare addresses for ordering.
ASIO_DECL bool is_v4_compatible() const
Determine whether the address is an IPv4-compatible address.
unsigned long scope_id() const
The scope ID of the address.
friend bool operator!=(const address_v6 &a1, const address_v6 &a2)
Compare two addresses for inequality.
friend bool operator>(const address_v6 &a1, const address_v6 &a2)
Compare addresses for ordering.
void scope_id(unsigned long id)
The scope ID of the address.
Class to represent an error code value.
Implements IP version 6 style addresses.
ASIO_DECL address_v4 to_v4() const
Converts an IPv4-mapped or IPv4-compatible address to an IPv4 address.
ASIO_DECL bool is_loopback() const
Determine whether the address is a loopback address.
ASIO_DECL bool is_multicast_global() const
Determine whether the address is a global multicast address.
ASIO_DECL std::string to_string() const
Get the address as a string.
ASIO_DECL bool is_multicast_site_local() const
Determine whether the address is a site-local multicast address.
std::basic_ostream< Elem, Traits > & operator<<(std::basic_ostream< Elem, Traits > &os, const address_v6 &addr)
Output an address as a string.
ASIO_DECL friend bool operator<(const address_v6 &a1, const address_v6 &a2)
Compare addresses for ordering.
ASIO_DECL bool is_v4_mapped() const
Determine whether the address is a mapped IPv4 address.
ASIO_DECL bool is_unspecified() const
Determine whether the address is unspecified.
static ASIO_DECL address_v6 loopback()
Obtain an address object that represents the loopback address.
ASIO_DECL bool is_link_local() const
Determine whether the address is link local.
static ASIO_DECL address_v6 v4_compatible(const address_v4 &addr)
Create an IPv4-compatible IPv6 address.