stream: refactor lazyLoadPromises

PR-URL: https://github.com/nodejs/node/pull/34354
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Zeyu Yang <himself65@outlook.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
This commit is contained in:
rickyes authored and Matteo Collina committed 2020-07-17 12:58:38 +02:00
1 parent 08e8997d54
commit 5aeaff6499
1 file changed
+8 -6
+8 -6
View File
@@ -49,28 +49,30 @@ Stream.PassThrough = require('_stream_passthrough');
Stream.pipeline = pipeline;
Stream.finished = eos;
function lazyLoadPromises() {
if (promises === null) promises = require('stream/promises');
return promises;
}
ObjectDefineProperty(Stream, 'promises', {
configurable: true,
enumerable: true,
get() {
if (promises === null) promises = require('stream/promises');
return promises;
return lazyLoadPromises();
}
});
ObjectDefineProperty(pipeline, customPromisify, {
enumerable: true,
get() {
if (promises === null) promises = require('stream/promises');
return promises.pipeline;
return lazyLoadPromises().pipeline;
}
});
ObjectDefineProperty(eos, customPromisify, {
enumerable: true,
get() {
if (promises === null) promises = require('stream/promises');
return promises.finished;
return lazyLoadPromises().finished;
}
});