UNPKG

@harmoniclabs/plu-ts-onchain

Version:

An embedded DSL for Cardano smart contracts creation coupled with a library for Cardano transactions, all in Typescript

17 lines (16 loc) 746 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.preverse = void 0; var type_system_1 = require("../../../type_system/index.js"); var pprepend_1 = require("../../builtins/pprepend/index.js"); var phoist_1 = require("../../phoist.js"); var pflip_1 = require("../combinators/pflip.js"); var const_1 = require("./const/index.js"); var pfoldl_1 = require("./pfoldl.js"); function preverse(elemsT) { return (0, phoist_1.phoist)((0, pfoldl_1.pfoldl)(elemsT, (0, type_system_1.list)(elemsT)) .$((0, pflip_1.pflip)((0, type_system_1.list)(elemsT), elemsT, (0, type_system_1.list)(elemsT)) .$((0, pprepend_1.pprepend)(elemsT))) .$((0, const_1.pnil)(elemsT))); } exports.preverse = preverse;