parserStream.js 527 B

1234567891011121314151617
  1. 'use strict';
  2. const gen = require('../gen');
  3. const asStream = require('../asStream');
  4. const fixUtf8Stream = require('../utils/fixUtf8Stream');
  5. const lines = require('../utils/lines');
  6. const parserStream = options => {
  7. const reviver = options && options.reviver;
  8. let counter = 0;
  9. return asStream(
  10. gen(fixUtf8Stream(), lines(), string => ({key: counter++, value: JSON.parse(string, reviver)})),
  11. Object.assign({writableObjectMode: false, readableObjectMode: true}, options)
  12. );
  13. };
  14. module.exports = parserStream;