pub struct AddressRange {
pub isd_as: u64,
pub ip_version: u32,
pub prefix_length: u32,
pub address: Vec<u8>,
}Expand description
Represents a SCION endhost address range.
Fields§
§isd_as: u64The ISD-AS of the requested address. Can include wildcards.
ip_version: u32Version MUST be either 4 or 6, indicating IPv4 or IPv6 respectively.
prefix_length: u32The length of the network prefix. May not be larger than 32 for version = 4, and may not be larger than 128 for version = 6.
address: Vec<u8>The IP address in network byte order. The length of the address must be 4 for version = 4 and 16 for version = 16.
Trait Implementations§
Source§impl Clone for AddressRange
impl Clone for AddressRange
Source§fn clone(&self) -> AddressRange
fn clone(&self) -> AddressRange
Returns a duplicate 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 AddressRange
impl Debug for AddressRange
Source§impl Default for AddressRange
impl Default for AddressRange
Source§impl From<&EndhostAddr> for AddressRange
impl From<&EndhostAddr> for AddressRange
Source§fn from(addr: &EndhostAddr) -> Self
fn from(addr: &EndhostAddr) -> Self
Converts to this type from the input type.
Source§impl Message for AddressRange
impl Message for AddressRange
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter.
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message to a buffer. Read more
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message to a newly allocated buffer.
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message with a length-delimiter to a buffer. Read more
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message with a length-delimiter to a newly allocated buffer.
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes an instance of the message from a buffer. Read more
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes a length-delimited instance of the message from the buffer.
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes an instance of the message from a buffer, and merges it into
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes a length-delimited instance of the message from buffer, and
merges it into
self.Source§impl PartialEq for AddressRange
impl PartialEq for AddressRange
Source§impl TryInto<EndhostAddr> for &AddressRange
impl TryInto<EndhostAddr> for &AddressRange
impl StructuralPartialEq for AddressRange
Auto Trait Implementations§
impl Freeze for AddressRange
impl RefUnwindSafe for AddressRange
impl Send for AddressRange
impl Sync for AddressRange
impl Unpin for AddressRange
impl UnwindSafe for AddressRange
Blanket Implementations§
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§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request