better_url/better_url/host_details/
ip.rs

1//! Details of an IP host.
2
3use std::net::Ipv6Addr;
4use std::net::Ipv4Addr;
5
6#[cfg(feature = "serde")]
7use serde::{Serialize, Deserialize};
8
9/// Details of an IPv4 host.
10///
11/// Currently empty and only exists for completeness.
12#[derive(Debug, Clone, Copy, PartialEq, Eq)]
13#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
14#[cfg_attr(feature = "serde", serde(deny_unknown_fields))]
15pub struct Ipv4Details {}
16
17#[allow(unused_variables, reason = "API completeness.")]
18#[allow(dead_code, reason = "API completeness.")]
19impl Ipv4Details {
20    /// Construct a [`Self`] from an [`Ipv4Addr`].
21    pub fn from_addr(addr: Ipv4Addr) -> Self {
22        Self {}
23    }
24}
25
26/// Details of an IPv6 host.
27///
28/// Currently empty and only exists for completeness.
29#[derive(Debug, Clone, Copy, PartialEq, Eq)]
30#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
31#[cfg_attr(feature = "serde", serde(deny_unknown_fields))]
32pub struct Ipv6Details {}
33
34#[allow(unused_variables, reason = "API completeness.")]
35#[allow(dead_code, reason = "API completeness.")]
36impl Ipv6Details {
37    /// Construct a [`Self`] from an [`Ipv6Addr`].
38    pub fn from_addr(addr: Ipv6Addr) -> Self {
39        Self {}
40    }
41}
42