0.1.1 • Published 12 years ago

filter v0.1.1

Weekly downloads
103
License
-
Repository
github
Last release
12 years ago

/ () | |_ _ _ | || | | __/ \ '| | _| | | || / |
|| ||_|____||


USAGE'

var Filter = require('filter');

/*

  • Create a filter fast. Put the write method in the arguments. */ var my_filter = new Filter(function (data) { data.replace('foo', 'bar');

    // Just emit a data event to pass the data on. this.emit('data', data); });

/*

  • Or you can overwrite the write method yourself. */ var my_filter = new Filter;

my_filter.write = function (data) { data = data.replace('foo', 'bar');

// Just emit a data event to pass the data on. this.emit('data', data); };

/*

  • Or make a new constructor altogether! */ var util = require('util');

var CoffeeFilter = function () { this.replace = 'coffee'; this.with = 'water';

// Make sure to call the Filter constructor. Filter.call(this); };

// Inherit methods. util.inherits(CoffeeFilter, Filter);

// Then overwrite the write method. CoffeeFilter.prototype.write = function (data) { data = data.replace(this.replace, this.with);

this.emit('data', data); };

// Create a instance var coffee_filter = new CoffeeFilter;

/**

  • Some example pipe action.
  • Will read from java.txt, replace Java with Node, then save to node.txt -
  • all in real time! */ var fs = require('fs');

var read_stream = fs.createReadStream('/home/guy/java.txt'), write_stream = fs.createWriteStream('/home/guy/node.txt');

var filter = new Filter(function (data) { this.emit('data', data.replace(/java/gi, 'node')); });

read_stream.setEncoding('utf8');

read_stream.pipe(filter); filter.pipe(write_stream);