stream: lazy load ReadableAsyncIterator
PR-URL: https://github.com/nodejs/node/pull/20567 Reviewed-By: Gus Caplan <me@gus.host> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
This commit is contained in:
parent
1a8aa8cac7
commit
3b5a7a3e19
@ -38,11 +38,11 @@ const {
|
|||||||
ERR_METHOD_NOT_IMPLEMENTED,
|
ERR_METHOD_NOT_IMPLEMENTED,
|
||||||
ERR_STREAM_UNSHIFT_AFTER_END_EVENT
|
ERR_STREAM_UNSHIFT_AFTER_END_EVENT
|
||||||
} = require('internal/errors').codes;
|
} = require('internal/errors').codes;
|
||||||
const ReadableAsyncIterator = require('internal/streams/async_iterator');
|
|
||||||
const { emitExperimentalWarning } = require('internal/util');
|
const { emitExperimentalWarning } = require('internal/util');
|
||||||
|
|
||||||
// Lazy loaded to improve the startup performance.
|
// Lazy loaded to improve the startup performance.
|
||||||
let StringDecoder;
|
let StringDecoder;
|
||||||
|
let ReadableAsyncIterator;
|
||||||
|
|
||||||
util.inherits(Readable, Stream);
|
util.inherits(Readable, Stream);
|
||||||
|
|
||||||
@ -988,7 +988,8 @@ Readable.prototype.wrap = function(stream) {
|
|||||||
|
|
||||||
Readable.prototype[Symbol.asyncIterator] = function() {
|
Readable.prototype[Symbol.asyncIterator] = function() {
|
||||||
emitExperimentalWarning('Readable[Symbol.asyncIterator]');
|
emitExperimentalWarning('Readable[Symbol.asyncIterator]');
|
||||||
|
if (ReadableAsyncIterator === undefined)
|
||||||
|
ReadableAsyncIterator = require('internal/streams/async_iterator');
|
||||||
return new ReadableAsyncIterator(this);
|
return new ReadableAsyncIterator(this);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user