UNPKG

@neo-one/smart-contract-compiler

Version:

NEO•ONE TypeScript smart contract compiler.

28 lines (26 loc) 4.46 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const constants_1 = require("../../../constants"); const constants_2 = require("../../constants"); const Helper_1 = require("../Helper"); class SetProcessedTransactionHelper extends Helper_1.Helper { emit(sb, node, optionsIn) { const options = sb.pushValueOptions(optionsIn); sb.emitHelper(node, options, sb.helpers.createStructuredStorage({ prefix: constants_1.ContractPropertyName.processedTransactions, type: constants_2.Types.SetStorage, })); sb.emitSysCall(node, 'System.ExecutionEngine.GetScriptContainer'); sb.emitSysCall(node, 'Neo.Transaction.GetHash'); sb.emitHelper(node, options, sb.helpers.wrapBuffer); sb.emitPushBoolean(node, true); sb.emitHelper(node, options, sb.helpers.wrapBoolean); sb.emitHelper(node, options, sb.helpers.setStructuredStorage({ type: constants_2.Types.SetStorage, keyType: undefined, knownKeyType: constants_2.Types.Buffer, })); } } exports.SetProcessedTransactionHelper = SetProcessedTransactionHelper; //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNldFByb2Nlc3NlZFRyYW5zYWN0aW9uSGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0Esa0RBQTBEO0FBQzFELCtDQUF3QztBQUd4QyxzQ0FBbUM7QUFJbkMsTUFBYSw2QkFBOEIsU0FBUSxlQUFNO0lBQ2hELElBQUksQ0FBQyxFQUFpQixFQUFFLElBQWEsRUFBRSxTQUF1QjtRQUNuRSxNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFHL0MsRUFBRSxDQUFDLFVBQVUsQ0FDWCxJQUFJLEVBQ0osT0FBTyxFQUNQLEVBQUUsQ0FBQyxPQUFPLENBQUMsdUJBQXVCLENBQUM7WUFDakMsTUFBTSxFQUFFLGdDQUFvQixDQUFDLHFCQUFxQjtZQUNsRCxJQUFJLEVBQUUsaUJBQUssQ0FBQyxVQUFVO1NBQ3ZCLENBQUMsQ0FDSCxDQUFDO1FBRUYsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsMkNBQTJDLENBQUMsQ0FBQztRQUVsRSxFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxDQUFDO1FBRWhELEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRXBELEVBQUUsQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRS9CLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRXJELEVBQUUsQ0FBQyxVQUFVLENBQ1gsSUFBSSxFQUNKLE9BQU8sRUFDUCxFQUFFLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDO1lBQzlCLElBQUksRUFBRSxpQkFBSyxDQUFDLFVBQVU7WUFDdEIsT0FBTyxFQUFFLFNBQVM7WUFDbEIsWUFBWSxFQUFFLGlCQUFLLENBQUMsTUFBTTtTQUMzQixDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQWxDRCxzRUFrQ0MiLCJmaWxlIjoibmVvLW9uZS1zbWFydC1jb250cmFjdC1jb21waWxlci9zcmMvY29tcGlsZS9oZWxwZXIvY29udHJhY3QvU2V0UHJvY2Vzc2VkVHJhbnNhY3Rpb25IZWxwZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBDb250cmFjdFByb3BlcnR5TmFtZSB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBUeXBlcyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBTY3JpcHRCdWlsZGVyIH0gZnJvbSAnLi4vLi4vc2InO1xuaW1wb3J0IHsgVmlzaXRPcHRpb25zIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgSGVscGVyIH0gZnJvbSAnLi4vSGVscGVyJztcblxuLy8gSW5wdXQ6IFtdXG4vLyBPdXRwdXQ6IFtdXG5leHBvcnQgY2xhc3MgU2V0UHJvY2Vzc2VkVHJhbnNhY3Rpb25IZWxwZXIgZXh0ZW5kcyBIZWxwZXIge1xuICBwdWJsaWMgZW1pdChzYjogU2NyaXB0QnVpbGRlciwgbm9kZTogdHMuTm9kZSwgb3B0aW9uc0luOiBWaXNpdE9wdGlvbnMpOiB2b2lkIHtcbiAgICBjb25zdCBvcHRpb25zID0gc2IucHVzaFZhbHVlT3B0aW9ucyhvcHRpb25zSW4pO1xuXG4gICAgLy8gW3ZhbF1cbiAgICBzYi5lbWl0SGVscGVyKFxuICAgICAgbm9kZSxcbiAgICAgIG9wdGlvbnMsXG4gICAgICBzYi5oZWxwZXJzLmNyZWF0ZVN0cnVjdHVyZWRTdG9yYWdlKHtcbiAgICAgICAgcHJlZml4OiBDb250cmFjdFByb3BlcnR5TmFtZS5wcm9jZXNzZWRUcmFuc2FjdGlvbnMsXG4gICAgICAgIHR5cGU6IFR5cGVzLlNldFN0b3JhZ2UsXG4gICAgICB9KSxcbiAgICApO1xuICAgIC8vIFt0cmFuc2FjdGlvbiwgdmFsXVxuICAgIHNiLmVtaXRTeXNDYWxsKG5vZGUsICdTeXN0ZW0uRXhlY3V0aW9uRW5naW5lLkdldFNjcmlwdENvbnRhaW5lcicpO1xuICAgIC8vIFtoYXNoLCB2YWxdXG4gICAgc2IuZW1pdFN5c0NhbGwobm9kZSwgJ05lby5UcmFuc2FjdGlvbi5HZXRIYXNoJyk7XG4gICAgLy8gW2hhc2hWYWwsIHZhbF1cbiAgICBzYi5lbWl0SGVscGVyKG5vZGUsIG9wdGlvbnMsIHNiLmhlbHBlcnMud3JhcEJ1ZmZlcik7XG4gICAgLy8gW2Jvb2xlYW4sIGhhc2hWYWwsIHZhbF1cbiAgICBzYi5lbWl0UHVzaEJvb2xlYW4obm9kZSwgdHJ1ZSk7XG4gICAgLy8gW3ZhbCwgaGFzaFZhbCwgdmFsXVxuICAgIHNiLmVtaXRIZWxwZXIobm9kZSwgb3B0aW9ucywgc2IuaGVscGVycy53cmFwQm9vbGVhbik7XG4gICAgLy8gW11cbiAgICBzYi5lbWl0SGVscGVyKFxuICAgICAgbm9kZSxcbiAgICAgIG9wdGlvbnMsXG4gICAgICBzYi5oZWxwZXJzLnNldFN0cnVjdHVyZWRTdG9yYWdlKHtcbiAgICAgICAgdHlwZTogVHlwZXMuU2V0U3RvcmFnZSxcbiAgICAgICAga2V5VHlwZTogdW5kZWZpbmVkLFxuICAgICAgICBrbm93bktleVR5cGU6IFR5cGVzLkJ1ZmZlcixcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==