fastcgi++
3.1alpha
A C++ FastCGI/Web API
|
Go to the documentation of this file.
28 #ifndef FASTCGIPP_ADDRESS_HPP
29 #define FASTCGIPP_ADDRESS_HPP
53 static constexpr
size_t size=16;
56 std::array<unsigned char, size>
m_data;
71 address.m_data.begin(),
80 address.m_data.begin(),
95 explicit Address(
const unsigned char* data)
110 template<
class charT>
void assign(
116 assign(
string,
string+std::strlen(
string));
133 operator bool()
const;
157 template<
class charT,
class Traits>
158 std::basic_ostream<charT, Traits>&
operator<<(
159 std::basic_ostream<charT, Traits>& os,
168 template<
class charT,
class Traits>
169 std::basic_istream<charT, Traits>&
operator>>(
170 std::basic_istream<charT, Traits>& is,
std::basic_ostream< charT, Traits > & operator<<(std::basic_ostream< charT, Traits > &os, const Address &address)
Address stream insertion operation.
Address operator&(const Address &x) const
static constexpr size_t size
This is the data length of the IPv6 address.
Address & operator&=(const Address &x)
void zero()
Set all bits to zero in IP address.
void assign(const charT *start, const charT *end)
Assign the IP address from a string of characters.
std::array< unsigned char, size > m_data
Data representation of the IPv6 address.
Topmost namespace for the fastcgi++ library.
Address()
Initializes an all zero address.
Efficiently stores IPv6 addresses.
std::basic_istream< charT, Traits > & operator>>(std::basic_istream< charT, Traits > &is, Address &address)
Address stream extractor operation.
bool operator<(const Address &x) const
Address operator=(const unsigned char *data)
Assign the IPv6 address from a data array.
bool operator==(const Address &x) const