nl::Inet::IPPrefix

#include <src/inet/IPPrefix.h>

Prefixo do endereço de protocolo de Internet.

Resumo

Use objetos da classe IPPrefix para representar prefixos de endereço de protocolo de Internet das famílias de endereços IPv4 e IPv6.

Atributos públicos

IPAddr
Um endereço IPv6 ou IPv4.
Length
uint8_t
Tamanho do prefixo.

Atributos estáticos públicos

Zero
Um objeto distinto em que o tipo de IPAddr é kIPAddressType_Any e Length == 0.

Funções públicas

IsZero(void) const
bool
Compara o prefixo com o valor Zero distinto.
MatchAddress(const IPAddress & addr) const
bool
Teste se um endereço corresponde ao prefixo.
operator!=(const IPPrefix & other) const
bool
Compara o prefixo com outro para inequivalências.
operator=(const IPPrefix & other)
Operador de atribuição convencional.
operator==(const IPPrefix & other) const
bool
Compara o prefixo com outro para equivalência.

Atributos públicos

IPAddr

IPAddress IPAddr

Um endereço IPv6 ou IPv4.

Comprimento

uint8_t Length

Tamanho do prefixo.

Esse campo é público e é uma invariante dessa classe Length <= 32, em que o tipo de IPAddr é kIPAddressType_IPv4 e Length <= 128, em que o tipo de IPAddr é kIPAddressType_IPv6.

Atributos estáticos públicos

Zero

IPPrefix Zero

Um objeto distinto em que o tipo de IPAddr é kIPAddressType_Any e Length == 0.

Funções públicas

IsZero

bool IsZero(
  void
) const 

Compara o prefixo com o valor Zero distinto.

Observe bem: um prefixo não será equivalente a Zero se o tipo de IPAddr não for kIPAddressType_Any.

Detalhes
Retornos
true se for equivalente a Zero. Caso contrário, false.

MatchAddress

bool MatchAddress(
  const IPAddress & addr
) const 

Teste se um endereço corresponde ao prefixo.

Detalhes
Parâmetros
[in] addr
o endereço a ser testado.
Retornos
true se addr tiver o prefixo. Caso contrário, false.

operator!=

bool operator!=(
  const IPPrefix & other
) const 

Compara o prefixo com outro para inequivalências.

Observe bem: dois prefixos não são equivalentes, a menos que os campos IPAddr sejam completamente equivalentes, ou seja, todos os 128 bits precisam ser idênticos.

Detalhes
Retornos
false se equivalente. Caso contrário, false.

operator=

IPPrefix & operator=(
  const IPPrefix & other
)

Operador de atribuição convencional.

Detalhes
Parâmetros
[in] other
o prefixo a ser copiado.
Retornos
uma referência a esse objeto.

operador==

bool operator==(
  const IPPrefix & other
) const 

Compara o prefixo com outro para equivalência.

Observe bem: dois prefixos não são equivalentes, a menos que os campos IPAddr sejam completamente equivalentes, ou seja, todos os 128 bits precisam ser idênticos.

Detalhes
Retornos
true se equivalente; caso contrário, false.