summaryrefslogtreecommitdiffstats
path: root/node_modules/minipass-flush/README.md
diff options
context:
space:
mode:
authorGravatar Piotr Russ <mail@pruss.it> 2020-11-16 00:10:28 +0100
committerGravatar Piotr Russ <mail@pruss.it> 2020-11-16 00:10:28 +0100
commite06ec920f7a5d784e674c4c4b4e6d1da3dc7391d (patch)
tree55713f725f77b44ebfec86e4eec3ce33e71458ca /node_modules/minipass-flush/README.md
downloadwebsite_creator-e06ec920f7a5d784e674c4c4b4e6d1da3dc7391d.tar.gz
website_creator-e06ec920f7a5d784e674c4c4b4e6d1da3dc7391d.tar.bz2
website_creator-e06ec920f7a5d784e674c4c4b4e6d1da3dc7391d.zip
api, login, auth
Diffstat (limited to 'node_modules/minipass-flush/README.md')
-rw-r--r--node_modules/minipass-flush/README.md47
1 files changed, 47 insertions, 0 deletions
diff --git a/node_modules/minipass-flush/README.md b/node_modules/minipass-flush/README.md
new file mode 100644
index 0000000..7eea400
--- /dev/null
+++ b/node_modules/minipass-flush/README.md
@@ -0,0 +1,47 @@
+# minipass-flush
+
+A Minipass stream that calls a flush function before emitting 'end'
+
+## USAGE
+
+```js
+const Flush = require('minipass-flush')
+cons f = new Flush({
+ flush (cb) {
+ // call the cb when done, or return a promise
+ // the 'end' event will wait for it, along with
+ // close, finish, and prefinish.
+ // call the cb with an error, or return a rejecting
+ // promise to emit 'error' instead of doing the 'end'
+ return rerouteAllEncryptions().then(() => clearAllChannels())
+ },
+ // all other minipass options accepted as well
+})
+
+someDataSource.pipe(f).on('end', () => {
+ // proper flushing has been accomplished
+})
+
+// Or as a subclass implementing a 'flush' method:
+class MyFlush extends Flush {
+ flush (cb) {
+ // old fashioned callback style!
+ rerouteAllEncryptions(er => {
+ if (er)
+ return cb(er)
+ clearAllChannels(er => {
+ if (er)
+ cb(er)
+ cb()
+ })
+ })
+ }
+}
+```
+
+That's about it.
+
+If your `flush` method doesn't have to do anything asynchronous, then it's
+better to call the callback right away in this tick, rather than returning
+`Promise.resolve()`, so that the `end` event can happen as soon as
+possible.