Class: EventIterator<V>
@sapphire/event-iterator.EventIterator
An EventIterator, used for asynchronously iterating over received values.
Type parameters
Name | Type |
---|---|
V | extends unknown [] |
Implements
AsyncIterableIterator
<V
>
Constructors
constructor
• new EventIterator<V
>(emitter
, event
, options?
)
Type parameters
Name | Type |
---|---|
V | extends unknown [] |
Parameters
Name | Type | Description |
---|---|---|
emitter | EventEmitter | The event emitter to listen to. |
event | string | The event we're listening for to receives values from. |
options | EventIteratorOptions <V > | Any extra options. |
Defined in
Properties
#ended
• Private
#ended: boolean
= false
Whether or not the EventIterator has ended.
Defined in
#idle
• Private
Optional
#idle: number
The amount of idle time in ms before moving on.
Defined in
#idleTimer
• Private
#idleTimer: null
| Timer
= null
The timer to track when this will idle out.
Defined in
#limit
• Private
#limit: number
The limit before ending the EventIterator.
Defined in
#passed
• Private
#passed: number
= 0
The amount of events that have passed the filter.
Defined in
#push
• Private
#push: (this
: EventIterator
<V
>, ...value
: V
) => void
Type declaration
▸ (this
, ...value
): void
The push handler with context bound to the instance.
Parameters
Name | Type |
---|---|
this | EventIterator <V > |
...value | V |
Returns
void
Defined in
#queue
• Private
#queue: V
[] = []
The queue of received values.
Defined in
emitter
• Readonly
emitter: EventEmitter
The emitter to listen to.
Defined in
event
• Readonly
event: string
The event the event iterator is listening for to receive values from.
Defined in
filter
• filter: EventIteratorFilter
<V
>
The filter used to filter out values.
Defined in
Accessors
ended
• get
ended(): boolean
Whether or not the EventIterator has ended.
Returns
boolean
Defined in
Methods
[asyncIterator]
▸ [asyncIterator](): AsyncIterableIterator
<V
>
The symbol allowing EventIterators to be used in for-await-of loops.
Returns
AsyncIterableIterator
<V
>
Implementation of
AsyncIterableIterator.[asyncIterator]
Defined in
end
▸ end(): void
Ends the EventIterator.
Returns
void
Defined in
next
▸ next(): Promise
<IteratorResult
<V
, any
>>
The next value that's received from the EventEmitter.
Returns
Promise
<IteratorResult
<V
, any
>>
Implementation of
AsyncIterableIterator.next
Defined in
push
▸ Protected
push(...value
): void
Pushes a value into the queue.
Parameters
Name | Type |
---|---|
...value | V |
Returns
void
Defined in
return
▸ return(): Promise
<IteratorResult
<V
, any
>>
Handles what happens when you break or return from a loop.
Returns
Promise
<IteratorResult
<V
, any
>>
Implementation of
AsyncIterableIterator.return
Defined in
throw
▸ throw(): Promise
<IteratorResult
<V
, any
>>
Handles what happens when you encounter an error in a loop.
Returns
Promise
<IteratorResult
<V
, any
>>
Implementation of
AsyncIterableIterator.throw