[][src]Enum async_proxy::clients::socks5::Destination

pub enum Destination {
    Ipv4Addr(Ipv4Addr),
    DomainName(Cow<'static, str>),
    Ipv6Addr(Ipv6Addr),
}

Represents a destination address of a service, to which a user wants to connect through a socks5 proxy. It is a good solution, but not the fastest, so it will be rewritten in the future in preference to a dispatch mechanism

Variants

Ipv4Addr(Ipv4Addr)

Represents an IPv4 address

DomainName(Cow<'static, str>)

Represents a domain name

Ipv6Addr(Ipv6Addr)

Represents an IPv6 address

Implementations

impl Destination[src]

pub fn len_as_buffer(&self) -> usize[src]

Returns the length in bytes of the destination, represented as a buffer

Trait Implementations

impl FromStr for Destination[src]

type Err = ()

The associated error which can be returned from parsing.

fn from_str(s: &str) -> Result<Destination, Self::Err>[src]

Parses a socks5 destination. The parsing algorithm is simpler than you can think of: At first, it tries to parse an IPv4 from the string. If succeed, returns an IPv4 destination representation, If not, it tries to parse an IPv6 from the string. Then, if succeed, returns an IPv6 destination representation. Finally, if not, it tries to parse a domain name from the string and returns a domain name destination if succeed, unless Err

Auto Trait Implementations

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, 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.