@nomiclabs/buidler
Version:
Buidler is an extensible developer tool that helps smart contract developers increase productivity by reliably bringing together the tools they want.
19 lines • 842 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
const message_trace_1 = require("./message-trace");
class VmTraceDecoder {
constructor(_contractsIdentifier) {
this._contractsIdentifier = _contractsIdentifier;
}
tryToDecodeMessageTrace(messageTrace) {
if (message_trace_1.isPrecompileTrace(messageTrace)) {
return messageTrace;
}
return Object.assign(Object.assign({}, messageTrace), { bytecode: this._contractsIdentifier.getBytecodeFromMessageTrace(messageTrace), steps: messageTrace.steps.map((s) => message_trace_1.isEvmStep(s) ? s : this.tryToDecodeMessageTrace(s)) });
}
addBytecode(bytecode) {
this._contractsIdentifier.addBytecode(bytecode);
}
}
exports.VmTraceDecoder = VmTraceDecoder;
//# sourceMappingURL=vm-trace-decoder.js.map
;