@neo-one/smart-contract-compiler
Version:
NEO•ONE TypeScript smart contract compiler.
21 lines (19 loc) • 767 B
JavaScript
import { StructuredStorageBaseHelper } from './StructuredStorageBaseHelper';
export class CreateIterableIteratorStructuredStorageBaseHelper extends StructuredStorageBaseHelper {
constructor({ handleNext, ...rest }) {
super(rest);
this.handleNext = handleNext;
}
emit(sb, node, options) {
if (!options.pushValue) {
sb.emitOp(node, 'DROP');
return;
}
sb.emitHelper(node, options, sb.helpers.createIteratorStructuredStorage({ type: this.type }));
sb.emitHelper(node, options, sb.helpers.createIterableIteratorBase({
handleNext: this.handleNext,
hasFilter: true,
}));
}
}
//# sourceMappingURL=CreateIterableIteratorStructuredStorageBaseHelper.js.map