aboutsummaryrefslogtreecommitdiff
path: root/node_modules/merge-stream/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/merge-stream/README.md')
-rw-r--r--node_modules/merge-stream/README.md78
1 files changed, 78 insertions, 0 deletions
diff --git a/node_modules/merge-stream/README.md b/node_modules/merge-stream/README.md
new file mode 100644
index 0000000..0d54841
--- /dev/null
+++ b/node_modules/merge-stream/README.md
@@ -0,0 +1,78 @@
+# merge-stream
+
+Merge (interleave) a bunch of streams.
+
+[![build status](https://secure.travis-ci.org/grncdr/merge-stream.svg?branch=master)](http://travis-ci.org/grncdr/merge-stream)
+
+## Synopsis
+
+```javascript
+var stream1 = new Stream();
+var stream2 = new Stream();
+
+var merged = mergeStream(stream1, stream2);
+
+var stream3 = new Stream();
+merged.add(stream3);
+merged.isEmpty();
+//=> false
+```
+
+## Description
+
+This is adapted from [event-stream](https://github.com/dominictarr/event-stream) separated into a new module, using Streams3.
+
+## API
+
+### `mergeStream`
+
+Type: `function`
+
+Merges an arbitrary number of streams. Returns a merged stream.
+
+#### `merged.add`
+
+A method to dynamically add more sources to the stream. The argument supplied to `add` can be either a source or an array of sources.
+
+#### `merged.isEmpty`
+
+A method that tells you if the merged stream is empty.
+
+When a stream is "empty" (aka. no sources were added), it could not be returned to a gulp task.
+
+So, we could do something like this:
+
+```js
+stream = require('merge-stream')();
+// Something like a loop to add some streams to the merge stream
+// stream.add(streamA);
+// stream.add(streamB);
+return stream.isEmpty() ? null : stream;
+```
+
+## Gulp example
+
+An example use case for **merge-stream** is to combine parts of a task in a project's **gulpfile.js** like this:
+
+```js
+const gulp = require('gulp');
+const htmlValidator = require('gulp-w3c-html-validator');
+const jsHint = require('gulp-jshint');
+const mergeStream = require('merge-stream');
+
+function lint() {
+ return mergeStream(
+ gulp.src('src/*.html')
+ .pipe(htmlValidator())
+ .pipe(htmlValidator.reporter()),
+ gulp.src('src/*.js')
+ .pipe(jsHint())
+ .pipe(jsHint.reporter())
+ );
+}
+gulp.task('lint', lint);
+```
+
+## License
+
+MIT