protobuf.js
Advanced tools
Comparing version 0.0.9 to 0.0.10
76
index.js
@@ -48,5 +48,5 @@ var fs = require('fs'), | ||
in_msg = true; | ||
msg = line.match(/^message\s(\w+)\s{/)[1]; | ||
msg = line.match(/^message\s(\w+)\s\{/)[1]; | ||
new_schema[msg] = {}; | ||
} else if (line.match(/^}$/)) { | ||
} else if (line.match(/^\}$/)) { | ||
in_msg = false; | ||
@@ -58,32 +58,32 @@ } else if (in_msg && !in_enum) { | ||
switch (this_msg[1]) { | ||
case 'int32': | ||
case 'int64': | ||
case 'uint32': | ||
case 'uint64': | ||
case 'sint32': | ||
case 'sint64': | ||
case 'bool': | ||
case 'enum': | ||
case 'int32': | ||
case 'int64': | ||
case 'uint32': | ||
case 'uint64': | ||
case 'sint32': | ||
case 'sint64': | ||
case 'bool': | ||
case 'enum': | ||
new_schema[msg][this_msg[2]].type = 0; | ||
break; | ||
case 'fixed64': | ||
case 'sfixed64': | ||
case 'double': | ||
new_schema[msg][this_msg[2]].type = 1; | ||
break; | ||
case 'fixed32': | ||
case 'sfixed32': | ||
case 'float': | ||
new_schema[msg][this_msg[2]].type = 5; | ||
break; | ||
case 'string': | ||
case 'bytes': | ||
new_schema[msg][this_msg[2]].type = 2; | ||
break; | ||
default: | ||
if (new_schema[msg][this_msg[1]] && new_schema[msg][this_msg[1]].raw_type === 'enum') { | ||
new_schema[msg][this_msg[2]].type = 0; | ||
break; | ||
case 'fixed64': | ||
case 'sfixed64': | ||
case 'double': | ||
new_schema[msg][this_msg[2]].type = 1; | ||
break; | ||
case 'fixed32': | ||
case 'sfixed32': | ||
case 'float': | ||
new_schema[msg][this_msg[2]].type = 5; | ||
break; | ||
case 'string': | ||
case 'bytes': | ||
} else { | ||
new_schema[msg][this_msg[2]].type = 2; | ||
break; | ||
default: | ||
if (new_schema[msg][this_msg[1]] && new_schema[msg][this_msg[1]].raw_type === 'enum') { | ||
new_schema[msg][this_msg[2]].type = 0; | ||
} else { | ||
new_schema[msg][this_msg[2]].type = 2; | ||
} | ||
} | ||
} | ||
@@ -101,7 +101,7 @@ new_schema[msg][this_msg[2]].raw_type = this_msg[1]; | ||
} else { | ||
line_enum = line.match(/^\s*enum\s(\w+)\s{/)[1]; | ||
line_enum = line.match(/^\s*enum\s(\w+)\s\{/)[1]; | ||
in_enum = true; | ||
} | ||
} else if (in_enum) { | ||
if (line.match(/\s*}$/)) { | ||
if (line.match(/\s*\}$/)) { | ||
in_enum = false; | ||
@@ -131,9 +131,13 @@ } else { | ||
var pos = start; | ||
var type, field, varint, len, val, key, ret = {}, schema = self.schema[name]; | ||
var type, field, varint, len, val, keys, key, ret = {}, schema = self.schema[name]; | ||
while (pos < end) { | ||
type = buffer[pos] & 0x07; | ||
field = buffer[pos] >> 3; | ||
key = Object.keys(schema).filter(function (key) { | ||
keys = Object.keys(schema); | ||
for (var i = 0; i < keys.length; i++) { | ||
if (schema[keys[i]].field === field) key = keys[i]; | ||
} | ||
/*key = Object.keys(schema).filter(function (key) { | ||
return schema[key].field === field; | ||
})[0]; | ||
})[0];*/ | ||
if (schema[key].type === 0) { | ||
@@ -166,3 +170,3 @@ varint = butils.readVarint(buffer, pos + 1); | ||
return ret; | ||
}; | ||
} | ||
@@ -169,0 +173,0 @@ return parseMessage(message, data); |
{ | ||
"name": "protobuf.js", | ||
"version": "0.0.9", | ||
"version": "0.0.10", | ||
"description": "a pure javascript protocol buffer encoding implementation, written specifically for riak", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
Mixed license
License(Experimental) Package contains multiple licenses.
Found 1 instance in 1 package
19680
9
227
1