pub enum Activity {
Idle,
InputConsumed {
remaining_bytes: usize,
},
Check,
Receive,
Work,
ReceiptWork,
ReceiptCheck,
Bookkeeping,
}Expand description
A permission-only recheck must not wait for an output memory reservation already retained by this stream. Work may produce one bounded output frame.
Variants§
Idle
Idle clock tick: verify locally known identity, revocation and time caveats only. Hosts must not query the store or reserve output memory. Every actual input and disclosure still uses the fresh gates below.
InputConsumed
Shrink retained input accounting after consumed decoded allocations have been dropped. This is an accounting callback, not authorization.
Check
Receive
Advance input admission and bounded control queues. The reader already accounts for the input; waiting for output memory here could deadlock every receiver while it holds the memory needed by those producers.
Work
Load and encode one output frame, retaining its memory through delivery.
ReceiptWork
Encode the immediate receipt for this session’s just-admitted input.
ReceiptCheck
Recheck only that immediate receipt, never prepared source disclosure.
Bookkeeping
Post-receipt peer bookkeeping for an already admitted pending input.
Trait Implementations§
impl Copy for Activity
impl Eq for Activity
impl StructuralPartialEq for Activity
Auto Trait Implementations§
impl Freeze for Activity
impl RefUnwindSafe for Activity
impl Send for Activity
impl Sync for Activity
impl Unpin for Activity
impl UnsafeUnpin for Activity
impl UnwindSafe for Activity
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
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,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.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> 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> ⓘ
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> ⓘ
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