UNPKG

@jplorg/jpl

Version:
79 lines (78 loc) 3.07 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _exportNames = { getOptions: true, parse: true, run: true, getBuiltins: true, parseFunction: true }; exports.default = void 0; Object.defineProperty(exports, "getBuiltins", { enumerable: true, get: function () { return _builtins.default; } }); exports.parse = exports.getOptions = void 0; Object.defineProperty(exports, "parseFunction", { enumerable: true, get: function () { return _parseFunction.default; } }); exports.run = void 0; var _builtins = _interopRequireDefault(require("./builtins")); var _createSingleton = _interopRequireDefault(require("./createSingleton")); var _interpreter = _interopRequireWildcard(require("./interpreter")); var _parseFunction = _interopRequireDefault(require("./interpreter/parseFunction")); var library = _interopRequireWildcard(require("./library")); Object.keys(library).forEach(function (key) { if (key === "default" || key === "__esModule") return; if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; if (key in exports && exports[key] === library[key]) return; Object.defineProperty(exports, key, { enumerable: true, get: function () { return library[key]; } }); }); var _program = require("./program"); var _runtime = require("./runtime"); function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); } function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } const getGlobalOptions = exports.getOptions = (0, _createSingleton.default)(async () => ({ interpreter: {}, program: {}, runtime: { vars: { ...(await (0, _builtins.default)()) } } })); const parse = async (source, options) => { const globalOptions = await getGlobalOptions(); const interpreter = new _interpreter.default({ interpreter: (0, _interpreter.applyInterpreterDefaults)(options?.interpreter, globalOptions.interpreter), program: (0, _program.applyProgramDefaults)(options?.program, globalOptions.program), runtime: (0, _runtime.applyRuntimeDefaults)(options?.runtime, globalOptions.runtime) }); return interpreter.parse(source); }; exports.parse = parse; const run = async (source, inputs, options) => { const program = await parse(source, options); return program.run(inputs); }; exports.run = run; var _default = exports.default = { ...library, run, parse, parseFunction: _parseFunction.default, getBuiltins: _builtins.default, getOptions: getGlobalOptions };