-
Notifications
You must be signed in to change notification settings - Fork 0
/
package.json
48 lines (48 loc) · 2.76 KB
/
package.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
{
"name": "match-stream",
"version": "0.0.1",
"description": "Match a pattern within a stream",
"main": "match.js",
"directories": {
"example": "examples",
"test": "test"
},
"dependencies": {
"buffers": "~0.1.1",
"readable-stream": "~1.0.0"
},
"devDependencies": {
"tap": "~0.4.0",
"stream-buffers": "~0.2.4"
},
"scripts": {
"test": "tap ./test/*.js"
},
"repository": {
"type": "git",
"url": "https://github.com/EvanOxfeld/match-stream.git"
},
"keywords": [
"match",
"stream",
"split"
],
"author": {
"name": "Evan Oxfeld",
"email": "eoxfeld@gmail.com"
},
"license": "MIT",
"readmeFilename": "README.md",
"gitHead": "665dabbb0a3593310012eb041fc07395db632a20",
"readme": "match-stream [![Build Status](https://travis-ci.org/EvanOxfeld/match-stream.png)](https://travis-ci.org/EvanOxfeld/match-stream)\n============\n\nSupply a function to handle pattern matches within a NodeJS stream.\n\n## Installation\n\n```bash\n$ npm install match-stream\n```\n\n## Quick Examples\n\n### End stream on match\n\n```javascript\nvar MatchStream = require('match-stream');\nvar streamBuffers = require(\"stream-buffers\");\n\nvar ms = new MatchStream({ pattern: 'World'}, function (buf, matched, extra) {\n if (!matched) {\n return this.push(buf);\n }\n this.push(buf);\n return this.push(null); //end the stream\n});\n\nvar sourceStream = new streamBuffers.ReadableStreamBuffer();\nsourceStream.put(\"Hello World\");\nvar writableStream = new streamBuffers.WritableStreamBuffer();\n\nsourceStream\n .pipe(ms)\n .pipe(writableStream)\n .once('close', function () {\n var str = writableStream.getContentsAsString('utf8');\n console.log('Piped data before pattern occurs:', \"'\" + str + \"'\");\n sourceStream.destroy();\n });\n\n//Output\n//Piped data before pattern occurs: 'Hello '\n```\n\n### Split stream\n\n```javascript\nvar MatchStream = require('match-stream');\nvar fs = require('fs');\n\nvar line = \"\";\nvar loremLines = [];\nvar ms = new MatchStream({ pattern: '.', consume: true}, function (buf, matched, extra) {\n line += buf.toString();\n if (matched) {\n loremLines.push(line.trim());\n line = \"\";\n }\n});\n\nfs.createReadStream('lorem.txt')\n .pipe(ms)\n .once('end', function() {\n console.log(loremLines);\n });\n```\n\n## License\n\nMIT\n\n## Acknowledgements\n\nSpecial thanks to @wanderview for assisting with the API.\n\n",
"bugs": {
"url": "https://github.com/EvanOxfeld/match-stream/issues"
},
"homepage": "https://github.com/EvanOxfeld/match-stream",
"_id": "match-stream@0.0.1",
"dist": {
"shasum": "f83b04147f1e3d44df959141bfcf7ce327ff9aad"
},
"_from": "match-stream@0.0.1",
"_resolved": "http://registry.npmjs.org/match-stream/-/match-stream-0.0.1.tgz"
}