Network interface address.
using iterator = subnet_iterator< addr_type >Address iterator type.
using rep_type = addr_type::rep_typeAddress representation type.
using traits_type = ipaddr_traits< Addr >Address traits type.
using addr_type = AddrAddress type.
operator<(const interface_address & rhs) const -> constexpr boolCompares addresses and network masks.
operator!=(const interface_address & rhs) const -> constexpr boolCompares addresses and network masks.
operator==(const interface_address & rhs) const -> constexpr boolCompares addresses and network masks.
operator!() const -> constexpr boolReturns true, if either address or network mask is invalid (equals nought).
operator bool() const -> constexprexplicitReturns true, if both address and network mask are valid (non-nought).
is_widearea() const -> constexpr boolReturns true, if the subnetwork is widearea.
is_loopback() const -> constexpr boolReturns true, if the subnetwork is loopback.
last() const -> constexpr rep_typeGet the last address in the network (broadcast address).
first() const -> constexpr rep_typeGet the first address in the network (gateway address).
contains(const addr_type & rhs) const -> constexpr bool
Returns true, of the subnetwork contains address rhs.
count() const -> constexpr rep_typeReturn the number of addresses in the subnetwork, including gateway and broadcast addresses.
end() const -> constexpr iteratorGet iterator to the end of the subnetwork.
middle() const -> constexpr iteratorGet iterator to this interface address in the subnetwork.
begin() const -> constexpr iteratorGet iterator to the beginning of the subnetwork.
position() const -> constexpr rep_typeGet position of interface address in its subnetwork.
gateway() const -> constexpr const addr_type &Get network gateway address.
prefix() const -> prefix_typeGet network prefix.
netmask() const -> constexpr const addr_type &Get network mask.
address() const -> constexpr const addr_type &Get address.
operator=(const interface_address &) -> interface_address &Assignment.
interface_address(interface_address &&) -> constexprMove-constructor.
interface_address(const interface_address &) -> constexprCopy-constructor.
interface_address() -> constexprinterface_address(const addr_type & addr, const prefix_type prefix) -> constexpr
Construct interface address from address addr and network prefix prefix.
interface_address(const addr_type & addr, const addr_type & netmask) -> constexpr
Construct interface address from address addr and network mask netmask.
Specialisation of std::hash for sys::interface_address.
public std::hash< Addr >using argument_type = sys::interface_address< Addr >Hash function argument type.
using result_type = size_tHash function return value type.
operator()(const argument_type & rhs) const -> result_typeCompute hash by XOR-ing hashes of the address and netmask.