pub struct StreamEmitter { /* private fields */ }Expand description
Event emitter for ProcessRunner events
Provides on(), once(), off(), and emit() methods similar to Node.js EventEmitter.
Implementations§
Source§impl StreamEmitter
impl StreamEmitter
Sourcepub async fn once<F>(&self, event: EventType, listener: F)
pub async fn once<F>(&self, event: EventType, listener: F)
Register a one-time listener for an event
The listener will be removed after it is invoked once.
Sourcepub async fn emit(&self, event: EventType, data: EventData)
pub async fn emit(&self, event: EventType, data: EventData)
Emit an event to all registered listeners
§Arguments
event- The event type to emitdata- The event data to pass to listeners
Sourcepub async fn listener_count(&self, event: &EventType) -> usize
pub async fn listener_count(&self, event: &EventType) -> usize
Get the number of listeners for an event
Sourcepub async fn remove_all_listeners(&self)
pub async fn remove_all_listeners(&self)
Remove all listeners for all events
Trait Implementations§
Source§impl Debug for StreamEmitter
impl Debug for StreamEmitter
Auto Trait Implementations§
impl !Freeze for StreamEmitter
impl !RefUnwindSafe for StreamEmitter
impl !UnwindSafe for StreamEmitter
impl Send for StreamEmitter
impl Sync for StreamEmitter
impl Unpin for StreamEmitter
impl UnsafeUnpin for StreamEmitter
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
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> 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