@jplorg/jpl
Version:
JPL interpreter
20 lines (19 loc) • 537 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _library = require("../library");
function builtin(runtime, signal, next, input) {
const value = runtime.unwrapValue(input);
const t = runtime.type(value);
switch (t) {
case 'array':
return next(value.map((_, i) => i));
case 'object':
return next(Object.keys(value));
default:
}
throw new _library.JPLTypeError('%s (%*<100v) has no keys', t, value);
}
var _default = exports.default = builtin;