Enum Addresses
pub enum Addresses {
Unspecified,
IPv4(IPv4),
IPv6(IPv6),
Unix(Unix),
}
Expand description
The source and destination address information for a given AddressFamily
.
§Examples
use rama_haproxy::protocol::v2::{Addresses, AddressFamily};
use std::net::SocketAddr;
let addresses: Addresses = ("127.0.0.1:80".parse::<SocketAddr>().unwrap(), "192.168.1.1:443".parse::<SocketAddr>().unwrap()).into();
assert_eq!(addresses.address_family(), AddressFamily::IPv4);
Variants§
Unspecified
The source and destination addresses are unspecified.
IPv4(IPv4)
The source and destination addresses are IPv4.
IPv6(IPv6)
The source and destination addresses are IPv6.
Unix(Unix)
The source and destination addresses are Unix.
Implementations§
§impl Addresses
impl Addresses
pub fn address_family(&self) -> AddressFamily
pub fn address_family(&self) -> AddressFamily
The AddressFamily
for this Addresses
.
Trait Implementations§
§impl From<(SocketAddr, SocketAddr)> for Addresses
impl From<(SocketAddr, SocketAddr)> for Addresses
§fn from(addresses: (SocketAddr, SocketAddr)) -> Addresses
fn from(addresses: (SocketAddr, SocketAddr)) -> Addresses
Converts to this type from the input type.
§impl WriteToHeader for Addresses
impl WriteToHeader for Addresses
impl Copy for Addresses
impl Eq for Addresses
impl StructuralPartialEq for Addresses
Auto Trait Implementations§
impl Freeze for Addresses
impl RefUnwindSafe for Addresses
impl Send for Addresses
impl Sync for Addresses
impl Unpin for Addresses
impl UnwindSafe for Addresses
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§fn and<P, B, E>(self, other: P) -> And<T, P>
fn and<P, B, E>(self, other: P) -> And<T, P>
Create a new
Policy
that returns Action::Follow
only if self
and other
return
Action::Follow
. Read more