struct Streaming {
seats: Vec<Claim>,
read_aloud: bool,
}Expand description
What this connection is streaming: the seats it has claimed takes for - a start’s seat is claimed as soon as its dispatch answers, so a refused one keeps its entry, and a frame that follows a start always finds the seat - and whether it is recording the read-aloud set. A dictation frame carries no seat of its own - and the recording carries none at all - so these are what address one.
Fields§
§seats: Vec<Claim>§read_aloud: boolImplementations§
Source§impl Streaming
impl Streaming
Sourcefn claim(&mut self, seat: &SessionSlot)
fn claim(&mut self, seat: &SessionSlot)
Claim a seat for a start that is on its way, generation unknown: the
dispatch answers before one can be known, and the frame that follows
the start must find the seat already here. An existing claim is
reset to unknown: the newer take’s DictateStarted has not arrived
yet, and an end still in flight for the older one must not retire the
claim the newer take is about to stamp.
Sourcefn stamp(&mut self, seat: &SessionSlot, generation: u64)
fn stamp(&mut self, seat: &SessionSlot, generation: u64)
Stamp the claim with the generation its own DictateStarted carried.
Sourcefn retire(
&mut self,
seat: &SessionSlot,
outcome: &DictateOutcome,
generation: u64,
)
fn retire( &mut self, seat: &SessionSlot, outcome: &DictateOutcome, generation: u64, )
Retire the claim an end names, and only that one: a refusal answers a start that never ran, and an older take’s end must not strip the claim a newer take of the same seat registered under.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Streaming
impl RefUnwindSafe for Streaming
impl Send for Streaming
impl Sync for Streaming
impl Unpin for Streaming
impl UnsafeUnpin for Streaming
impl UnwindSafe for Streaming
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
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
impl<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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