Skip to content

Latest commit

 

History

History
74 lines (48 loc) · 1.28 KB

stream.md

File metadata and controls

74 lines (48 loc) · 1.28 KB

Stream

Stream utilities


Table of Contents


drain(stream) : Promise

Drain a stream, return the contents as a buffer.

const fs = require('fs');

const drain   = require('nyks/stream/drain');
const tmppath = require('nyks/fs/tmppath');

let tmp_file = tmppath();

fs.writeFileSync(tmp_file, "dummy");

let stream = fs.createReadStream(tmp_file);

(async function() {
  await drain(stream); // return "dummy" as a Buffer
})();

fromBuffer(buffer) : Stream

Return a readable stream from a buffer.

const fromBuffer = require('nyks/stream/fromBuffer');

let buffer = new Buffer('dummy');

let stream = fromBuffer(buffer); // return a readable stream

pipe(src, dest) : Promise

Pipe a stream to another.

const fs = require('fs');

const pipe    = require('nyks/stream/pipe');
const tmppath = require('nyks/fs/tmppath');

let tmp_path = tmppath("foo");
let dest     = fs.createWriteStream(tmp_path);
let buf      = new Buffer('dummy');
let input    = fromBuffer(buf);

(async function() {
  await pipe(input, dest);
  // now, tmp_path file content is 'dummy'
})();