Skip to content

Instantly share code, notes, and snippets.

@rikukissa
Created January 18, 2014 12:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save rikukissa/8489915 to your computer and use it in GitHub Desktop.
Save rikukissa/8489915 to your computer and use it in GitHub Desktop.
fs = require 'fs'
es = require 'event-stream'
Transform = require('stream').Transform
PassThrough = require('stream').PassThrough
reverser = new Transform
reverser._transform = (data, encoding, done) ->
this.push data.toString().split('').reverse().join ''
done()
upperCaser = new Transform
upperCaser._transform = (data, encoding, done) ->
this.push data.toString().toUpperCase()
done()
textTransformer = ->
passThrough = new PassThrough
passThrough.pipe fs.createWriteStream 'package.json.backup'
es.pipeline passThrough, reverser, upperCaser
fileReadStream = fs.createReadStream 'package.json'
fileReadStream
.pipe(textTransformer())
.pipe process.stdout
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment