#[repr(C)]pub struct Ipv6SocketAddress {
pub address: Ipv6Address,
pub port: u16,
pub zone_index: u64,
}
Expand description
An IPV6 socket address, composed of an IPv6 address, a port, and a scope identifier.
Inspired by the address definition in the POSIX specification.
Fields§
§address: Ipv6Address
IPv6 Address.
port: u16
Transport-layer port.
zone_index: u64
Provides a means to identify to which zone a non-global address belongs.
A node may have interfaces attached to different zones of the same scope, for example
different link-local zones are disambiguated by the use of a zone_index
providing the
interface identifier.
zone_index
0 is the default zone.
See RFC 4007 for terminology and examples.
Trait Implementations§
Source§impl Clone for Ipv6SocketAddress
impl Clone for Ipv6SocketAddress
Source§fn clone(&self) -> Ipv6SocketAddress
fn clone(&self) -> Ipv6SocketAddress
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for Ipv6SocketAddress
impl Debug for Ipv6SocketAddress
Source§impl<D: ResourceDialect> Decode<Ipv6SocketAddress, D> for Ipv6SocketAddress
impl<D: ResourceDialect> Decode<Ipv6SocketAddress, D> for Ipv6SocketAddress
Source§impl<D: ResourceDialect> Encode<Ipv6SocketAddress, D> for &Ipv6SocketAddress
impl<D: ResourceDialect> Encode<Ipv6SocketAddress, D> for &Ipv6SocketAddress
Source§impl<D: ResourceDialect, T0: Encode<Ipv6Address, D>, T1: Encode<u16, D>, T2: Encode<u64, D>> Encode<Ipv6SocketAddress, D> for (T0, T1, T2)
impl<D: ResourceDialect, T0: Encode<Ipv6Address, D>, T1: Encode<u16, D>, T2: Encode<u64, D>> Encode<Ipv6SocketAddress, D> for (T0, T1, T2)
Source§impl Hash for Ipv6SocketAddress
impl Hash for Ipv6SocketAddress
Source§impl Ord for Ipv6SocketAddress
impl Ord for Ipv6SocketAddress
Source§fn cmp(&self, other: &Ipv6SocketAddress) -> Ordering
fn cmp(&self, other: &Ipv6SocketAddress) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq for Ipv6SocketAddress
impl PartialEq for Ipv6SocketAddress
Source§impl PartialOrd for Ipv6SocketAddress
impl PartialOrd for Ipv6SocketAddress
Source§impl TypeMarker for Ipv6SocketAddress
impl TypeMarker for Ipv6SocketAddress
Source§type Owned = Ipv6SocketAddress
type Owned = Ipv6SocketAddress
The owned Rust type which this FIDL type decodes into.
Source§fn inline_align(_context: Context) -> usize
fn inline_align(_context: Context) -> usize
Returns the minimum required alignment of the inline portion of the
encoded object. It must be a (nonzero) power of two.
Source§fn inline_size(_context: Context) -> usize
fn inline_size(_context: Context) -> usize
Returns the size of the inline portion of the encoded object, including
padding for alignment. Must be a multiple of
inline_align
.§fn encode_is_copy() -> bool
fn encode_is_copy() -> bool
Returns true if the memory layout of
Self::Owned
matches the FIDL wire
format and encoding requires no validation. When true, we can optimize
encoding arrays and vectors of Self::Owned
to a single memcpy. Read more§fn decode_is_copy() -> bool
fn decode_is_copy() -> bool
Returns true if the memory layout of
Self::Owned
matches the FIDL wire
format and decoding requires no validation. When true, we can optimize
decoding arrays and vectors of Self::Owned
to a single memcpy.Source§impl ValueTypeMarker for Ipv6SocketAddress
impl ValueTypeMarker for Ipv6SocketAddress
Source§type Borrowed<'a> = &'a Ipv6SocketAddress
type Borrowed<'a> = &'a Ipv6SocketAddress
The Rust type to use for encoding. This is a particular
Encode<Self>
type cheaply obtainable from &Self::Owned
. There are three cases: Read moreimpl Copy for Ipv6SocketAddress
impl Eq for Ipv6SocketAddress
impl Persistable for Ipv6SocketAddress
impl StructuralPartialEq for Ipv6SocketAddress
Auto Trait Implementations§
impl Freeze for Ipv6SocketAddress
impl RefUnwindSafe for Ipv6SocketAddress
impl Send for Ipv6SocketAddress
impl Sync for Ipv6SocketAddress
impl Unpin for Ipv6SocketAddress
impl UnwindSafe for Ipv6SocketAddress
Blanket Implementations§
§impl<T> Body for Twhere
T: Persistable,
impl<T> Body for Twhere
T: Persistable,
§type MarkerAtTopLevel = T
type MarkerAtTopLevel = T
The marker type to use when the body is at the top-level.
§type MarkerInResultUnion = T
type MarkerInResultUnion = T
The marker type to use when the body is nested in a result union.
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,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)