@@ -70,21 +70,20 @@ export class Publisher<TSource extends Source, TIncremental, TPayload> {
70
70
71
71
subscribe ( ) : AsyncGenerator < TPayload , void , void > {
72
72
let isDone = false ;
73
- const publisher = this ;
74
73
75
- async function next ( ) : Promise < IteratorResult < TPayload , void > > {
74
+ const next = async ( ) : Promise < IteratorResult < TPayload , void > > = > {
76
75
if ( isDone ) {
77
76
return { value : undefined , done : true } ;
78
77
}
79
78
80
- await Promise . race ( Array . from ( publisher . sources ) . map ( ( p ) => p . promise ) ) ;
79
+ await Promise . race ( Array . from ( this . sources ) . map ( ( p ) => p . promise ) ) ;
81
80
82
81
if ( isDone ) {
83
82
return { value : undefined , done : true } ;
84
83
}
85
84
86
- const incremental = publisher . getCompletedIncrementalResults ( ) ;
87
- const hasNext = publisher . sources . size > 0 ;
85
+ const incremental = this . getCompletedIncrementalResults ( ) ;
86
+ const hasNext = this . sources . size > 0 ;
88
87
89
88
if ( ! incremental . length && hasNext ) {
90
89
return next ( ) ;
@@ -95,20 +94,20 @@ export class Publisher<TSource extends Source, TIncremental, TPayload> {
95
94
}
96
95
97
96
return {
98
- value : publisher . toPayload ( incremental , hasNext ) ,
97
+ value : this . toPayload ( incremental , hasNext ) ,
99
98
done : false ,
100
99
} ;
101
- }
100
+ } ;
102
101
103
- function returnIterators ( ) {
102
+ const returnIterators = ( ) => {
104
103
const promises : Array < Promise < IteratorResult < unknown > > > = [ ] ;
105
- publisher . sources . forEach ( ( source ) => {
104
+ this . sources . forEach ( ( source ) => {
106
105
if ( source . iterator ?. return ) {
107
106
promises . push ( source . iterator . return ( ) ) ;
108
107
}
109
108
} ) ;
110
109
return Promise . all ( promises ) ;
111
- }
110
+ } ;
112
111
113
112
return {
114
113
[ Symbol . asyncIterator ] ( ) {
0 commit comments