pub struct IncomingPacketInfo {
pub signals_from_sender: PacketSignals,
pub num_saved_surbs: usize,
pub num_evicted_surbs: usize,
}Expand description
Holds packet transient information when ApplicationData is passed from the HOPR protocol layer to the
Application layer.
The HOPR protocol layer typically takes care of properly populating this structure as the packet arrives.
Fields§
§signals_from_sender: PacketSignalsPacket signals that were passed by the sender.
num_saved_surbs: usizeThe number of SURBs the HOPR packet was carrying along with the ApplicationData instance.
num_evicted_surbs: usizeHow many already-held SURBs were evicted while inserting this packet’s because this sender’s SURB buffer was full.
The arriving SURBs are retained and the oldest queued ones are dropped. Exposed for observability only; sessions deliberately do not feed it back into the SURB flow estimate.
Trait Implementations§
Source§impl Clone for IncomingPacketInfo
impl Clone for IncomingPacketInfo
Source§fn clone(&self) -> IncomingPacketInfo
fn clone(&self) -> IncomingPacketInfo
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for IncomingPacketInfo
Source§impl Debug for IncomingPacketInfo
impl Debug for IncomingPacketInfo
Source§impl Default for IncomingPacketInfo
impl Default for IncomingPacketInfo
Source§fn default() -> IncomingPacketInfo
fn default() -> IncomingPacketInfo
Returns the “default value” for a type. Read more
impl Eq for IncomingPacketInfo
Source§impl PartialEq for IncomingPacketInfo
impl PartialEq for IncomingPacketInfo
impl StructuralPartialEq for IncomingPacketInfo
Auto Trait Implementations§
impl Freeze for IncomingPacketInfo
impl RefUnwindSafe for IncomingPacketInfo
impl Send for IncomingPacketInfo
impl Sync for IncomingPacketInfo
impl Unpin for IncomingPacketInfo
impl UnsafeUnpin for IncomingPacketInfo
impl UnwindSafe for IncomingPacketInfo
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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<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
Checks if this value is equivalent to the given key. Read more
§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
Checks if this value is equivalent to the given key. Read more
§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