UNPKG

@neo-one/smart-contract-compiler-esnext-esm

Version:

NEO•ONE TypeScript smart contract compiler.

22 lines (20 loc) 793 B
import { Helper } from '../../Helper'; export class GetPropertyObjectValuesHelper extends Helper { emit(sb, node, options) { if (!options.pushValue) { sb.emitOp(node, 'DROP'); } const objectVal = sb.scope.addUnique(); sb.emitOp(node, 'DUP'); sb.scope.set(sb, node, options, objectVal); sb.emitHelper(node, options, sb.helpers.getPropertyObjectKeys); sb.emitHelper(node, options, sb.helpers.arrMap({ map: (innerOptions) => { sb.scope.get(sb, node, options, objectVal); sb.emitOp(node, 'SWAP'); sb.emitHelper(node, innerOptions, sb.helpers.getPropertyObjectProperty); }, })); } } //# sourceMappingURL=GetPropertyObjectValuesHelper.js.map