node/lib/zlib/iter.js
James M Snell ae7c6a7767 stream: add stream/iter Implementation
Experimental implementation of https://stream-iter.jasnell.me/

Signed-off-by: James M Snell <jasnell@gmail.com>
Assisted-By: Claude/Opus 4.6
PR-URL: https://github.com/nodejs/node/pull/62066
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
2026-03-27 19:55:08 -07:00

53 lines
1.1 KiB
JavaScript

'use strict';
// Public entry point for the iterable compression/decompression API.
// Usage: require('zlib/iter') or require('node:zlib/iter')
// Requires: --experimental-stream-iter
const { emitExperimentalWarning } = require('internal/util');
emitExperimentalWarning('zlib/iter');
const {
compressGzip,
compressGzipSync,
compressDeflate,
compressDeflateSync,
compressBrotli,
compressBrotliSync,
compressZstd,
compressZstdSync,
decompressGzip,
decompressGzipSync,
decompressDeflate,
decompressDeflateSync,
decompressBrotli,
decompressBrotliSync,
decompressZstd,
decompressZstdSync,
} = require('internal/streams/iter/transform');
module.exports = {
// Compression transforms (async)
compressGzip,
compressDeflate,
compressBrotli,
compressZstd,
// Compression transforms (sync)
compressGzipSync,
compressDeflateSync,
compressBrotliSync,
compressZstdSync,
// Decompression transforms (async)
decompressGzip,
decompressDeflate,
decompressBrotli,
decompressZstd,
// Decompression transforms (sync)
decompressGzipSync,
decompressDeflateSync,
decompressBrotliSync,
decompressZstdSync,
};