Struct async_std::net::SocketAddrV41.0.0[][src]

pub struct SocketAddrV4 { /* fields omitted */ }

An IPv4 socket address.

IPv4 socket addresses consist of an IPv4 address and a 16-bit port number, as stated in IETF RFC 793.

See SocketAddr for a type encompassing both IPv4 and IPv6 socket addresses.

The size of a SocketAddrV4 struct may vary depending on the target operating system.

Examples

use std::net::{Ipv4Addr, SocketAddrV4};

let socket = SocketAddrV4::new(Ipv4Addr::new(127, 0, 0, 1), 8080);

assert_eq!("127.0.0.1:8080".parse(), Ok(socket));
assert_eq!(socket.ip(), &Ipv4Addr::new(127, 0, 0, 1));
assert_eq!(socket.port(), 8080);

Implementations

impl SocketAddrV4[src]

pub fn new(ip: Ipv4Addr, port: u16) -> SocketAddrV4[src]

Creates a new socket address from an IPv4 address and a port number.

Examples

use std::net::{SocketAddrV4, Ipv4Addr};

let socket = SocketAddrV4::new(Ipv4Addr::new(127, 0, 0, 1), 8080);

pub fn ip(&self) -> &Ipv4Addr[src]

Returns the IP address associated with this socket address.

Examples

use std::net::{SocketAddrV4, Ipv4Addr};

let socket = SocketAddrV4::new(Ipv4Addr::new(127, 0, 0, 1), 8080);
assert_eq!(socket.ip(), &Ipv4Addr::new(127, 0, 0, 1));

pub fn set_ip(&mut self, new_ip: Ipv4Addr)1.9.0[src]

Changes the IP address associated with this socket address.

Examples

use std::net::{SocketAddrV4, Ipv4Addr};

let mut socket = SocketAddrV4::new(Ipv4Addr::new(127, 0, 0, 1), 8080);
socket.set_ip(Ipv4Addr::new(192, 168, 0, 1));
assert_eq!(socket.ip(), &Ipv4Addr::new(192, 168, 0, 1));

pub fn port(&self) -> u16[src]

Returns the port number associated with this socket address.

Examples

use std::net::{SocketAddrV4, Ipv4Addr};

let socket = SocketAddrV4::new(Ipv4Addr::new(127, 0, 0, 1), 8080);
assert_eq!(socket.port(), 8080);

pub fn set_port(&mut self, new_port: u16)1.9.0[src]

Changes the port number associated with this socket address.

Examples

use std::net::{SocketAddrV4, Ipv4Addr};

let mut socket = SocketAddrV4::new(Ipv4Addr::new(127, 0, 0, 1), 8080);
socket.set_port(4242);
assert_eq!(socket.port(), 4242);

Trait Implementations

impl Clone for SocketAddrV4[src]

impl Copy for SocketAddrV4[src]

impl Debug for SocketAddrV4[src]

impl Display for SocketAddrV4[src]

impl Eq for SocketAddrV4[src]

impl From<SocketAddrV4> for SocketAddr1.16.0[src]

pub fn from(sock4: SocketAddrV4) -> SocketAddr[src]

Converts a SocketAddrV4 into a SocketAddr::V4.

impl FromStr for SocketAddrV41.5.0[src]

type Err = AddrParseError

The associated error which can be returned from parsing.

impl Hash for SocketAddrV4[src]

impl Ord for SocketAddrV41.45.0[src]

impl PartialEq<SocketAddrV4> for SocketAddrV4[src]

impl PartialOrd<SocketAddrV4> for SocketAddrV41.45.0[src]

impl ToSocketAddrs for SocketAddrV4[src]

type Iter = IntoIter<SocketAddr>

Returned iterator over socket addresses which this type may correspond to. Read more

impl ToSocketAddrs for SocketAddrV4[src]

type Iter = IntoIter<SocketAddr>

Returned iterator over socket addresses which this type may correspond to.

Auto Trait Implementations

impl RefUnwindSafe for SocketAddrV4

impl Send for SocketAddrV4

impl Sync for SocketAddrV4

impl Unpin for SocketAddrV4

impl UnwindSafe for SocketAddrV4

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.