pub struct ResolvedStreams<'a, B: EventStreamBackend> {
pub cursor: u64,
pub current: StreamId,
/* private fields */
}Expand description
Streams that are synchronized correctly after a MultiStream::resolve is called.
Fields§
§cursor: u64The cursor on the current stream.
This cursor should be use for new allocations happening on the current stream.
current: StreamIdThe current stream where new tasks can be sent safely.
Implementations§
Source§impl<'a, B: EventStreamBackend> ResolvedStreams<'a, B>
impl<'a, B: EventStreamBackend> ResolvedStreams<'a, B>
Sourcepub fn get(&mut self, stream_id: &StreamId) -> &mut B::Stream
pub fn get(&mut self, stream_id: &StreamId) -> &mut B::Stream
Get the stream associated to the given stream_id.
Sourcepub fn current(&mut self) -> &mut B::Stream
pub fn current(&mut self) -> &mut B::Stream
Get the stream associated to the current stream_id.
Sourcepub fn current_and_failures(&mut self) -> (&mut B::Stream, &mut ErrorGraph)
pub fn current_and_failures(&mut self) -> (&mut B::Stream, &mut ErrorGraph)
The current stream and the device’s failure store together, for the paths that hand the store to the stream’s memory manager — every reserve, bind and cleanup, since those are where slices shed the failures they carry.
Sourcepub fn get_and_failures(
&mut self,
stream_id: &StreamId,
) -> (&mut B::Stream, &mut ErrorGraph)
pub fn get_and_failures( &mut self, stream_id: &StreamId, ) -> (&mut B::Stream, &mut ErrorGraph)
current_and_failures for the stream at
stream_id.
Sourcepub fn taint<'b>(
&mut self,
error: ServerError,
written: impl Iterator<Item = &'b BufferBinding>,
)
pub fn taint<'b>( &mut self, error: ServerError, written: impl Iterator<Item = &'b BufferBinding>, )
Taint every allocation in written with error — see
base::taint.
Sourcepub fn written<'b>(&mut self, written: impl Iterator<Item = &'b BufferBinding>)
pub fn written<'b>(&mut self, written: impl Iterator<Item = &'b BufferBinding>)
Release the failure on every allocation in written — see
base::written.
Trait Implementations§
Source§impl<'a, B: EventStreamBackend> Drop for ResolvedStreams<'a, B>
impl<'a, B: EventStreamBackend> Drop for ResolvedStreams<'a, B>
Auto Trait Implementations§
impl<'a, B> !RefUnwindSafe for ResolvedStreams<'a, B>
impl<'a, B> !UnwindSafe for ResolvedStreams<'a, B>
impl<'a, B> Freeze for ResolvedStreams<'a, B>
impl<'a, B> Send for ResolvedStreams<'a, B>
impl<'a, B> Sync for ResolvedStreams<'a, B>
impl<'a, B> Unpin for ResolvedStreams<'a, B>
impl<'a, B> UnsafeUnpin for ResolvedStreams<'a, B>
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> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
impl<T> ErasedDestructor for Twhere
T: 'static,
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> ⓘ
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