@neo-one/smart-contract-compiler
Version:
NEO•ONE TypeScript smart contract compiler.
24 lines (22 loc) • 3.38 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const Helper_1 = require("../Helper");
class RawIteratorSomeHelper extends Helper_1.Helper {
constructor(options) {
super();
this.each = options.each;
}
emit(sb, node, options) {
sb.emitHelper(node, options, sb.helpers.rawIteratorSomeBase({
each: (innerOptions) => {
sb.emitOp(node, 'DUP');
sb.emitSysCall(node, 'Neo.Enumerator.Value');
sb.emitOp(node, 'SWAP');
sb.emitSysCall(node, 'Neo.Iterator.Key');
this.each(innerOptions);
},
}));
}
}
exports.RawIteratorSomeHelper = RawIteratorSomeHelper;
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlJhd0l0ZXJhdG9yU29tZUhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUdBLHNDQUFtQztBQVFuQyxNQUFhLHFCQUFzQixTQUFRLGVBQU07SUFHL0MsWUFBbUIsT0FBcUM7UUFDdEQsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUM7SUFDM0IsQ0FBQztJQUVNLElBQUksQ0FBQyxFQUFpQixFQUFFLElBQWEsRUFBRSxPQUFxQjtRQUNqRSxFQUFFLENBQUMsVUFBVSxDQUNYLElBQUksRUFDSixPQUFPLEVBQ1AsRUFBRSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQztZQUM3QixJQUFJLEVBQUUsQ0FBQyxZQUFZLEVBQUUsRUFBRTtnQkFFckIsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBRXZCLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLHNCQUFzQixDQUFDLENBQUM7Z0JBRTdDLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUV4QixFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO2dCQUV6QyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQzFCLENBQUM7U0FDRixDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQTVCRCxzREE0QkMiLCJmaWxlIjoibmVvLW9uZS1zbWFydC1jb250cmFjdC1jb21waWxlci9zcmMvY29tcGlsZS9oZWxwZXIvaXRlcmF0b3IvUmF3SXRlcmF0b3JTb21lSGVscGVyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHRzIGZyb20gJ3R5cGVzY3JpcHQnO1xuaW1wb3J0IHsgU2NyaXB0QnVpbGRlciB9IGZyb20gJy4uLy4uL3NiJztcbmltcG9ydCB7IFZpc2l0T3B0aW9ucyB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEhlbHBlciB9IGZyb20gJy4uL0hlbHBlcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmF3SXRlcmF0b3JTb21lSGVscGVyT3B0aW9ucyB7XG4gIHJlYWRvbmx5IGVhY2g6IChvcHRpb25zOiBWaXNpdE9wdGlvbnMpID0+IHZvaWQ7XG59XG5cbi8vIElucHV0OiBbaXRlcmF0b3JdXG4vLyBPdXRwdXQ6IFtib29sZWFuXVxuZXhwb3J0IGNsYXNzIFJhd0l0ZXJhdG9yU29tZUhlbHBlciBleHRlbmRzIEhlbHBlciB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZWFjaDogKG9wdGlvbnM6IFZpc2l0T3B0aW9ucykgPT4gdm9pZDtcblxuICBwdWJsaWMgY29uc3RydWN0b3Iob3B0aW9uczogUmF3SXRlcmF0b3JTb21lSGVscGVyT3B0aW9ucykge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5lYWNoID0gb3B0aW9ucy5lYWNoO1xuICB9XG5cbiAgcHVibGljIGVtaXQoc2I6IFNjcmlwdEJ1aWxkZXIsIG5vZGU6IHRzLk5vZGUsIG9wdGlvbnM6IFZpc2l0T3B0aW9ucyk6IHZvaWQge1xuICAgIHNiLmVtaXRIZWxwZXIoXG4gICAgICBub2RlLFxuICAgICAgb3B0aW9ucyxcbiAgICAgIHNiLmhlbHBlcnMucmF3SXRlcmF0b3JTb21lQmFzZSh7XG4gICAgICAgIGVhY2g6IChpbm5lck9wdGlvbnMpID0+IHtcbiAgICAgICAgICAvLyBbaXRlcmF0b3IsIGl0ZXJhdG9yXVxuICAgICAgICAgIHNiLmVtaXRPcChub2RlLCAnRFVQJyk7XG4gICAgICAgICAgLy8gW3ZhbHVlLCBpdGVyYXRvcl1cbiAgICAgICAgICBzYi5lbWl0U3lzQ2FsbChub2RlLCAnTmVvLkVudW1lcmF0b3IuVmFsdWUnKTtcbiAgICAgICAgICAvLyBbaXRlcmF0b3IsIHZhbHVlXVxuICAgICAgICAgIHNiLmVtaXRPcChub2RlLCAnU1dBUCcpO1xuICAgICAgICAgIC8vIFtrZXksIHZhbHVlXVxuICAgICAgICAgIHNiLmVtaXRTeXNDYWxsKG5vZGUsICdOZW8uSXRlcmF0b3IuS2V5Jyk7XG4gICAgICAgICAgLy8gW3Jlc3VsdF1cbiAgICAgICAgICB0aGlzLmVhY2goaW5uZXJPcHRpb25zKTtcbiAgICAgICAgfSxcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==