summaryrefslogtreecommitdiff
path: root/ext/node/polyfills/internal/streams/state.mjs
diff options
context:
space:
mode:
Diffstat (limited to 'ext/node/polyfills/internal/streams/state.mjs')
-rw-r--r--ext/node/polyfills/internal/streams/state.mjs21
1 files changed, 18 insertions, 3 deletions
diff --git a/ext/node/polyfills/internal/streams/state.mjs b/ext/node/polyfills/internal/streams/state.mjs
index 7bedcb3f3..428492306 100644
--- a/ext/node/polyfills/internal/streams/state.mjs
+++ b/ext/node/polyfills/internal/streams/state.mjs
@@ -2,9 +2,24 @@
// Copyright Joyent and Node contributors. All rights reserved. MIT license.
// deno-lint-ignore-file
+// TODO(bartlomieju): this should be 64?
+let defaultHighWaterMarkBytes = 16 * 1024;
+let defaultHighWaterMarkObjectMode = 16;
+
function getDefaultHighWaterMark(objectMode) {
- return objectMode ? 16 : 16 * 1024;
+ return objectMode
+ ? defaultHighWaterMarkObjectMode
+ : defaultHighWaterMarkBytes;
+}
+
+function setDefaultHighWaterMark(objectMode, value) {
+ validateInteger(value, "value", 0);
+ if (objectMode) {
+ defaultHighWaterMarkObjectMode = value;
+ } else {
+ defaultHighWaterMarkBytes = value;
+ }
}
-export default { getDefaultHighWaterMark };
-export { getDefaultHighWaterMark };
+export default { getDefaultHighWaterMark, setDefaultHighWaterMark };
+export { getDefaultHighWaterMark, setDefaultHighWaterMark };