mol_vary 0.0.69 → 0.0.71

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/node.mjs CHANGED
@@ -222,6 +222,20 @@ var $;
222
222
  ;
223
223
  "use strict";
224
224
 
225
+ ;
226
+ "use strict";
227
+ var $;
228
+ (function ($) {
229
+ const mod = require('module');
230
+ const internals = mod.builtinModules;
231
+ function $node_internal_check(name) {
232
+ if (name.startsWith('node:'))
233
+ return true;
234
+ return internals.includes(name);
235
+ }
236
+ $.$node_internal_check = $node_internal_check;
237
+ })($ || ($ = {}));
238
+
225
239
  ;
226
240
  "use strict";
227
241
  var $;
@@ -301,39 +315,44 @@ var $node = new Proxy({ require }, {
301
315
  get(target, name, wrapper) {
302
316
  if (target[name])
303
317
  return target[name];
304
- if (name.startsWith('node:'))
318
+ const $$ = $;
319
+ if ($$.$node_internal_check(name, target))
305
320
  return target.require(name);
306
321
  if (name[0] === '.')
307
322
  return target.require(name);
308
- const mod = target.require('module');
309
- if (mod.builtinModules.indexOf(name) >= 0)
310
- return target.require(name);
311
323
  try {
312
324
  target.require.resolve(name);
313
325
  }
314
326
  catch {
315
- const $$ = $;
316
- $$.$mol_exec('.', 'npm', 'install', '--omit=dev', name);
327
+ try {
328
+ $$.$mol_exec('.', 'npm', 'install', '--omit=dev', name);
329
+ }
330
+ catch (e) {
331
+ if ($$.$mol_promise_like(e))
332
+ $$.$mol_fail_hidden(e);
333
+ }
317
334
  try {
318
335
  $$.$mol_exec('.', 'npm', 'install', '--omit=dev', '@types/' + name);
319
336
  }
320
337
  catch (e) {
321
- if ($$.$mol_fail_catch(e)) {
322
- $$.$mol_fail_log(e);
323
- }
338
+ if ($$.$mol_promise_like(e))
339
+ $$.$mol_fail_hidden(e);
340
+ $$.$mol_fail_log(e);
324
341
  }
325
342
  }
326
343
  try {
327
344
  return target.require(name);
328
345
  }
329
346
  catch (error) {
330
- if ($.$mol_fail_catch(error) && error.code === 'ERR_REQUIRE_ESM') {
347
+ if ($$.$mol_promise_like(error))
348
+ $$.$mol_fail_hidden(error);
349
+ if (error && typeof error === 'object' && error.code === 'ERR_REQUIRE_ESM') {
331
350
  const module = cache.get(name);
332
351
  if (module)
333
352
  return module;
334
353
  throw Object.assign(import(name).then(module => cache.set(name, module)), { cause: error });
335
354
  }
336
- $.$mol_fail_log(error);
355
+ $$.$mol_fail_log(error);
337
356
  return null;
338
357
  }
339
358
  },
@@ -2548,8 +2567,8 @@ var $;
2548
2567
  if (stack.includes(val))
2549
2568
  $mol_fail(new Error('Cyclic refs', { cause: { stack, val } }));
2550
2569
  stack.push(val);
2551
- for (const item of val)
2552
- dump(item);
2570
+ for (let i = 0; i < val.length; ++i)
2571
+ dump(val[i]);
2553
2572
  if (stack.at(-1) !== val)
2554
2573
  $mol_fail(new Error('Broken stack', { cause: { stack, val } }));
2555
2574
  stack.pop();
@@ -2569,65 +2588,67 @@ var $;
2569
2588
  const offset = offsets.get(val);
2570
2589
  if (offset !== undefined)
2571
2590
  return dump_unum($mol_vary_tip.link, offset);
2572
- const [keys, vals] = this.lean_find(val)?.(val) ?? [shape(val), Object.values(val)];
2591
+ const { 0: keys, 1: vals } = this.lean_find(val)?.(val) ?? [shape(val), Object.values(val)];
2573
2592
  dump_unum($mol_vary_tip.tupl, vals.length);
2574
2593
  acquire((vals.length + 1) * 9);
2575
2594
  dump_list(keys);
2576
2595
  if (stack.includes(val))
2577
2596
  $mol_fail(new Error('Cyclic refs', { cause: { stack, val } }));
2578
2597
  stack.push(val);
2579
- for (const item of vals)
2580
- dump(item);
2598
+ for (let i = 0; i < vals.length; ++i)
2599
+ dump(vals[i]);
2581
2600
  if (stack.at(-1) !== val)
2582
2601
  $mol_fail(new Error('Broken stack', { cause: { stack, val } }));
2583
2602
  stack.pop();
2584
2603
  offsets.set(val, offsets.size);
2585
2604
  };
2586
- const dump = (val) => {
2587
- switch (typeof val) {
2588
- case 'undefined': {
2589
- this.array[pos++] = $mol_vary_spec.both;
2590
- release(8);
2591
- return;
2592
- }
2593
- case 'boolean': {
2594
- this.array[pos++] = val ? $mol_vary_spec.true : $mol_vary_spec.fake;
2595
- release(8);
2596
- return;
2605
+ const dumpers = {
2606
+ undefined: () => {
2607
+ this.array[pos++] = $mol_vary_spec.both;
2608
+ capacity -= 8;
2609
+ },
2610
+ boolean: val => {
2611
+ this.array[pos++] = val ? $mol_vary_spec.true : $mol_vary_spec.fake;
2612
+ capacity -= 8;
2613
+ },
2614
+ number: val => {
2615
+ if (!Number.isInteger(val))
2616
+ dump_float(val);
2617
+ else
2618
+ dumpers.bigint(val);
2619
+ },
2620
+ bigint: val => {
2621
+ if (val < 0) {
2622
+ dump_snum(val);
2597
2623
  }
2598
- case 'number': {
2599
- if (!Number.isInteger(val))
2600
- return dump_float(val);
2601
- }
2602
- case 'bigint': {
2603
- if (val < 0) {
2604
- dump_snum(val);
2605
- }
2606
- else {
2607
- dump_unum($mol_vary_tip.uint, val);
2608
- }
2609
- return;
2624
+ else {
2625
+ dump_unum($mol_vary_tip.uint, val);
2610
2626
  }
2611
- case 'string': return dump_string(val);
2612
- case 'object': {
2613
- if (!val) {
2614
- release(8);
2615
- return this.array[pos++] = $mol_vary_spec.none;
2616
- }
2617
- if (ArrayBuffer.isView(val))
2618
- return dump_buffer(val);
2619
- if (Array.isArray(val))
2620
- return dump_list(val);
2621
- return dump_object(val);
2627
+ },
2628
+ string: val => dump_string(val),
2629
+ object: val => {
2630
+ if (!val) {
2631
+ capacity -= 8;
2632
+ return this.array[pos++] = $mol_vary_spec.none;
2622
2633
  }
2634
+ if (Array.isArray(val))
2635
+ return dump_list(val);
2636
+ if (ArrayBuffer.isView(val))
2637
+ return dump_buffer(val);
2638
+ return dump_object(val);
2623
2639
  }
2624
- $mol_fail(new Error(`Unsupported type`));
2625
2640
  };
2626
- for (const item of data) {
2641
+ const dump = (val) => {
2642
+ const dumper = dumpers[typeof val];
2643
+ if (!dumper)
2644
+ $mol_fail(new Error(`Unsupported type`));
2645
+ dumper(val);
2646
+ };
2647
+ for (let i = 0; i < data.length; ++i) {
2627
2648
  capacity += 9;
2628
- dump(item);
2649
+ dump(data[i]);
2629
2650
  if (stack.length)
2630
- $mol_fail(new Error('Stack underflow', { cause: { stack, item } }));
2651
+ $mol_fail(new Error('Stack underflow', { cause: { stack, item: data[i] } }));
2631
2652
  offsets.clear();
2632
2653
  }
2633
2654
  if (pos !== capacity)
@@ -2832,12 +2853,12 @@ var $;
2832
2853
  }
2833
2854
  rich_node(keys) {
2834
2855
  let node = this.rich_index;
2835
- for (const key of keys) {
2836
- let sub = node.get(key);
2856
+ for (let i = 0; i < keys.length; ++i) {
2857
+ let sub = node.get(keys[i]);
2837
2858
  if (sub)
2838
2859
  node = sub;
2839
2860
  else
2840
- node.set(key, node = new Map);
2861
+ node.set(keys[i], node = new Map);
2841
2862
  }
2842
2863
  return node;
2843
2864
  }