ipaddress 1.2.0
|
Utility functions for IP address. More...
Go to the source code of this file.
Namespaces | |
namespace | ipaddress |
Namespace dedicated to IP addresses and networks operations. | |
Functions | |
template<typename FirstIp , typename LastIp > | |
constexpr inline auto | summarize_address_range (const FirstIp &first, const LastIp &last, error_code &code) noexcept -> decltype(internal::summarize_address_range(typename internal::ip_address_type< FirstIp, LastIp >::type{first}, typename internal::ip_address_type< FirstIp, LastIp >::type{last}, code)) |
Summarizes an IP address range into the smallest set of contiguous network blocks. | |
template<typename FirstIp , typename LastIp > | |
constexpr inline auto | summarize_address_range (const FirstIp &first, const LastIp &last) -> decltype(summarize_address_range(first, last, *std::declval< error_code * >())) |
Summarizes an IP address range into the smallest set of contiguous network blocks. | |
template<typename Net , size_t N> | |
constexpr inline fixed_vector< Net, N > | collapse_addresses (const std::array< Net, N > &nets, error_code &code) noexcept |
Collapses a collection of IP networks into the smallest set of contiguous networks. | |
template<typename Net , size_t N> | |
constexpr inline fixed_vector< Net, N > | collapse_addresses (const Net(&nets)[N], error_code &code) noexcept |
Collapses a collection of IP networks into the smallest set of contiguous networks. | |
template<typename... Nets, typename std::enable_if< internal::is_ip_network_types< Nets... >::value, bool >::type = true> | |
constexpr inline auto | collapse_addresses (error_code &code, const Nets &... nets) noexcept -> fixed_vector< typename internal::ip_network_type_extract< Nets... >::type, sizeof...(Nets)> |
Collapses a collection of IP networks into the smallest set of contiguous networks. | |
template<typename It > | |
constexpr inline auto | collapse_addresses (It first, It last, error_code &code) noexcept -> std::vector< typename std::iterator_traits< It >::value_type > |
Collapses a collection of IP networks into the smallest set of contiguous networks. | |
template<typename Net , size_t N> | |
constexpr inline fixed_vector< Net, N > | collapse_addresses (const std::array< Net, N > &nets) |
Collapses a collection of IP networks into the smallest set of contiguous networks. | |
template<typename Net , size_t N> | |
constexpr inline fixed_vector< Net, N > | collapse_addresses (const Net(&nets)[N]) |
Collapses a collection of IP networks into the smallest set of contiguous networks. | |
template<typename... Nets, typename std::enable_if< internal::is_ip_network_types< Nets... >::value, bool >::type = true> | |
constexpr inline auto | collapse_addresses (const Nets &... nets) -> fixed_vector< typename internal::ip_network_type_extract< Nets... >::type, sizeof...(Nets)> |
Collapses a collection of IP networks into the smallest set of contiguous networks. | |
template<typename It > | |
constexpr inline auto | collapse_addresses (It first, It last) -> std::vector< typename std::iterator_traits< It >::value_type > |
Collapses a collection of IP networks into the smallest set of contiguous networks. | |
Utility functions for IP address.
This file contains functions for processing IP address ranges and networks. It provides functionalities summarize_address_range
. These utilities enable efficient handling and manipulation of IP address data.