more parsing.

This commit is contained in:
Christopher Jeffrey 2016-03-21 21:43:33 -07:00
parent f564ef5735
commit 304bd9f786

View File

@ -152,7 +152,6 @@ workers.listen = function listen() {
*/
workers.verify = function verify(tx, index, force, flags) {
tx = bcoin.tx.fromExtended(tx, true);
return tx.verify(index, force, flags);
};
@ -201,9 +200,19 @@ function createBody(name, items) {
if (item == null) {
p.writeU8(0);
} else {
if (item.toExtended)
item = item.toExtended(true);
if (Buffer.isBuffer(item)) {
if (item instanceof bcoin.block) {
p.writeU8(6);
p.writeVarBytes(item.render());
} else if (item instanceof bcoin.tx) {
p.writeU8(7);
p.writeVarBytes(item.toExtended(true));
} else if (item instanceof bcoin.coin) {
p.writeU8(8);
p.writeVarBytes(item.toExtended());
} else if (item instanceof bn)
p.writeU8(9);
p.writeVarBytes(item.toBuffer());
} else if (Buffer.isBuffer(item)) {
p.writeU8(5);
p.writeVarBytes(item);
} else {
@ -247,11 +256,25 @@ function parseBody(data) {
items.push(p.readU8() === 1);
break;
case 4:
items.push(items.parse(p.readVarString('utf8')));
items.push(JSON.parse(p.readVarString('utf8')));
break;
case 5:
items.push(p.readVarBytes());
break;
case 6:
items.push(bcoin.block.fromRaw(p.readVarBytes()));
break;
case 7:
items.push(bcoin.tx.fromExtended(p.readVarBytes(), true));
break;
case 8:
items.push(bcoin.coin.fromExtended(p.readVarBytes()));
break;
case 9:
items.push(new bn(p.readVarBytes()));
break;
default:
assert(false, 'Bad type.');
}
}