1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | const client_common_1 = require("@neo-one/client-common");
|
4 | const Serializable_1 = require("../Serializable");
|
5 | const InvocationResultError_1 = require("./InvocationResultError");
|
6 | const InvocationResultSuccess_1 = require("./InvocationResultSuccess");
|
7 | exports.deserializeInvocationResultWireBase = (options) => {
|
8 | const { reader } = options;
|
9 | const state = client_common_1.assertVMState(reader.clone().readUInt8());
|
10 | switch (state) {
|
11 | case client_common_1.VMState.Fault:
|
12 | return InvocationResultError_1.InvocationResultError.deserializeWireBase(options);
|
13 | case client_common_1.VMState.Halt:
|
14 | return InvocationResultSuccess_1.InvocationResultSuccess.deserializeWireBase(options);
|
15 | default:
|
16 | throw new Error('Invalid VM state');
|
17 | }
|
18 | };
|
19 | exports.deserializeInvocationResultWire = Serializable_1.createDeserializeWire(exports.deserializeInvocationResultWireBase);
|
20 |
|
21 |
|