UNPKG

@neo-one/smart-contract-compiler

Version:

NEO•ONE TypeScript smart contract compiler.

23 lines (21 loc) 3.77 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const StructuredStorageBaseHelper_1 = require("./StructuredStorageBaseHelper"); class ForEachStructuredStorageBaseHelper extends StructuredStorageBaseHelper_1.StructuredStorageBaseHelper { constructor(_a) { var { each } = _a, rest = tslib_1.__rest(_a, ["each"]); super(rest); this.each = each; } emit(sb, node, optionsIn) { const options = sb.pushValueOptions(optionsIn); sb.emitHelper(node, options, sb.helpers.createIteratorStructuredStorage({ type: this.type })); sb.emitHelper(node, options, sb.helpers.rawIteratorForEachBase({ each: this.each })); if (options.pushValue) { sb.emitHelper(node, options, sb.helpers.wrapUndefined); } } } exports.ForEachStructuredStorageBaseHelper = ForEachStructuredStorageBaseHelper; //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkZvckVhY2hTdHJ1Y3R1cmVkU3RvcmFnZUJhc2VIZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBR0EsK0VBQWdIO0FBUWhILE1BQWEsa0NBQW1DLFNBQVEseURBQTJCO0lBR2pGLFlBQW1CLEVBQTREO1lBQTVELEVBQUUsSUFBSSxPQUFzRCxFQUFwRCxtQ0FBTztRQUNoQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDWixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRU0sSUFBSSxDQUFDLEVBQWlCLEVBQUUsSUFBYSxFQUFFLFNBQXVCO1FBQ25FLE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUcvQyxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQywrQkFBK0IsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRTlGLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLHNCQUFzQixDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDckYsSUFBSSxPQUFPLENBQUMsU0FBUyxFQUFFO1lBRXJCLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQ3hEO0lBQ0gsQ0FBQztDQUNGO0FBcEJELGdGQW9CQyIsImZpbGUiOiJuZW8tb25lLXNtYXJ0LWNvbnRyYWN0LWNvbXBpbGVyL3NyYy9jb21waWxlL2hlbHBlci9zdG9yYWdlL0ZvckVhY2hTdHJ1Y3R1cmVkU3RvcmFnZUJhc2VIZWxwZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBTY3JpcHRCdWlsZGVyIH0gZnJvbSAnLi4vLi4vc2InO1xuaW1wb3J0IHsgVmlzaXRPcHRpb25zIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgU3RydWN0dXJlZFN0b3JhZ2VCYXNlSGVscGVyLCBTdHJ1Y3R1cmVkU3RvcmFnZUJhc2VIZWxwZXJPcHRpb25zIH0gZnJvbSAnLi9TdHJ1Y3R1cmVkU3RvcmFnZUJhc2VIZWxwZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZvckVhY2hTdHJ1Y3R1cmVkU3RvcmFnZUJhc2VIZWxwZXJPcHRpb25zIGV4dGVuZHMgU3RydWN0dXJlZFN0b3JhZ2VCYXNlSGVscGVyT3B0aW9ucyB7XG4gIHJlYWRvbmx5IGVhY2g6IChvcHRpb25zOiBWaXNpdE9wdGlvbnMpID0+IHZvaWQ7XG59XG5cbi8vIElucHV0OiBbdmFsXVxuLy8gT3V0cHV0OiBbdmFsXVxuZXhwb3J0IGNsYXNzIEZvckVhY2hTdHJ1Y3R1cmVkU3RvcmFnZUJhc2VIZWxwZXIgZXh0ZW5kcyBTdHJ1Y3R1cmVkU3RvcmFnZUJhc2VIZWxwZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IGVhY2g6IChvcHRpb25zOiBWaXNpdE9wdGlvbnMpID0+IHZvaWQ7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKHsgZWFjaCwgLi4ucmVzdCB9OiBGb3JFYWNoU3RydWN0dXJlZFN0b3JhZ2VCYXNlSGVscGVyT3B0aW9ucykge1xuICAgIHN1cGVyKHJlc3QpO1xuICAgIHRoaXMuZWFjaCA9IGVhY2g7XG4gIH1cblxuICBwdWJsaWMgZW1pdChzYjogU2NyaXB0QnVpbGRlciwgbm9kZTogdHMuTm9kZSwgb3B0aW9uc0luOiBWaXNpdE9wdGlvbnMpOiB2b2lkIHtcbiAgICBjb25zdCBvcHRpb25zID0gc2IucHVzaFZhbHVlT3B0aW9ucyhvcHRpb25zSW4pO1xuXG4gICAgLy8gW2l0ZXJhdG9yXVxuICAgIHNiLmVtaXRIZWxwZXIobm9kZSwgb3B0aW9ucywgc2IuaGVscGVycy5jcmVhdGVJdGVyYXRvclN0cnVjdHVyZWRTdG9yYWdlKHsgdHlwZTogdGhpcy50eXBlIH0pKTtcbiAgICAvLyBbXVxuICAgIHNiLmVtaXRIZWxwZXIobm9kZSwgb3B0aW9ucywgc2IuaGVscGVycy5yYXdJdGVyYXRvckZvckVhY2hCYXNlKHsgZWFjaDogdGhpcy5lYWNoIH0pKTtcbiAgICBpZiAob3B0aW9ucy5wdXNoVmFsdWUpIHtcbiAgICAgIC8vIFt2YWxdXG4gICAgICBzYi5lbWl0SGVscGVyKG5vZGUsIG9wdGlvbnMsIHNiLmhlbHBlcnMud3JhcFVuZGVmaW5lZCk7XG4gICAgfVxuICB9XG59XG4iXX0=