@harmoniclabs/plu-ts-onchain
Version:
An embedded DSL for Cardano smart contracts creation coupled with a library for Cardano transactions, all in Typescript
34 lines (33 loc) • 1.69 kB
JavaScript
;
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.addPStringMethods = void 0;
var obj_utils_1 = require("@harmoniclabs/obj-utils");
var str_1 = require("../../builtins/str/index.js");
var plet_1 = require("../../plet/index.js");
var BaseUtilityTerm_1 = require("./BaseUtilityTerm.js");
var getterOnly = {
set: function () { },
configurable: false,
enumerable: true
};
function addPStringMethods(term) {
term = (0, BaseUtilityTerm_1.addBaseUtilityTerm)(term);
(0, obj_utils_1.definePropertyIfNotPresent)(term, "utf8Encoded", __assign({ get: function () { return (0, plet_1.plet)(str_1.pencodeUtf8.$(term)); } }, getterOnly));
(0, obj_utils_1.definePropertyIfNotPresent)(term, "pconcat", __assign({ get: function () { return (0, plet_1.plet)(str_1.pappendStr.$(term)); } }, getterOnly));
(0, obj_utils_1.defineReadOnlyProperty)(term, "concat", function (other) { return str_1.pappendStr.$(term).$(other); });
(0, obj_utils_1.definePropertyIfNotPresent)(term, "peq", __assign({ get: function () { return (0, plet_1.plet)(str_1.peqStr.$(term)); } }, getterOnly));
(0, obj_utils_1.defineReadOnlyProperty)(term, "eq", function (other) { return str_1.peqStr.$(term).$(other); });
return term;
}
exports.addPStringMethods = addPStringMethods;