nl:: Inet:: IPPrefix
#include <src/inet/IPPrefix.h>
Internet protocol address prefix.
Summary
Use objects of the IPPrefix class to represent Internet protocol address prefixes of both IPv4 and IPv6 address families.
Public attributes |
|
|---|---|
IPAddr
|
An IPv6 or IPv4 address.
|
Length
|
uint8_t
Length of the prefix.
|
Public static attributes |
|
|---|---|
Zero
|
A distinguished object where the type of
IPAddr is kIPAddressType_Any and Length == 0. |
Public functions |
|
|---|---|
IsZero(void) const
|
bool
Compares the prefix with the distinguished
Zero value. |
MatchAddress(const IPAddress & addr) const
|
bool
Test if an address matches the prefix.
|
operator!=(const IPPrefix & other) const
|
bool
Compares the prefix with another for inequivalence.
|
operator=(const IPPrefix & other)
|
IPPrefix &
Conventional assignment operator.
|
operator==(const IPPrefix & other) const
|
bool
Compares the prefix with another for equivalence.
|
Public attributes
Length
uint8_t Length
Length of the prefix.
Note well: this field is public, and it is an invariant of this class that Length <= 32 where the type of IPAddr is kIPAddressType_IPv4 and Length <= 128 where the type of IPAddr is kIPAddressType_IPv6.
Public static attributes
Zero
IPPrefix Zero
A distinguished object where the type of IPAddr is kIPAddressType_Any and Length == 0.
Public functions
IsZero
bool IsZero( void ) const
Compares the prefix with the distinguished Zero value.
Note well: a prefix is not equivalent to Zero if the type of IPAddr is not kIPAddressType_Any.
| Details | |
|---|---|
| Returns |
true if equivalent to Zero, else false. |
MatchAddress
bool MatchAddress( const IPAddress & addr ) const
Test if an address matches the prefix.
| Details | |||
|---|---|---|---|
| Parameters |
|
||
| Returns |
true if addr has the prefix, else false. |
operator!=
bool operator!=( const IPPrefix & other ) const
Compares the prefix with another for inequivalence.
Note well: two prefixes are not equivalent unless the IPAddr fields are completely equivalent, i.e. all 128 bits must be identical.
| Details | |
|---|---|
| Returns |
false if equivalent, else false. |
operator=
IPPrefix & operator=( const IPPrefix & other )
Conventional assignment operator.
| Details | |||
|---|---|---|---|
| Parameters |
|
||
| Returns |
a reference to this object.
|
operator==
bool operator==( const IPPrefix & other ) const
Compares the prefix with another for equivalence.
Note well: two prefixes are not equivalent unless the IPAddr fields are completely equivalent, i.e. all 128 bits must be identical.
| Details | |
|---|---|
| Returns |
true if equivalent, else false. |