sevm
Version:
A Symbolic Ethereum Virtual Machine (EVM) bytecode decompiler & analyzer library & CLI
28 lines • 826 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.MStore = exports.MLoad = void 0;
const _1 = require(".");
class MLoad extends _1.Tag {
constructor(location, value) {
super(Math.max(location.depth, value?.depth ?? 0) + 1, location.count + (value?.count ?? 0) + 1);
this.location = location;
this.value = value;
this.tag = 'MLoad';
}
eval() {
return this.value ? this.value.eval() : new MLoad(this.location.eval());
}
}
exports.MLoad = MLoad;
class MStore {
constructor(location, data) {
this.location = location;
this.data = data;
this.name = 'MStore';
}
eval() {
return new MStore(this.location.eval(), this.data.eval());
}
}
exports.MStore = MStore;
//# sourceMappingURL=memory.js.map