Efficiently process text streams line-by-line
Inflow supports:
- All character sets supported by node
- Fast and efficient processing and buffering in the background
- Blocking, non-blocking and asynchronous access
npm i --save @dev-essentials/inflow
Asynchronous access (async/await):
const Inflow = require('@dev-essentials/inflow'); const stream = inflow.stdin(); let line; while (line = await stream.nextAsync()) { console.log(line); }
Asynchronous access (without async/await):
const Inflow = require('@dev-essentials/inflow'); const stream = inflow.stdin(); const handler = line => { if (!line) return; console.log(line); stream.nextAsync().then(handler); } stream.nextAsync().then(handler);
Asynchronous access (callback):
const Inflow = require('@dev-essentials/inflow'); const stream = inflow.stdin({ callback: line => { console.log(line); }, });