All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Types | Public Member Functions | Static Public Member Functions | Private Attributes | Friends | Related Functions
asio::ip::address_v6 Class Reference

Implements IP version 6 style addresses. More...

#include <address_v6.hpp>

List of all members.

Public Types

typedef boost::array< unsigned
char, 16 > 
bytes_type
 The type used to represent an address as an array of bytes.

Public Member Functions

 address_v6 ()
 Default constructor.
 address_v6 (const bytes_type &bytes, unsigned long scope_id=0)
 Construct an address from raw bytes and scope ID.
 address_v6 (const address_v6 &other)
 Copy constructor.
bool is_link_local () const
 Determine whether the address is link local.
bool is_loopback () const
 Determine whether the address is a loopback address.
bool is_multicast () const
 Determine whether the address is a multicast address.
bool is_multicast_global () const
 Determine whether the address is a global multicast address.
bool is_multicast_link_local () const
 Determine whether the address is a link-local multicast address.
bool is_multicast_node_local () const
 Determine whether the address is a node-local multicast address.
bool is_multicast_org_local () const
 Determine whether the address is a org-local multicast address.
bool is_multicast_site_local () const
 Determine whether the address is a site-local multicast address.
bool is_site_local () const
 Determine whether the address is site local.
bool is_unspecified () const
 Determine whether the address is unspecified.
bool is_v4_compatible () const
 Determine whether the address is an IPv4-compatible address.
bool is_v4_mapped () const
 Determine whether the address is a mapped IPv4 address.
address_v6operator= (const address_v6 &other)
 Assign from another address.
unsigned long scope_id () const
 The scope ID of the address.
void scope_id (unsigned long id)
 The scope ID of the address.
bytes_type to_bytes () const
 Get the address in bytes.
std::string to_string () const
 Get the address as a string.
std::string to_string (asio::error_code &ec) const
 Get the address as a string.
address_v4 to_v4 () const
 Converts an IPv4-mapped or IPv4-compatible address to an IPv4 address.

Static Public Member Functions

static address_v6 any ()
 Obtain an address object that represents any address.
static address_v6 from_string (const char *str)
 Create an address from an IP address string.
static address_v6 from_string (const char *str, asio::error_code &ec)
 Create an address from an IP address string.
static address_v6 from_string (const std::string &str)
 Create an address from an IP address string.
static address_v6 from_string (const std::string &str, asio::error_code &ec)
 Create an address from an IP address string.
static address_v6 loopback ()
 Obtain an address object that represents the loopback address.
static address_v6 v4_compatible (const address_v4 &addr)
 Create an IPv4-compatible IPv6 address.
static address_v6 v4_mapped (const address_v4 &addr)
 Create an IPv4-mapped IPv6 address.

Private Attributes

asio::detail::in6_addr_type addr_
unsigned long scope_id_

Friends

bool operator!= (const address_v6 &a1, const address_v6 &a2)
 Compare two addresses for inequality.
bool operator< (const address_v6 &a1, const address_v6 &a2)
 Compare addresses for ordering.
bool operator<= (const address_v6 &a1, const address_v6 &a2)
 Compare addresses for ordering.
bool operator== (const address_v6 &a1, const address_v6 &a2)
 Compare two addresses for equality.
bool operator> (const address_v6 &a1, const address_v6 &a2)
 Compare addresses for ordering.
bool operator>= (const address_v6 &a1, const address_v6 &a2)
 Compare addresses for ordering.

Related Functions

(Note that these are not member functions.)

template<typename Elem , typename Traits >
std::basic_ostream< Elem,
Traits > & 
operator<< (std::basic_ostream< Elem, Traits > &os, const address_v6 &addr)
 Output an address as a string.

Detailed Description

Implements IP version 6 style addresses.

The asio::ip::address_v6 class provides the ability to use and manipulate IP version 6 addresses.

Thread Safety
Distinct objects: Safe.
Shared objects: Unsafe.

Definition at line 47 of file address_v6.hpp.


Member Typedef Documentation

typedef boost::array<unsigned char, 16> asio::ip::address_v6::bytes_type

The type used to represent an address as an array of bytes.

Definition at line 51 of file address_v6.hpp.


Constructor & Destructor Documentation

Default constructor.

Definition at line 54 of file address_v6.hpp.

asio::ip::address_v6::address_v6 ( const bytes_type bytes,
unsigned long  scope_id = 0 
) [inline, explicit]

Construct an address from raw bytes and scope ID.

Definition at line 62 of file address_v6.hpp.

asio::ip::address_v6::address_v6 ( const address_v6 other) [inline]

Copy constructor.

Definition at line 70 of file address_v6.hpp.


Member Function Documentation

static address_v6 asio::ip::address_v6::any ( ) [inline, static]

Obtain an address object that represents any address.

Definition at line 330 of file address_v6.hpp.

static address_v6 asio::ip::address_v6::from_string ( const char *  str) [inline, static]

Create an address from an IP address string.

Definition at line 133 of file address_v6.hpp.

static address_v6 asio::ip::address_v6::from_string ( const char *  str,
asio::error_code ec 
) [inline, static]

Create an address from an IP address string.

Definition at line 142 of file address_v6.hpp.

static address_v6 asio::ip::address_v6::from_string ( const std::string &  str) [inline, static]

Create an address from an IP address string.

Definition at line 152 of file address_v6.hpp.

static address_v6 asio::ip::address_v6::from_string ( const std::string &  str,
asio::error_code ec 
) [inline, static]

Create an address from an IP address string.

Definition at line 158 of file address_v6.hpp.

bool asio::ip::address_v6::is_link_local ( ) const [inline]

Determine whether the address is link local.

Definition at line 211 of file address_v6.hpp.

bool asio::ip::address_v6::is_loopback ( ) const [inline]

Determine whether the address is a loopback address.

Definition at line 175 of file address_v6.hpp.

bool asio::ip::address_v6::is_multicast ( ) const [inline]

Determine whether the address is a multicast address.

Definition at line 239 of file address_v6.hpp.

Determine whether the address is a global multicast address.

Definition at line 246 of file address_v6.hpp.

Determine whether the address is a link-local multicast address.

Definition at line 253 of file address_v6.hpp.

Determine whether the address is a node-local multicast address.

Definition at line 260 of file address_v6.hpp.

Determine whether the address is a org-local multicast address.

Definition at line 267 of file address_v6.hpp.

Determine whether the address is a site-local multicast address.

Definition at line 274 of file address_v6.hpp.

bool asio::ip::address_v6::is_site_local ( ) const [inline]

Determine whether the address is site local.

Definition at line 218 of file address_v6.hpp.

bool asio::ip::address_v6::is_unspecified ( ) const [inline]

Determine whether the address is unspecified.

Definition at line 193 of file address_v6.hpp.

bool asio::ip::address_v6::is_v4_compatible ( ) const [inline]

Determine whether the address is an IPv4-compatible address.

Definition at line 232 of file address_v6.hpp.

bool asio::ip::address_v6::is_v4_mapped ( ) const [inline]

Determine whether the address is a mapped IPv4 address.

Definition at line 225 of file address_v6.hpp.

static address_v6 asio::ip::address_v6::loopback ( ) [inline, static]

Obtain an address object that represents the loopback address.

Definition at line 336 of file address_v6.hpp.

address_v6& asio::ip::address_v6::operator= ( const address_v6 other) [inline]

Assign from another address.

Definition at line 77 of file address_v6.hpp.

unsigned long asio::ip::address_v6::scope_id ( ) const [inline]

The scope ID of the address.

Returns the scope ID associated with the IPv6 address.

Definition at line 88 of file address_v6.hpp.

void asio::ip::address_v6::scope_id ( unsigned long  id) [inline]

The scope ID of the address.

Modifies the scope ID associated with the IPv6 address.

Definition at line 97 of file address_v6.hpp.

Get the address in bytes.

Definition at line 103 of file address_v6.hpp.

std::string asio::ip::address_v6::to_string ( ) const [inline]

Get the address as a string.

Definition at line 112 of file address_v6.hpp.

std::string asio::ip::address_v6::to_string ( asio::error_code ec) const [inline]

Get the address as a string.

Definition at line 121 of file address_v6.hpp.

Converts an IPv4-mapped or IPv4-compatible address to an IPv4 address.

Definition at line 165 of file address_v6.hpp.

static address_v6 asio::ip::address_v6::v4_compatible ( const address_v4 addr) [inline, static]

Create an IPv4-compatible IPv6 address.

Definition at line 354 of file address_v6.hpp.

static address_v6 asio::ip::address_v6::v4_mapped ( const address_v4 addr) [inline, static]

Create an IPv4-mapped IPv6 address.

Definition at line 345 of file address_v6.hpp.


Friends And Related Function Documentation

bool operator!= ( const address_v6 a1,
const address_v6 a2 
) [friend]

Compare two addresses for inequality.

Definition at line 290 of file address_v6.hpp.

bool operator< ( const address_v6 a1,
const address_v6 a2 
) [friend]

Compare addresses for ordering.

Definition at line 299 of file address_v6.hpp.

template<typename Elem , typename Traits >
std::basic_ostream< Elem, Traits > & operator<< ( std::basic_ostream< Elem, Traits > &  os,
const address_v6 addr 
) [related]

Output an address as a string.

Used to output a human-readable string for a specified address.

Parameters:
osThe output stream to which the string will be written.
addrThe address to be written.
Returns:
The output stream.

Definition at line 383 of file address_v6.hpp.

bool operator<= ( const address_v6 a1,
const address_v6 a2 
) [friend]

Compare addresses for ordering.

Definition at line 318 of file address_v6.hpp.

bool operator== ( const address_v6 a1,
const address_v6 a2 
) [friend]

Compare two addresses for equality.

Definition at line 281 of file address_v6.hpp.

bool operator> ( const address_v6 a1,
const address_v6 a2 
) [friend]

Compare addresses for ordering.

Definition at line 312 of file address_v6.hpp.

bool operator>= ( const address_v6 a1,
const address_v6 a2 
) [friend]

Compare addresses for ordering.

Definition at line 324 of file address_v6.hpp.


Member Data Documentation

Definition at line 364 of file address_v6.hpp.

unsigned long asio::ip::address_v6::scope_id_ [private]

Definition at line 367 of file address_v6.hpp.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


Castor
Author(s): Carpe Noctem
autogenerated on Fri Nov 8 2013 11:05:41