UNPKG

@neo-one/smart-contract-compiler

Version:

NEO•ONE TypeScript smart contract compiler.

21 lines (19 loc) 3.17 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const Helper_1 = require("../Helper"); class RawIteratorForEachFuncHelper extends Helper_1.Helper { emit(sb, node, optionsIn) { const options = sb.pushValueOptions(optionsIn); sb.emitHelper(node, options, sb.helpers.rawIteratorForEachFuncBase({ handleNext: () => { sb.emitSysCall(node, 'Neo.Iterator.Key'); sb.emitOp(node, 'OVER'); sb.emitSysCall(node, 'Neo.Enumerator.Value'); sb.emitPushInt(node, 2); sb.emitOp(node, 'PACK'); }, })); } } exports.RawIteratorForEachFuncHelper = RawIteratorForEachFuncHelper; //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlJhd0l0ZXJhdG9yRm9yRWFjaEZ1bmNIZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFHQSxzQ0FBbUM7QUFJbkMsTUFBYSw0QkFBNkIsU0FBUSxlQUFNO0lBQy9DLElBQUksQ0FBQyxFQUFpQixFQUFFLElBQWEsRUFBRSxTQUF1QjtRQUNuRSxNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFL0MsRUFBRSxDQUFDLFVBQVUsQ0FDWCxJQUFJLEVBQ0osT0FBTyxFQUNQLEVBQUUsQ0FBQyxPQUFPLENBQUMsMEJBQTBCLENBQUM7WUFDcEMsVUFBVSxFQUFFLEdBQUcsRUFBRTtnQkFFZixFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO2dCQUV6QyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFFeEIsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztnQkFFN0MsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBRXhCLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQzFCLENBQUM7U0FDRixDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQXZCRCxvRUF1QkMiLCJmaWxlIjoibmVvLW9uZS1zbWFydC1jb250cmFjdC1jb21waWxlci9zcmMvY29tcGlsZS9oZWxwZXIvaXRlcmF0b3IvUmF3SXRlcmF0b3JGb3JFYWNoRnVuY0hlbHBlci5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7IFNjcmlwdEJ1aWxkZXIgfSBmcm9tICcuLi8uLi9zYic7XG5pbXBvcnQgeyBWaXNpdE9wdGlvbnMgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBIZWxwZXIgfSBmcm9tICcuLi9IZWxwZXInO1xuXG4vLyBJbnB1dDogW29iamVjdFZhbCwgaXRlcmF0b3JdXG4vLyBPdXRwdXQ6IFtdXG5leHBvcnQgY2xhc3MgUmF3SXRlcmF0b3JGb3JFYWNoRnVuY0hlbHBlciBleHRlbmRzIEhlbHBlciB7XG4gIHB1YmxpYyBlbWl0KHNiOiBTY3JpcHRCdWlsZGVyLCBub2RlOiB0cy5Ob2RlLCBvcHRpb25zSW46IFZpc2l0T3B0aW9ucyk6IHZvaWQge1xuICAgIGNvbnN0IG9wdGlvbnMgPSBzYi5wdXNoVmFsdWVPcHRpb25zKG9wdGlvbnNJbik7XG5cbiAgICBzYi5lbWl0SGVscGVyKFxuICAgICAgbm9kZSxcbiAgICAgIG9wdGlvbnMsXG4gICAgICBzYi5oZWxwZXJzLnJhd0l0ZXJhdG9yRm9yRWFjaEZ1bmNCYXNlKHtcbiAgICAgICAgaGFuZGxlTmV4dDogKCkgPT4ge1xuICAgICAgICAgIC8vIFtrZXksIGl0ZXJhdG9yLCBjYWxsYWJsZV1cbiAgICAgICAgICBzYi5lbWl0U3lzQ2FsbChub2RlLCAnTmVvLkl0ZXJhdG9yLktleScpO1xuICAgICAgICAgIC8vIFtpdGVyYXRvciwga2V5LCBpdGVyYXRvciwgY2FsbGFibGVdXG4gICAgICAgICAgc2IuZW1pdE9wKG5vZGUsICdPVkVSJyk7XG4gICAgICAgICAgLy8gW3ZhbHVlLCBrZXksIGl0ZXJhdG9yLCBjYWxsYWJsZV1cbiAgICAgICAgICBzYi5lbWl0U3lzQ2FsbChub2RlLCAnTmVvLkVudW1lcmF0b3IuVmFsdWUnKTtcbiAgICAgICAgICAvLyBbMiwgdmFsdWUsIGtleSwgaXRlcmF0b3IsIGNhbGxhYmxlXVxuICAgICAgICAgIHNiLmVtaXRQdXNoSW50KG5vZGUsIDIpO1xuICAgICAgICAgIC8vIFthcmdzYXJyLCBpdGVyYXRvciwgY2FsbGFibGVdXG4gICAgICAgICAgc2IuZW1pdE9wKG5vZGUsICdQQUNLJyk7XG4gICAgICAgIH0sXG4gICAgICB9KSxcbiAgICApO1xuICB9XG59XG4iXX0=