aboutsummaryrefslogtreecommitdiff
path: root/node_modules/formidable/lib/json_parser.js
diff options
context:
space:
mode:
authorAlee14 <alee14498@gmail.com>2017-03-26 15:18:10 -0400
committerAlee14 <alee14498@gmail.com>2017-03-26 15:18:10 -0400
commit29433e2f7dbd0e4a73d3c78ffe1005b922fb5982 (patch)
treeaa0ad3fe59468cbe452ee597e914839b68c01436 /node_modules/formidable/lib/json_parser.js
parent878fefb4c4e1f12b804ae5c0def433fa873f4c8b (diff)
downloadAleeBot-29433e2f7dbd0e4a73d3c78ffe1005b922fb5982.tar.gz
AleeBot-29433e2f7dbd0e4a73d3c78ffe1005b922fb5982.tar.bz2
AleeBot-29433e2f7dbd0e4a73d3c78ffe1005b922fb5982.zip
Don't mind me i'm adding the discord.js files
Diffstat (limited to 'node_modules/formidable/lib/json_parser.js')
-rw-r--r--node_modules/formidable/lib/json_parser.js38
1 files changed, 38 insertions, 0 deletions
diff --git a/node_modules/formidable/lib/json_parser.js b/node_modules/formidable/lib/json_parser.js
new file mode 100644
index 0000000..24ef63b
--- /dev/null
+++ b/node_modules/formidable/lib/json_parser.js
@@ -0,0 +1,38 @@
+if (global.GENTLY) require = GENTLY.hijack(require);
+
+var Buffer = require('buffer').Buffer;
+
+function JSONParser(parent) {
+ this.parent = parent;
+ this.data = new Buffer('');
+ this.bytesWritten = 0;
+}
+exports.JSONParser = JSONParser;
+
+JSONParser.prototype.initWithLength = function(length) {
+ this.data = new Buffer(length);
+};
+
+JSONParser.prototype.write = function(buffer) {
+ if (this.data.length >= this.bytesWritten + buffer.length) {
+ buffer.copy(this.data, this.bytesWritten);
+ } else {
+ this.data = Buffer.concat([this.data, buffer]);
+ }
+ this.bytesWritten += buffer.length;
+ return buffer.length;
+};
+
+JSONParser.prototype.end = function() {
+ try {
+ var fields = JSON.parse(this.data.toString('utf8'));
+ for (var field in fields) {
+ this.onField(field, fields[field]);
+ }
+ } catch (e) {
+ this.parent.emit('error', e);
+ }
+ this.data = null;
+
+ this.onEnd();
+};