You've already forked node-redis
mirror of
https://github.com/redis/node-redis.git
synced 2025-08-10 11:43:01 +03:00
Simplify parser and remove dead code
This commit is contained in:
@@ -22,13 +22,9 @@ JavascriptReplyParser.prototype._parseResult = function (type) {
|
||||
|
||||
if (type === 43 || type === 58 || type === 45) { // + or : or -
|
||||
// up to the delimiter
|
||||
end = this._packetEndOffset() - 1;
|
||||
end = this._packetEndOffset();
|
||||
start = this._offset;
|
||||
|
||||
if (end > this._buffer.length) {
|
||||
throw new IncompleteReadBuffer('Wait for more data.');
|
||||
}
|
||||
|
||||
// include the delimiter
|
||||
this._offset = end + 2;
|
||||
|
||||
@@ -91,13 +87,15 @@ JavascriptReplyParser.prototype._parseResult = function (type) {
|
||||
}
|
||||
|
||||
return reply;
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
};
|
||||
|
||||
JavascriptReplyParser.prototype.execute = function (buffer) {
|
||||
this.append(buffer);
|
||||
|
||||
var type, ret, offset;
|
||||
var type, offset;
|
||||
|
||||
while (true) {
|
||||
offset = this._offset;
|
||||
@@ -109,30 +107,16 @@ JavascriptReplyParser.prototype.execute = function (buffer) {
|
||||
try {
|
||||
type = this._buffer[this._offset++];
|
||||
|
||||
if (type === 43) { // Strings +
|
||||
ret = this._parseResult(type);
|
||||
|
||||
this.send_reply(ret);
|
||||
if (type === 43 || type === 58 || type === 36) { // Strings + // Integers : // Bulk strings $
|
||||
this.send_reply(this._parseResult(type));
|
||||
} else if (type === 45) { // Errors -
|
||||
ret = this._parseResult(type);
|
||||
|
||||
this.send_error(ret);
|
||||
} else if (type === 58) { // Integers :
|
||||
ret = this._parseResult(type);
|
||||
|
||||
this.send_reply(ret);
|
||||
} else if (type === 36) { // Bulk strings $
|
||||
ret = this._parseResult(type);
|
||||
|
||||
this.send_reply(ret);
|
||||
this.send_error(this._parseResult(type));
|
||||
} else if (type === 42) { // Arrays *
|
||||
// set a rewind point. if a failure occurs,
|
||||
// wait for the next execute()/append() and try again
|
||||
offset = this._offset - 1;
|
||||
|
||||
ret = this._parseResult(type);
|
||||
|
||||
this.send_reply(ret);
|
||||
this.send_reply(this._parseResult(type));
|
||||
} else if (type === 10 || type === 13) {
|
||||
break;
|
||||
} else {
|
||||
@@ -162,7 +146,7 @@ JavascriptReplyParser.prototype.append = function (newBuffer) {
|
||||
};
|
||||
|
||||
JavascriptReplyParser.prototype.parseHeader = function () {
|
||||
var end = this._packetEndOffset(),
|
||||
var end = this._packetEndOffset() + 1,
|
||||
value = this._buffer.toString('ascii', this._offset, end - 1) | 0;
|
||||
|
||||
this._offset = end + 1;
|
||||
@@ -182,7 +166,6 @@ JavascriptReplyParser.prototype._packetEndOffset = function () {
|
||||
}
|
||||
}
|
||||
|
||||
offset++;
|
||||
return offset;
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user