UNPKG

@aeternity/aepp-calldata

Version:
22 lines (21 loc) 961 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _rlp = _interopRequireDefault(require("rlp")); var _FateTag = _interopRequireDefault(require("../FateTag.cjs")); var _BaseSerializer = _interopRequireDefault(require("./BaseSerializer.cjs")); var _FateContractAddress = _interopRequireDefault(require("../types/FateContractAddress.cjs")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } class ContractSerializer extends _BaseSerializer.default { serialize(data) { return [_FateTag.default.OBJECT, _FateTag.default.OTYPE_CONTRACT, ..._rlp.default.encode(data.value)]; } deserializeStream(data) { const buffer = new Uint8Array(data); const decoded = _rlp.default.decode(buffer.slice(2), true); return [new _FateContractAddress.default(decoded.data), new Uint8Array(decoded.remainder)]; } } var _default = exports.default = ContractSerializer;