pub struct IpAddrV4 { /* private fields */ }
Expand description
Implements IP version 4 style addresses.
Implementations§
Source§impl IpAddrV4
impl IpAddrV4
Sourcepub fn new(a: u8, b: u8, c: u8, d: u8) -> IpAddrV4
pub fn new(a: u8, b: u8, c: u8, d: u8) -> IpAddrV4
Returns a IP-v4 address.
The result will represent the IP address a
.b
.c
.d
.
§Examples
use asyncio::ip::IpAddrV4;
let ip = IpAddrV4::new(192,168,0,1);
Sourcepub fn any() -> IpAddrV4
pub fn any() -> IpAddrV4
Returns a unspecified IP-v4 address.
§Examples
use asyncio::ip::IpAddrV4;
let ip = IpAddrV4::any();
assert_eq!(ip, IpAddrV4::new(0,0,0,0));
Sourcepub fn loopback() -> IpAddrV4
pub fn loopback() -> IpAddrV4
Returns a IP-v4 address for a loopback address.
§Examples
use asyncio::ip::IpAddrV4;
let ip = IpAddrV4::loopback();
assert_eq!(ip, IpAddrV4::new(127,0,0,1));
Sourcepub fn is_unspecified(&self) -> bool
pub fn is_unspecified(&self) -> bool
Returns true for if this is a unspecified address 0.0.0.0.
§Examples
use asyncio::ip::IpAddrV4;
assert!(IpAddrV4::any().is_unspecified());
Sourcepub fn is_loopback(&self) -> bool
pub fn is_loopback(&self) -> bool
Return true for if this is a loopback address 127.0.0.1.
§Examples
use asyncio::ip::IpAddrV4;
assert!(IpAddrV4::loopback().is_loopback());
Sourcepub fn is_class_a(&self) -> bool
pub fn is_class_a(&self) -> bool
Returns true for if this is a class A address.
The class A address ranges:
- 10.0.0.0/8
§Examples
use asyncio::ip::IpAddrV4;
assert!(IpAddrV4::new(10,0,0,1).is_class_a());
Sourcepub fn is_class_b(&self) -> bool
pub fn is_class_b(&self) -> bool
Returns true for if this is a class B address.
The class B address ranges:
- 172.16.0.0/12
§Examples
use asyncio::ip::IpAddrV4;
assert!(IpAddrV4::new(172,16,0,1).is_class_b());
Sourcepub fn is_class_c(&self) -> bool
pub fn is_class_c(&self) -> bool
Returns true for if this is a class C address.
The class c address ranges:
- 192.168.0.0/16
§Examples
use asyncio::ip::IpAddrV4;
assert!(IpAddrV4::new(192,168,0,1).is_class_c());
Sourcepub fn is_private(&self) -> bool
pub fn is_private(&self) -> bool
Returns true for if this is a private address.
The private address ranges:
- 10.0.0.0/8
- 172.16.0.0/12
- 192.168.0.0/16
§Examples
use asyncio::ip::IpAddrV4;
assert!(IpAddrV4::new(192,168,0,1).is_private());
Sourcepub fn is_multicast(&self) -> bool
pub fn is_multicast(&self) -> bool
Returns true for if this is a class D address.
The class D address ranges:
- 224.0.0.0/4
§Examples
use asyncio::ip::IpAddrV4;
assert!(IpAddrV4::new(224,0,0,1).is_multicast());
Sourcepub fn is_link_local(&self) -> bool
pub fn is_link_local(&self) -> bool
Returns true for if this is a link-local address.
The link-local address ranges:
- 169.254.0.0/16
§Examples
use asyncio::ip::IpAddrV4;
assert!(IpAddrV4::new(169,254,0,0).is_link_local());
Trait Implementations§
Source§impl AddAssign<i64> for IpAddrV4
impl AddAssign<i64> for IpAddrV4
Source§fn add_assign(&mut self, rhs: i64)
fn add_assign(&mut self, rhs: i64)
+=
operation. Read moreSource§impl<'a, P: Protocol> IntoEndpoint<P> for &'a IpAddrV4
impl<'a, P: Protocol> IntoEndpoint<P> for &'a IpAddrV4
fn into_endpoint(self, port: u16) -> IpEndpoint<P>
Source§impl<P: Protocol> IntoEndpoint<P> for IpAddrV4
impl<P: Protocol> IntoEndpoint<P> for IpAddrV4
fn into_endpoint(self, port: u16) -> IpEndpoint<P>
Source§impl Ord for IpAddrV4
impl Ord for IpAddrV4
Source§impl PartialOrd for IpAddrV4
impl PartialOrd for IpAddrV4
Source§impl SubAssign<i64> for IpAddrV4
impl SubAssign<i64> for IpAddrV4
Source§fn sub_assign(&mut self, rhs: i64)
fn sub_assign(&mut self, rhs: i64)
-=
operation. Read more