ez-indexation / app / node_modules / ezs /
@kieffer kieffer authored on 7 Mar 2017
..
.index.js.swo v0.0.0 7 years ago
.npmignore v0.0.0 7 years ago
LICENSE v0.0.0 7 years ago
README.md v0.0.0 7 years ago
index.js v0.0.0 7 years ago
package.json v0.0.0 7 years ago
README.md

Make pipeline of streams easy : Easy Streams

Build Status

It's just a wrapper to build Stream transformers with functional style. It's like the koa / expressjs middlewares !

Example

const ezs = require('ezs')

ezs.use(require('ezs-basics'));

process.stdin.resume();
process.stdin.setEncoding('utf8');
process.stdin
  .pipe(ezs('split', { delimiter: "\n" }))
  .pipe(ezs('counter'))
  .pipe(ezs(function(input, output) {
      output.send(input.toString();
  })
  .pipe(process.stdout);

Installation

With npm:

$ npm install ezs

Tests

Use mocha to run the tests.

$ npm install mocha
$ mocha test

API Documentation

ezs(statement : Mixed, [params : Object]) : Stream

Converts a transform stream with existing function or adhoc function.

    const ezs = require('ezs'),
    let trasnformer = ezs(function(input, output) {
        output.send(input.toString())
    })

Scope

Each statement function have its own scope and can access to few methods :

  • this.isLast()
  • this.isFirst()
  • this.getIndex()
  • this.getParam(name, defaultValue)
  • this.getParams()

Output Object

Output object is an object with few methods :

  • output.write(something)
  • output.end()
  • output.send(something)
  • output.close()

use(module: Function) : None

Adding bundle of statements. see the avaible modules here : https://www.npmjs.com/browse/keyword/ezs

    var ezs = require('ezs'),

    ezs.use(require('ezs-basics'));
    ezs.use(require('ezs-files'));

Related projects

License

MIT/X11