Skip to content

stephenplusplus/pluck-stream

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pluck-stream

Pluck a property (or properties) from a JSON stream

$ npm install --save pluck-stream
var pluck = require('pluck-stream')
var rs = fs.createReadStream('./package.json')

pluck(rs, 'version', function (err, version) {
  // version = 1.0.0
})

Pluck can also emit events as they are parsed. Just leave out the callback.

pluck(res, 'version').on('version', function (version) {
  // version = 1.0.0
})

This module wraps JSONStream simply to avoid some of the plumbing.

pluck(stream, properties, [callback])

stream
  • Type: Stream

The source stream to pluck properties from.

properties
  • Type: String, String[]

The accepted notation is the same as documented JSONStream.parse.

callback(err, results)
  • Type: Function
  • Optional

If a callback is provided, when the stream is ended, the callback is executed with the following parameters.

If a callback is not provided, pluck.stream is automatically engaged.

callback.err
  • Type: ?Error

An error that ocurred while parsing the stream. Errors on the source stream need to be listened to independently.

callback.results
  • Type: *

If multiple properties were provided, this is a hash of property key -> parsed value. If a single property was given, this is just the value.

pluck.stream(properties...)

  • Type: Function
  • Returns: Stream

Use this function to get multiple results as they arrive. Events are emitted under the same name as the given property string.

var pluck = require('pluck-stream')
var rs = fs.createReadStream('./package.json')

rs.pipe(pluck.stream('version'))
  .on('version', function(version) {
    // version = 1.0.0
  })
properties...
  • Type: String, String[]

All arguments are combined into an array of property strings to parse. The accepted notation is the same as documented JSONStream.parse.

About

Pluck a property (or properties) from a JSON stream

Resources

License

Stars

Watchers

Forks

Packages

No packages published