pub struct SubscriptionEmitter { /* private fields */ }Implementations§
Source§impl SubscriptionEmitter
impl SubscriptionEmitter
Sourcepub fn emit(&self, value: UiValue) -> Result<(), AsyncRuntimeError>
pub fn emit(&self, value: UiValue) -> Result<(), AsyncRuntimeError>
Emit one value from any Rust worker thread.
§Errors
Returns AsyncRuntimeError::Closed after teardown, or
AsyncRuntimeError::Backpressure when a lossless stream’s bounded
pending queue is full. Latest-only streams explicitly replace their
pending value instead.
Sourcepub fn emit_blocking(&self, value: UiValue) -> Result<(), AsyncRuntimeError>
pub fn emit_blocking(&self, value: UiValue) -> Result<(), AsyncRuntimeError>
Emit one lossless value, waiting for foreground capacity or cancellation. Latest-only streams never block because they explicitly replace a value.
§Errors
Returns when the stream closes or its shared queue is poisoned.
Sourcepub fn emit_error(
&self,
message: impl Into<String>,
) -> Result<(), AsyncRuntimeError>
pub fn emit_error( &self, message: impl Into<String>, ) -> Result<(), AsyncRuntimeError>
Emit a structured error to the Rhai error callback.
§Errors
Returns AsyncRuntimeError::Closed after the producer work returns,
explicit cancellation, scope teardown, generation replacement, or
registry drop.
Sourcepub fn close_reason(&self) -> Option<SubscriptionCloseReason>
pub fn close_reason(&self) -> Option<SubscriptionCloseReason>
Return the first reason that closed this emitter, if any.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for SubscriptionEmitter
impl RefUnwindSafe for SubscriptionEmitter
impl Send for SubscriptionEmitter
impl Sync for SubscriptionEmitter
impl Unpin for SubscriptionEmitter
impl UnsafeUnpin for SubscriptionEmitter
impl UnwindSafe for SubscriptionEmitter
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,
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>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<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>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> 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)
Convert
&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)
Convert
&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> DowncastSync for T
impl<T> DowncastSync for T
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T> Variant for T
impl<T> Variant for T
Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert this
Variant trait object to &mut dyn Any.Source§fn as_boxed_any(self: Box<T>) -> Box<dyn Any>
fn as_boxed_any(self: Box<T>) -> Box<dyn Any>
Convert this
Variant trait object to Box<dyn Any>.