UNPKG

@neo-one/smart-contract-compiler

Version:

NEO•ONE TypeScript smart contract compiler.

23 lines (21 loc) 2.52 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const Helper_1 = require("../Helper"); class WrapHelper extends Helper_1.Helper { constructor() { super(...arguments); this.length = 2; } emit(sb, node, options) { if (!options.pushValue) { sb.emitOp(node, 'DROP'); return; } sb.emitPushInt(node, this.type); sb.emitPushInt(node, this.length); sb.emitOp(node, 'PACK'); sb.emitOp(node, 'NEWSTRUCT'); } } exports.WrapHelper = WrapHelper; //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIldyYXBIZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFJQSxzQ0FBbUM7QUFJbkMsTUFBc0IsVUFBVyxTQUFRLGVBQU07SUFBL0M7O1FBQ3FCLFdBQU0sR0FBVyxDQUFDLENBQUM7SUFrQnhDLENBQUM7SUFmUSxJQUFJLENBQUMsRUFBaUIsRUFBRSxJQUFhLEVBQUUsT0FBcUI7UUFDakUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUU7WUFDdEIsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFFeEIsT0FBTztTQUNSO1FBR0QsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWhDLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVsQyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN4QixFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQztJQUMvQixDQUFDO0NBQ0Y7QUFuQkQsZ0NBbUJDIiwiZmlsZSI6Im5lby1vbmUtc21hcnQtY29udHJhY3QtY29tcGlsZXIvc3JjL2NvbXBpbGUvaGVscGVyL3R5cGVzL1dyYXBIZWxwZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBUeXBlcyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBTY3JpcHRCdWlsZGVyIH0gZnJvbSAnLi4vLi4vc2InO1xuaW1wb3J0IHsgVmlzaXRPcHRpb25zIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgSGVscGVyIH0gZnJvbSAnLi4vSGVscGVyJztcblxuLy8gSW5wdXQ6IFt2YWx1ZV1cbi8vIE91dHB1dDogW3ZhbF1cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBXcmFwSGVscGVyIGV4dGVuZHMgSGVscGVyIHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGxlbmd0aDogbnVtYmVyID0gMjtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IHJlYWRvbmx5IHR5cGU6IFR5cGVzO1xuXG4gIHB1YmxpYyBlbWl0KHNiOiBTY3JpcHRCdWlsZGVyLCBub2RlOiB0cy5Ob2RlLCBvcHRpb25zOiBWaXNpdE9wdGlvbnMpOiB2b2lkIHtcbiAgICBpZiAoIW9wdGlvbnMucHVzaFZhbHVlKSB7XG4gICAgICBzYi5lbWl0T3Aobm9kZSwgJ0RST1AnKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIFt0eXBlLCB2YWx1ZV1cbiAgICBzYi5lbWl0UHVzaEludChub2RlLCB0aGlzLnR5cGUpO1xuICAgIC8vIFsyLCB0eXBlLCB2YWx1ZV1cbiAgICBzYi5lbWl0UHVzaEludChub2RlLCB0aGlzLmxlbmd0aCk7XG4gICAgLy8gW1t0eXBlLCB2YWx1ZV1dXG4gICAgc2IuZW1pdE9wKG5vZGUsICdQQUNLJyk7XG4gICAgc2IuZW1pdE9wKG5vZGUsICdORVdTVFJVQ1QnKTtcbiAgfVxufVxuIl19