0.2.0 • Published 11 years ago
parse-concat-stream v0.2.0
parse-concat-stream

The simplest possible combination of concat-stream and native JSON.parse. It provides callback interface just like concat-stream does and accepts custom parser functions.
Example
> stread('{ "foo": 1, "bar": [2, 3] }')
.pipe(parseConcat(function (err, data) {
if (err) throw err;
console.log(JSON.stringify(data, null, 1));
}));
{
"foo": 1,
"bar": [
2,
3
]
}Custom parser:
> var caps = function (string) {
return (string.match(/[A-Z]/g) || []).join('').toLowerCase();
};
> stread(' {\nMEdiS]]\n} SorAs \tGEt')
.pipe(parseConcat({ parse: caps }, function (err, data) {
if (err) throw err;
console.log(JSON.stringify(data));
}));
"message"API
parseConcat(opts, cb(err, data))
Return a writable stream, run cb once it closes.
data is JSON.parsed by default, unless custom opts.parse is provided.
null is a shorthand for the identity function, so that
parseConcat({ parse: null }, cb);is equivalent to
require('concat-stream')({ encoding: 'string' }, cb.bind(null, null));| Option | Type | Required? | Default |
|---|---|---|---|
| parse | function(string) | No | JSON.parse |
Install
npm install parse-concat-streamLicense
MIT
