@mirascript/mirascript 0.1.62-alpha.9 → 0.1.63

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.
Files changed (90) hide show
  1. package/README.md +46 -0
  2. package/dist/{chunk-6CAGNGY6.js → chunk-5BBTXV5A.js} +270 -269
  3. package/dist/chunk-5BBTXV5A.js.map +6 -0
  4. package/dist/{chunk-VRGQ23AK.js → chunk-HZYARHEQ.js} +30 -38
  5. package/dist/chunk-HZYARHEQ.js.map +6 -0
  6. package/dist/compiler/emit/consts.d.ts.map +1 -1
  7. package/dist/compiler/emit-script.d.ts +7 -2
  8. package/dist/compiler/emit-script.d.ts.map +1 -1
  9. package/dist/compiler/index.d.ts +2 -0
  10. package/dist/compiler/index.d.ts.map +1 -1
  11. package/dist/compiler/worker.js +1 -1
  12. package/dist/helpers/constants.d.ts +1 -10
  13. package/dist/helpers/constants.d.ts.map +1 -1
  14. package/dist/helpers/serialize.d.ts.map +1 -1
  15. package/dist/helpers/types.d.ts +5 -1
  16. package/dist/helpers/types.d.ts.map +1 -1
  17. package/dist/helpers/utils.d.ts +7 -1
  18. package/dist/helpers/utils.d.ts.map +1 -1
  19. package/dist/index.js +7 -4
  20. package/dist/index.js.map +1 -1
  21. package/dist/subtle.js +3 -3
  22. package/dist/subtle.js.map +1 -1
  23. package/dist/vm/checkpoint.d.ts +3 -3
  24. package/dist/vm/checkpoint.d.ts.map +1 -1
  25. package/dist/vm/lib/global/debug.d.ts.map +1 -1
  26. package/dist/vm/lib/global/sequence/entries.d.ts.map +1 -1
  27. package/dist/vm/lib/global/sequence/with.d.ts.map +1 -1
  28. package/dist/vm/operations/array-range.d.ts +6 -0
  29. package/dist/vm/operations/array-range.d.ts.map +1 -0
  30. package/dist/vm/operations/call.d.ts.map +1 -1
  31. package/dist/vm/operations/common.d.ts +1 -1
  32. package/dist/vm/operations/common.d.ts.map +1 -1
  33. package/dist/vm/operations/compound.d.ts +10 -10
  34. package/dist/vm/operations/compound.d.ts.map +1 -1
  35. package/dist/vm/operations/convert.d.ts +4 -4
  36. package/dist/vm/operations/convert.d.ts.map +1 -1
  37. package/dist/vm/operations/helpers.d.ts +7 -13
  38. package/dist/vm/operations/helpers.d.ts.map +1 -1
  39. package/dist/vm/operations/index.d.ts +1 -0
  40. package/dist/vm/operations/index.d.ts.map +1 -1
  41. package/dist/vm/operations/operator.d.ts +22 -22
  42. package/dist/vm/operations/operator.d.ts.map +1 -1
  43. package/dist/vm/operations/slice.d.ts +2 -2
  44. package/dist/vm/operations/slice.d.ts.map +1 -1
  45. package/dist/vm/operations/type-check.d.ts +7 -7
  46. package/dist/vm/operations/type-check.d.ts.map +1 -1
  47. package/dist/vm/operations/utils.d.ts +2 -2
  48. package/dist/vm/operations/utils.d.ts.map +1 -1
  49. package/dist/vm/types/boundary.d.ts +1 -1
  50. package/dist/vm/types/boundary.d.ts.map +1 -1
  51. package/dist/vm/types/context.d.ts.map +1 -1
  52. package/dist/vm/types/function.d.ts +0 -4
  53. package/dist/vm/types/function.d.ts.map +1 -1
  54. package/dist/vm/types/index.d.ts +1 -1
  55. package/dist/vm/types/index.d.ts.map +1 -1
  56. package/package.json +21 -8
  57. package/src/compiler/diagnostic.ts +2 -2
  58. package/src/compiler/emit/consts.ts +1 -0
  59. package/src/compiler/emit/index.ts +5 -5
  60. package/src/compiler/emit-script.ts +15 -6
  61. package/src/compiler/index.ts +3 -2
  62. package/src/helpers/analyze.ts +1 -1
  63. package/src/helpers/constants.ts +1 -11
  64. package/src/helpers/serialize.ts +1 -1
  65. package/src/helpers/types.ts +16 -0
  66. package/src/helpers/utils.ts +2 -1
  67. package/src/vm/checkpoint.ts +6 -6
  68. package/src/vm/lib/global/debug.ts +0 -1
  69. package/src/vm/lib/global/sequence/entries.ts +2 -0
  70. package/src/vm/lib/global/sequence/map-filter.ts +4 -4
  71. package/src/vm/lib/global/sequence/with.ts +3 -2
  72. package/src/vm/lib/loader.ts +2 -2
  73. package/src/vm/operations/array-range.ts +37 -0
  74. package/src/vm/operations/call.ts +8 -7
  75. package/src/vm/operations/common.ts +2 -2
  76. package/src/vm/operations/compound.ts +24 -25
  77. package/src/vm/operations/convert.ts +8 -8
  78. package/src/vm/operations/helpers.ts +17 -51
  79. package/src/vm/operations/index.ts +1 -0
  80. package/src/vm/operations/operator.ts +64 -54
  81. package/src/vm/operations/slice.ts +5 -4
  82. package/src/vm/operations/type-check.ts +16 -19
  83. package/src/vm/operations/utils.ts +4 -4
  84. package/src/vm/types/boundary.ts +2 -2
  85. package/src/vm/types/context.ts +1 -2
  86. package/src/vm/types/function.ts +2 -21
  87. package/src/vm/types/index.ts +1 -0
  88. package/bench/index.ts +0 -45
  89. package/dist/chunk-6CAGNGY6.js.map +0 -6
  90. package/dist/chunk-VRGQ23AK.js.map +0 -6
package/dist/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import {
2
2
  $GlobalFallback,
3
+ CompileError,
3
4
  VmExtern,
4
5
  VmFunction,
5
6
  VmModule,
@@ -8,17 +9,17 @@ import {
8
9
  createVmContext,
9
10
  defineVmContextValue,
10
11
  emitScript,
11
- reportDiagnostic,
12
12
  unwrapFromVmValue,
13
13
  wrapScript,
14
14
  wrapToVmValue
15
- } from "./chunk-6CAGNGY6.js";
15
+ } from "./chunk-5BBTXV5A.js";
16
16
  import {
17
17
  VmError,
18
18
  defineProperty,
19
19
  generateBytecode,
20
20
  generateBytecodeSync,
21
21
  getVmFunctionInfo,
22
+ getVmType,
22
23
  isFinite,
23
24
  isVmAny,
24
25
  isVmArray,
@@ -38,7 +39,7 @@ import {
38
39
  isVmValue,
39
40
  isVmWrapper,
40
41
  serialize
41
- } from "./chunk-VRGQ23AK.js";
42
+ } from "./chunk-HZYARHEQ.js";
42
43
 
43
44
  // src/compiler/compile-fast.ts
44
45
  import { isKeyword } from "@mirascript/constants";
@@ -195,7 +196,7 @@ async function compile(source, options) {
195
196
  }
196
197
  const [target, diagnostics] = await compileWorker(source, options);
197
198
  if (target == null) {
198
- reportDiagnostic(source, diagnostics, options.fileName);
199
+ throw new CompileError(source, diagnostics, options.fileName);
199
200
  }
200
201
  return createScript(source, options.input_mode ?? "Script", target);
201
202
  }
@@ -209,6 +210,7 @@ function compileSync(source, options) {
209
210
  return emitScript(source, bc, options);
210
211
  }
211
212
  export {
213
+ CompileError,
212
214
  VmError,
213
215
  VmExtern,
214
216
  VmFunction,
@@ -219,6 +221,7 @@ export {
219
221
  createVmContext,
220
222
  defineVmContextValue,
221
223
  getVmFunctionInfo,
224
+ getVmType,
222
225
  isVmAny,
223
226
  isVmArray,
224
227
  isVmArrayLikeRecord,
package/dist/index.js.map CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/compiler/compile-fast.ts", "../src/compiler/worker-manager.ts", "../src/compiler/index.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
package/dist/subtle.js CHANGED
@@ -6,10 +6,9 @@ import {
6
6
  lib,
7
7
  operations_exports,
8
8
  wrapScript
9
- } from "./chunk-6CAGNGY6.js";
9
+ } from "./chunk-5BBTXV5A.js";
10
10
  import {
11
11
  DiagnosticCode,
12
- REG_IDENTIFIER,
13
12
  constants_exports,
14
13
  display,
15
14
  formatDiagnosticMessage,
@@ -27,12 +26,13 @@ import {
27
26
  serializeRecord,
28
27
  serializeRecordKey,
29
28
  serializeString
30
- } from "./chunk-VRGQ23AK.js";
29
+ } from "./chunk-HZYARHEQ.js";
31
30
 
32
31
  // src/subtle.ts
33
32
  import { OpCode, isKeyword } from "@mirascript/constants";
34
33
 
35
34
  // src/helpers/analyze.ts
35
+ import { REG_IDENTIFIER } from "@mirascript/constants";
36
36
  var REG_SPILT = /\s*!?\s*\.\s*/u;
37
37
  var REG_CHAIN = new RegExp(
38
38
  String.raw`^(${REG_IDENTIFIER.source})(?:${REG_SPILT.source}(?:\d+|${REG_IDENTIFIER.source}))*`,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/subtle.ts", "../src/helpers/analyze.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,SAAS,QAAQ,iBAAiB;;;ACMlC,IAAM,YAAY;AAClB,IAAM,YAAY,IAAI;AAAA,EAClB,OAAO,QAAQ,eAAe,MAAM,OAAO,UAAU,MAAM,UAAU,eAAe,MAAM;AAAA,EAC1F;AACJ;AAEA,IAAM,EAAE,SAAS,IAAI;AAId,SAAS,wBAAwB,YAAoB,MAA0C;AAClG,MAAI,WAAW,KAAK,MAAM,IAAI;AAC1B,WAAO,CAAC;AAAA,EACZ;AACA,QAAM,CAAC,MAAM,WAAW,IAAI,qBAAqB,YAAY;AAAA,IACzD,YAAY,QAAQ;AAAA,IACpB,8BAA8B;AAAA;AAAA,IAE9B,kBAAkB;AAAA,IAClB,oBAAoB;AAAA,IACpB,iBAAiB;AAAA,IACjB,iBAAiB;AAAA,IACjB,sBAAsB;AAAA,IACtB,gBAAgB;AAAA,IAChB,sBAAsB;AAAA,IACtB,QAAQ;AAAA,EACZ,CAAC;AACD,MAAI,QAAQ,QAAQ,YAAY,WAAW,GAAG;AAC1C,WAAO,CAAC;AAAA,EACZ;AACA,QAAM,oBAAoB,iBAAiB,YAAY,WAAW;AAClE,QAAM,UAAU,kBAAkB,KAAK,OAAO,CAAC,MAAM,EAAE,SAAS,eAAe,cAAc;AAC7F,MAAI,QAAQ,WAAW,GAAG;AACtB,WAAO,CAAC;AAAA,EACZ;AACA,QAAM,QAAQ,WAAW,MAAM,OAAO;AACtC,QAAM,SAAS,oBAAI,IAAY;AAC/B,aAAW,UAAU,SAAS;AAE1B,UAAM,OAAO,MAAM,OAAO,MAAM,kBAAkB,CAAC;AACnD,QAAI,CAAC,KAAM;AACX,UAAM,SAAS,KAAK,MAAM,OAAO,MAAM,cAAc,CAAC;AACtD,UAAM,QAAQ,UAAU,KAAK,MAAM;AACnC,QAAI,SAAS,KAAM;AACnB,UAAM,aAAa,MAAM,CAAC;AAC1B,QAAI,YAAY,WAAW,OAAO,MAAM,YAAY,OAAO,MAAM,YAAa;AAC9E,UAAM,WAAW,MAAM,CAAC,EAAE,MAAM,SAAS,EAAE,KAAK,GAAG;AACnD,WAAO,IAAI,QAAQ;AAAA,EACvB;AACA,QAAM,eAAuC,CAAC;AAC9C,aAAW,YAAY,QAAQ;AAC3B,UAAM,QAAQ,SAAS,MAAM,GAAG,EAAE,IAAI,CAAC,SAAS;AAC5C,UAAI,MAAM,KAAK,IAAI,GAAG;AAElB,eAAO,SAAS,MAAM,EAAE;AAAA,MAC5B;AACA,aAAO;AAAA,IACX,CAAC;AACD,iBAAa,KAAK,KAAwC;AAAA,EAC9D;AACA,SAAO;AACX;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,SAAS,QAAQ,iBAAiB;;;ACFlC,SAAS,sBAAsB;AAQ/B,IAAM,YAAY;AAClB,IAAM,YAAY,IAAI;AAAA,EAClB,OAAO,QAAQ,eAAe,MAAM,OAAO,UAAU,MAAM,UAAU,eAAe,MAAM;AAAA,EAC1F;AACJ;AAEA,IAAM,EAAE,SAAS,IAAI;AAId,SAAS,wBAAwB,YAAoB,MAA0C;AAClG,MAAI,WAAW,KAAK,MAAM,IAAI;AAC1B,WAAO,CAAC;AAAA,EACZ;AACA,QAAM,CAAC,MAAM,WAAW,IAAI,qBAAqB,YAAY;AAAA,IACzD,YAAY,QAAQ;AAAA,IACpB,8BAA8B;AAAA;AAAA,IAE9B,kBAAkB;AAAA,IAClB,oBAAoB;AAAA,IACpB,iBAAiB;AAAA,IACjB,iBAAiB;AAAA,IACjB,sBAAsB;AAAA,IACtB,gBAAgB;AAAA,IAChB,sBAAsB;AAAA,IACtB,QAAQ;AAAA,EACZ,CAAC;AACD,MAAI,QAAQ,QAAQ,YAAY,WAAW,GAAG;AAC1C,WAAO,CAAC;AAAA,EACZ;AACA,QAAM,oBAAoB,iBAAiB,YAAY,WAAW;AAClE,QAAM,UAAU,kBAAkB,KAAK,OAAO,CAAC,MAAM,EAAE,SAAS,eAAe,cAAc;AAC7F,MAAI,QAAQ,WAAW,GAAG;AACtB,WAAO,CAAC;AAAA,EACZ;AACA,QAAM,QAAQ,WAAW,MAAM,OAAO;AACtC,QAAM,SAAS,oBAAI,IAAY;AAC/B,aAAW,UAAU,SAAS;AAE1B,UAAM,OAAO,MAAM,OAAO,MAAM,kBAAkB,CAAC;AACnD,QAAI,CAAC,KAAM;AACX,UAAM,SAAS,KAAK,MAAM,OAAO,MAAM,cAAc,CAAC;AACtD,UAAM,QAAQ,UAAU,KAAK,MAAM;AACnC,QAAI,SAAS,KAAM;AACnB,UAAM,aAAa,MAAM,CAAC;AAC1B,QAAI,YAAY,WAAW,OAAO,MAAM,YAAY,OAAO,MAAM,YAAa;AAC9E,UAAM,WAAW,MAAM,CAAC,EAAE,MAAM,SAAS,EAAE,KAAK,GAAG;AACnD,WAAO,IAAI,QAAQ;AAAA,EACvB;AACA,QAAM,eAAuC,CAAC;AAC9C,aAAW,YAAY,QAAQ;AAC3B,UAAM,QAAQ,SAAS,MAAM,GAAG,EAAE,IAAI,CAAC,SAAS;AAC5C,UAAI,MAAM,KAAK,IAAI,GAAG;AAElB,eAAO,SAAS,MAAM,EAAE;AAAA,MAC5B;AACA,aAAO;AAAA,IACX,CAAC;AACD,iBAAa,KAAK,KAAwC;AAAA,EAC9D;AACA,SAAO;AACX;",
5
5
  "names": []
6
6
  }
@@ -1,9 +1,9 @@
1
1
  /** 检查点 */
2
- export declare function Cp(): void;
2
+ export declare const Cp: () => void;
3
3
  /** 检查点 */
4
- export declare function CpEnter(): void;
4
+ export declare const CpEnter: () => void;
5
5
  /** 检查点 */
6
- export declare function CpExit(): void;
6
+ export declare const CpExit: () => void;
7
7
  /** 设置检查点超时时间 */
8
8
  export declare function configCheckpoint(timeout?: number, checkInterval?: number): void;
9
9
  //# sourceMappingURL=checkpoint.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"checkpoint.d.ts","sourceRoot":"","sources":["../../src/vm/checkpoint.ts"],"names":[],"mappings":"AAmBA,UAAU;AACV,wBAAgB,EAAE,IAAI,IAAI,CAWzB;AACD,UAAU;AACV,wBAAgB,OAAO,IAAI,IAAI,CAW9B;AACD,UAAU;AACV,wBAAgB,MAAM,IAAI,IAAI,CAS7B;AAGD,gBAAgB;AAChB,wBAAgB,gBAAgB,CAC5B,OAAO,GAAE,MAA2B,EACpC,aAAa,GAAE,MAA4B,GAC5C,IAAI,CAaN"}
1
+ {"version":3,"file":"checkpoint.d.ts","sourceRoot":"","sources":["../../src/vm/checkpoint.ts"],"names":[],"mappings":"AAmBA,UAAU;AACV,eAAO,MAAM,EAAE,QAAO,IAWrB,CAAC;AACF,UAAU;AACV,eAAO,MAAM,OAAO,QAAO,IAW1B,CAAC;AACF,UAAU;AACV,eAAO,MAAM,MAAM,QAAO,IASzB,CAAC;AAGF,gBAAgB;AAChB,wBAAgB,gBAAgB,CAC5B,OAAO,GAAE,MAA2B,EACpC,aAAa,GAAE,MAA4B,GAC5C,IAAI,CAaN"}
@@ -1 +1 @@
1
- {"version":3,"file":"debug.d.ts","sourceRoot":"","sources":["../../../../src/vm/lib/global/debug.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAGlD,YAAY;AACZ,KAAK,eAAe;AAChB,cAAc;AACZ,EAAE;AACJ,qBAAqB;GACnB,IAAI,MAAM,EAAE,CAAC;AAOnB,YAAY;AACZ,UAAU,YAAY;IAClB,cAAc;IACd,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,2CAA2C;IAC3C,MAAM,EAAE,SAAS,KAAK,EAAE,CAAC;IACzB,qCAAqC;IACrC,OAAO,EAAE,SAAS,eAAe,EAAE,CAAC;CACvC;AAiJD,aAAa;AACb,KAAK,YAAY,GAAG;IAChB,eAAe;IACf,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;IACrE;;;;;OAKG;IACH,UAAU,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,KAAK,MAAM,GAAG,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7G,kEAAkE;IAClE,MAAM,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,KAAK,EAAE,KAAK,YAAY,CAAC;IACrE,0CAA0C;IAC1C,SAAS,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,KAAK,OAAO,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5F,mBAAmB;IACnB,MAAM,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;CAC5D,CAAC;AAQF,eAAO,MAAM,WAAW,gJAavB,CAAC;AAEF,eAAO,MAAM,KAAK,aACJ,KAAK,gEAelB,CAAC"}
1
+ {"version":3,"file":"debug.d.ts","sourceRoot":"","sources":["../../../../src/vm/lib/global/debug.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAGlD,YAAY;AACZ,KAAK,eAAe;AAChB,cAAc;AACZ,EAAE;AACJ,qBAAqB;GACnB,IAAI,MAAM,EAAE,CAAC;AAOnB,YAAY;AACZ,UAAU,YAAY;IAClB,cAAc;IACd,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,2CAA2C;IAC3C,MAAM,EAAE,SAAS,KAAK,EAAE,CAAC;IACzB,qCAAqC;IACrC,OAAO,EAAE,SAAS,eAAe,EAAE,CAAC;CACvC;AAgJD,aAAa;AACb,KAAK,YAAY,GAAG;IAChB,eAAe;IACf,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;IACrE;;;;;OAKG;IACH,UAAU,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,KAAK,MAAM,GAAG,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7G,kEAAkE;IAClE,MAAM,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,KAAK,EAAE,KAAK,YAAY,CAAC;IACrE,0CAA0C;IAC1C,SAAS,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,KAAK,OAAO,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5F,mBAAmB;IACnB,MAAM,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;CAC5D,CAAC;AAQF,eAAO,MAAM,WAAW,gJAavB,CAAC;AAEF,eAAO,MAAM,KAAK,aACJ,KAAK,gEAelB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"entries.d.ts","sourceRoot":"","sources":["../../../../../src/vm/lib/global/sequence/entries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAI9E,eAAO,MAAM,IAAI,wJAuBhB,CAAC;AAEF,eAAO,MAAM,MAAM,8KAelB,CAAC;AAEF,eAAO,MAAM,OAAO;OAIc,MAAM;OAAK,OAAO;;;;oEAgBnD,CAAC"}
1
+ {"version":3,"file":"entries.d.ts","sourceRoot":"","sources":["../../../../../src/vm/lib/global/sequence/entries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAI9E,eAAO,MAAM,IAAI,wJAuBhB,CAAC;AAEF,eAAO,MAAM,MAAM,8KAiBlB,CAAC;AAEF,eAAO,MAAM,OAAO;OAIc,MAAM;OAAK,OAAO;;;;oEAgBnD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"with.d.ts","sourceRoot":"","sources":["../../../../../src/vm/lib/global/sequence/with.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAW,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAuEzE,QAAA,MAAM,KAAK,4LA4DV,CAAC;AACF,OAAO,EAAE,KAAK,IAAI,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"with.d.ts","sourceRoot":"","sources":["../../../../../src/vm/lib/global/sequence/with.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAW,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAwEzE,QAAA,MAAM,KAAK,4LA4DV,CAAC;AACF,OAAO,EAAE,KAAK,IAAI,MAAM,EAAE,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { VmAny, VmArray } from '../types/index.js';
2
+ /** 构造范围数组 */
3
+ export declare const $ArrayRange: (start: VmAny, end: VmAny) => VmArray;
4
+ /** 构造范围数组(不包含结束值) */
5
+ export declare const $ArrayRangeExclusive: (start: VmAny, end: VmAny) => VmArray;
6
+ //# sourceMappingURL=array-range.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array-range.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/array-range.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAWxD,aAAa;AACb,eAAO,MAAM,WAAW,GAAI,OAAO,KAAK,EAAE,KAAK,KAAK,KAAG,OAUtD,CAAC;AACF,qBAAqB;AACrB,eAAO,MAAM,oBAAoB,GAAI,OAAO,KAAK,EAAE,KAAK,KAAK,KAAG,OAU/D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"call.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/call.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAGvF,aAAa;AACb,KAAK,UAAU,CAAC,CAAC,SAAS,OAAO,IAC7B,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,CAAC,GACvB,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,SAAS,KAAK,EAAE,KAAK,MAAM,CAAC,GAE5C,CAAC,SAAS,IAAI,GAAG,SAAS,GACtB,IAAI,GACJ,CAAC,GACL,OAAO,GACX,CAAC,SAAS,QAAQ,CAAC,MAAM,CAAC,CAAC,GACzB,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,SAAS,KAAK,EAAE,KAAK,MAAM,CAAC,GAE5C,CAAC,SAAS,IAAI,GAAG,SAAS,GACtB,IAAI,GACJ,CAAC,SAAS,OAAO,GACf,CAAC,GACD,CAAC,SAAS,MAAM,GACd,QAAQ,CAAC,CAAC,CAAC,GACX,OAAO,GACf,OAAO,GACX,OAAO,CAAC;AAEpB,WAAW;AACX,wBAAgB,KAAK,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,SAAS,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAWtG;AAED,eAAe;AACf,wBAAgB,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAQ/C"}
1
+ {"version":3,"file":"call.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/call.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAGvF,aAAa;AACb,KAAK,UAAU,CAAC,CAAC,SAAS,OAAO,IAC7B,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,CAAC,GACvB,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,SAAS,KAAK,EAAE,KAAK,MAAM,CAAC,GAE5C,CAAC,SAAS,IAAI,GAAG,SAAS,GACtB,IAAI,GACJ,CAAC,GACL,OAAO,GACX,CAAC,SAAS,QAAQ,CAAC,MAAM,CAAC,CAAC,GACzB,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,SAAS,KAAK,EAAE,KAAK,MAAM,CAAC,GAE5C,CAAC,SAAS,IAAI,GAAG,SAAS,GACtB,IAAI,GACJ,CAAC,SAAS,OAAO,GACf,CAAC,GACD,CAAC,SAAS,MAAM,GACd,QAAQ,CAAC,CAAC,CAAC,GACX,OAAO,GACf,OAAO,GACX,OAAO,CAAC;AAEpB,WAAW;AACX,wBAAgB,KAAK,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,SAAS,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAYtG;AAED,eAAe;AACf,wBAAgB,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAQ/C"}
@@ -1,4 +1,4 @@
1
1
  import type { VmValue } from '../types/index.js';
2
2
  /** 断言值已初始化 */
3
- export declare function $AssertInit<T extends VmValue>(value: T | undefined): asserts value is T;
3
+ export declare const $AssertInit: <T extends VmValue>(value: T | undefined) => asserts value is T;
4
4
  //# sourceMappingURL=common.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/common.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEjD,cAAc;AACd,wBAAgB,WAAW,CAAC,CAAC,SAAS,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,SAAS,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC,CAEvF"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/common.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEjD,cAAc;AACd,eAAO,MAAM,WAAW,EAAE,CAAC,CAAC,SAAS,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,SAAS,KAAK,OAAO,CAAC,KAAK,IAAI,CAEvF,CAAC"}
@@ -1,22 +1,22 @@
1
1
  import type { VmAny, VmRecord, VmValue, VmConst } from '../types/index.js';
2
2
  /** 检查值是否在可迭代对象中 */
3
- export declare function $In(value: VmAny, iterable: VmAny): boolean;
3
+ export declare const $In: (value: VmAny, iterable: VmAny) => boolean;
4
4
  /** 获取值的长度 */
5
- export declare function $Length(value: VmAny): number;
5
+ export declare const $Length: (value: VmAny) => number;
6
6
  /** 删除记录中的指定字段 */
7
- export declare function $Omit(value: VmAny, omitted: ReadonlyArray<number | string>): VmRecord;
7
+ export declare const $Omit: (value: VmAny, omitted: ReadonlyArray<number | string>) => VmRecord;
8
8
  /** 选择记录中的指定字段 */
9
- export declare function $Pick(value: VmAny, picked: ReadonlyArray<number | string>): VmRecord;
9
+ export declare const $Pick: (value: VmAny, picked: ReadonlyArray<number | string>) => VmRecord;
10
10
  /** 检查是否拥有字段 */
11
- export declare function $Has(obj: VmAny, key: VmAny): boolean;
11
+ export declare const $Has: (obj: VmAny, key: VmAny) => boolean;
12
12
  /** 获取字段 */
13
- export declare function $Get(obj: VmAny, key: VmAny): VmValue;
13
+ export declare const $Get: (obj: VmAny, key: VmAny) => VmValue;
14
14
  /** 设置字段 */
15
- export declare function $Set(obj: VmAny, key: VmAny, value: VmAny): void;
15
+ export declare const $Set: (obj: VmAny, key: VmAny, value: VmAny) => void;
16
16
  /** 获取可迭代对象 */
17
- export declare function $Iterable(value: VmAny): Iterable<VmValue | undefined>;
17
+ export declare const $Iterable: (value: VmAny) => Iterable<VmValue | undefined>;
18
18
  /** 展开记录 */
19
- export declare function $RecordSpread(record: VmAny): VmRecord | null;
19
+ export declare const $RecordSpread: (record: VmAny) => VmRecord | null;
20
20
  /** 展开数组 */
21
- export declare function $ArraySpread(array: VmAny): Iterable<VmConst | undefined>;
21
+ export declare const $ArraySpread: (array: VmAny) => Iterable<VmConst | undefined>;
22
22
  //# sourceMappingURL=compound.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"compound.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/compound.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAS3E,mBAAmB;AACnB,wBAAgB,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,GAAG,OAAO,CAoB1D;AAED,aAAa;AACb,wBAAgB,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAO5C;AAED,iBAAiB;AACjB,wBAAgB,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,QAAQ,CAarF;AAED,iBAAiB;AACjB,wBAAgB,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,QAAQ,CAWpF;AACD,eAAe;AACf,wBAAgB,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,GAAG,OAAO,CAMpD;AAED,WAAW;AACX,wBAAgB,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,GAAG,OAAO,CAuBpD;AACD,WAAW;AACX,wBAAgB,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,CAO/D;AACD,cAAc;AACd,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,QAAQ,CAAC,OAAO,GAAG,SAAS,CAAC,CAMrE;AACD,WAAW;AACX,wBAAgB,aAAa,CAAC,MAAM,EAAE,KAAK,GAAG,QAAQ,GAAG,IAAI,CAuB5D;AAED,WAAW;AACX,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,QAAQ,CAAC,OAAO,GAAG,SAAS,CAAC,CAqBxE"}
1
+ {"version":3,"file":"compound.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/compound.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAS3E,mBAAmB;AACnB,eAAO,MAAM,GAAG,GAAI,OAAO,KAAK,EAAE,UAAU,KAAK,KAAG,OAoBnD,CAAC;AAEF,aAAa;AACb,eAAO,MAAM,OAAO,GAAI,OAAO,KAAK,KAAG,MAOtC,CAAC;AAEF,iBAAiB;AACjB,eAAO,MAAM,KAAK,GAAI,OAAO,KAAK,EAAE,SAAS,aAAa,CAAC,MAAM,GAAG,MAAM,CAAC,KAAG,QAa7E,CAAC;AAEF,iBAAiB;AACjB,eAAO,MAAM,KAAK,GAAI,OAAO,KAAK,EAAE,QAAQ,aAAa,CAAC,MAAM,GAAG,MAAM,CAAC,KAAG,QAW5E,CAAC;AACF,eAAe;AACf,eAAO,MAAM,IAAI,GAAI,KAAK,KAAK,EAAE,KAAK,KAAK,KAAG,OAM7C,CAAC;AAEF,WAAW;AACX,eAAO,MAAM,IAAI,GAAI,KAAK,KAAK,EAAE,KAAK,KAAK,KAAG,OAuB7C,CAAC;AACF,WAAW;AACX,eAAO,MAAM,IAAI,GAAI,KAAK,KAAK,EAAE,KAAK,KAAK,EAAE,OAAO,KAAK,KAAG,IAM3D,CAAC;AACF,cAAc;AACd,eAAO,MAAM,SAAS,GAAI,OAAO,KAAK,KAAG,QAAQ,CAAC,OAAO,GAAG,SAAS,CAMpE,CAAC;AACF,WAAW;AACX,eAAO,MAAM,aAAa,GAAI,QAAQ,KAAK,KAAG,QAAQ,GAAG,IAuBxD,CAAC;AAEF,WAAW;AACX,eAAO,MAAM,YAAY,GAAI,OAAO,KAAK,KAAG,QAAQ,CAAC,OAAO,GAAG,SAAS,CAqBvE,CAAC"}
@@ -1,10 +1,10 @@
1
1
  import type { VmAny } from '../types/index.js';
2
2
  /** 转换为布尔值 */
3
- export declare function $ToBoolean(value: VmAny): boolean;
3
+ export declare const $ToBoolean: (value: VmAny) => boolean;
4
4
  /** 转换为字符串 */
5
- export declare function $ToString(value: VmAny): string;
5
+ export declare const $ToString: (value: VmAny) => string;
6
6
  /** 转换为数字 */
7
- export declare function $ToNumber(value: VmAny): number;
7
+ export declare const $ToNumber: (value: VmAny) => number;
8
8
  /** 格式化值 */
9
- export declare function $Format(value: VmAny, format: string | null): string;
9
+ export declare const $Format: (value: VmAny, format: string | null) => string;
10
10
  //# sourceMappingURL=convert.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/convert.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAG/C,aAAa;AACb,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAIhD;AACD,aAAa;AACb,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAI9C;AACD,YAAY;AACZ,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAI9C;AACD,WAAW;AACX,wBAAgB,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAGnE"}
1
+ {"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/convert.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAG/C,aAAa;AACb,eAAO,MAAM,UAAU,GAAI,OAAO,KAAK,KAAG,OAIzC,CAAC;AACF,aAAa;AACb,eAAO,MAAM,SAAS,GAAI,OAAO,KAAK,KAAG,MAIxC,CAAC;AACF,YAAY;AACZ,eAAO,MAAM,SAAS,GAAI,OAAO,KAAK,KAAG,MAIxC,CAAC;AACF,WAAW;AACX,eAAO,MAAM,OAAO,GAAI,OAAO,KAAK,EAAE,QAAQ,MAAM,GAAG,IAAI,KAAG,MAG7D,CAAC"}
@@ -1,24 +1,18 @@
1
1
  import type { VmFunctionLike } from '../types/function.js';
2
2
  import { type VmContext } from '../types/context.js';
3
- import type { VmConst, VmAny, VmArray, VmValue, VmImmutable } from '../types/index.js';
3
+ import type { VmConst, VmAny, VmValue, VmImmutable } from '../types/index.js';
4
4
  import { VmModule } from '../types/module.js';
5
5
  import { VmFunction } from '../types/function.js';
6
6
  /** 构造 module */
7
- export declare function $Module<T extends Record<string, () => VmImmutable>>(name: string, body: T): VmModule<{
8
- [K in keyof T]: ReturnType<T[K]>;
9
- }>;
7
+ export declare const $Module: <T extends Record<string, () => VmImmutable>>(name: string, body: T) => VmModule<{ [K in keyof T]: ReturnType<T[K]>; }>;
10
8
  /** 构造 record | array 元素 */
11
- export declare function $El(value: VmAny): VmConst;
9
+ export declare const $El: (value: VmAny) => VmConst;
12
10
  /** 构造 record 可选元素 */
13
- export declare function $ElOpt(key: string, value: VmAny): VmConst;
11
+ export declare const $ElOpt: (key: string, value: VmAny) => VmConst;
14
12
  /** 构造函数和函数表达式 */
15
- export declare function $Fn<T extends VmFunctionLike>(name: string | null | undefined, fn: T): VmFunction<T>;
13
+ export declare const $Fn: <T extends VmFunctionLike>(name: string | null | undefined, fn: T) => VmFunction<T>;
16
14
  /** 读取闭包上值 */
17
- export declare function $Upvalue<T extends VmValue>(value: T | undefined): T;
18
- /** 构造范围数组 */
19
- export declare function $ArrayRange(start: VmAny, end: VmAny): VmArray;
20
- /** 构造范围数组(不包含结束值) */
21
- export declare function $ArrayRangeExclusive(start: VmAny, end: VmAny): VmArray;
15
+ export declare const $Upvalue: <T extends VmValue>(value: T | undefined) => T;
22
16
  /** 默认执行上下文 */
23
- export declare function $GlobalFallback(): VmContext;
17
+ export declare const $GlobalFallback: () => VmContext;
24
18
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/helpers.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAIlD,gBAAgB;AAChB,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,WAAW,CAAC,EAC/D,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,CAAC,GACR,QAAQ,CAAC;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC,CAMhD;AAED,2BAA2B;AAC3B,wBAAgB,GAAG,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAIzC;AAGD,qBAAqB;AACrB,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAIzD;AAED,iBAAiB;AACjB,wBAAgB,GAAG,CAAC,CAAC,SAAS,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,EAAE,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAEnG;AAED,aAAa;AACb,wBAAgB,QAAQ,CAAC,CAAC,SAAS,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,SAAS,GAAG,CAAC,CAGnE;AAUD,aAAa;AACb,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,GAAG,OAAO,CAU7D;AACD,qBAAqB;AACrB,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,GAAG,OAAO,CAUtE;AAED,cAAc;AACd,wBAAgB,eAAe,IAAI,SAAS,CAE3C"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/helpers.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGlD,gBAAgB;AAChB,eAAO,MAAM,OAAO,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,WAAW,CAAC,EAC/D,MAAM,MAAM,EACZ,MAAM,CAAC,KACR,QAAQ,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAE,CAM/C,CAAC;AAEF,2BAA2B;AAC3B,eAAO,MAAM,GAAG,GAAI,OAAO,KAAK,KAAG,OAIlC,CAAC;AAGF,qBAAqB;AACrB,eAAO,MAAM,MAAM,GAAI,KAAK,MAAM,EAAE,OAAO,KAAK,KAAG,OAIlD,CAAC;AAEF,iBAAiB;AACjB,eAAO,MAAM,GAAG,GAAI,CAAC,SAAS,cAAc,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,IAAI,CAAC,KAAG,UAAU,CAAC,CAAC,CAElG,CAAC;AAEF,aAAa;AACb,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,OAAO,EAAE,OAAO,CAAC,GAAG,SAAS,KAAG,CAGlE,CAAC;AAEF,cAAc;AACd,eAAO,MAAM,eAAe,QAAO,SAElC,CAAC"}
@@ -7,4 +7,5 @@ export * from './helpers.js';
7
7
  export * from './compound.js';
8
8
  export * from './cp.js';
9
9
  export * from './call.js';
10
+ export * from './array-range.js';
10
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC"}
@@ -1,46 +1,46 @@
1
1
  import type { VmAny } from '../types/index.js';
2
2
  /** 字符串连接 */
3
- export declare function $Concat(...args: readonly string[]): string;
3
+ export declare function $Concat(...args: readonly VmAny[]): string;
4
4
  /** 正号 */
5
- export declare function $Pos(a: VmAny): number;
5
+ export declare const $Pos: (value: VmAny) => number;
6
6
  /** 负号 */
7
- export declare function $Neg(a: VmAny): number;
7
+ export declare const $Neg: (a: VmAny) => number;
8
8
  /** 非 */
9
- export declare function $Not(a: VmAny): boolean;
9
+ export declare const $Not: (a: VmAny) => boolean;
10
10
  /** 加法 */
11
- export declare function $Add(a: VmAny, b: VmAny): number;
11
+ export declare const $Add: (a: VmAny, b: VmAny) => number;
12
12
  /** 减法 */
13
- export declare function $Sub(a: VmAny, b: VmAny): number;
13
+ export declare const $Sub: (a: VmAny, b: VmAny) => number;
14
14
  /** 乘法 */
15
- export declare function $Mul(a: VmAny, b: VmAny): number;
15
+ export declare const $Mul: (a: VmAny, b: VmAny) => number;
16
16
  /** 除法 */
17
- export declare function $Div(a: VmAny, b: VmAny): number;
17
+ export declare const $Div: (a: VmAny, b: VmAny) => number;
18
18
  /** 取模 */
19
- export declare function $Mod(a: VmAny, b: VmAny): number;
19
+ export declare const $Mod: (a: VmAny, b: VmAny) => number;
20
20
  /** 乘方 */
21
- export declare function $Pow(a: VmAny, b: VmAny): number;
21
+ export declare const $Pow: (a: VmAny, b: VmAny) => number;
22
22
  /** 与 */
23
- export declare function $And(a: VmAny, b: VmAny): boolean;
23
+ export declare const $And: (a: VmAny, b: VmAny) => boolean;
24
24
  /** 或 */
25
- export declare function $Or(a: VmAny, b: VmAny): boolean;
25
+ export declare const $Or: (a: VmAny, b: VmAny) => boolean;
26
26
  /** 大于 */
27
- export declare function $Gt(a: VmAny, b: VmAny): boolean;
27
+ export declare const $Gt: (a: VmAny, b: VmAny) => boolean;
28
28
  /** 大于等于 */
29
- export declare function $Gte(a: VmAny, b: VmAny): boolean;
29
+ export declare const $Gte: (a: VmAny, b: VmAny) => boolean;
30
30
  /** 小于 */
31
- export declare function $Lt(a: VmAny, b: VmAny): boolean;
31
+ export declare const $Lt: (a: VmAny, b: VmAny) => boolean;
32
32
  /** 小于等于 */
33
- export declare function $Lte(a: VmAny, b: VmAny): boolean;
33
+ export declare const $Lte: (a: VmAny, b: VmAny) => boolean;
34
34
  /** 等于 */
35
- export declare function $Eq(a: VmAny, b: VmAny): boolean;
35
+ export declare const $Eq: (a: VmAny, b: VmAny) => boolean;
36
36
  /** 不等于 */
37
- export declare function $Neq(a: VmAny, b: VmAny): boolean;
37
+ export declare const $Neq: (a: VmAny, b: VmAny) => boolean;
38
38
  /** 近似等于 */
39
- export declare function $Aeq(a: VmAny, b: VmAny): boolean;
39
+ export declare const $Aeq: (a: VmAny, b: VmAny) => boolean;
40
40
  /** 不近似等于 */
41
- export declare function $Naeq(a: VmAny, b: VmAny): boolean;
41
+ export declare const $Naeq: (a: VmAny, b: VmAny) => boolean;
42
42
  /** 全等于 */
43
- export declare function $Same(a: VmAny, b: VmAny): boolean;
43
+ export declare const $Same: (a: VmAny, b: VmAny) => boolean;
44
44
  /** 不全等于 */
45
- export declare function $Nsame(a: VmAny, b: VmAny): boolean;
45
+ export declare const $Nsame: (a: VmAny, b: VmAny) => boolean;
46
46
  //# sourceMappingURL=operator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"operator.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/operator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAM/C,YAAY;AACZ,wBAAgB,OAAO,CAAC,GAAG,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAE1D;AAGD,SAAS;AACT,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,GAAG,MAAM,CAErC;AACD,SAAS;AACT,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,GAAG,MAAM,CAErC;AACD,QAAQ;AACR,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,GAAG,OAAO,CAEtC;AAGD,SAAS;AACT,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,MAAM,CAE/C;AACD,SAAS;AACT,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,MAAM,CAE/C;AACD,SAAS;AACT,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,MAAM,CAE/C;AACD,SAAS;AACT,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,MAAM,CAE/C;AACD,SAAS;AACT,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,MAAM,CAE/C;AACD,SAAS;AACT,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,MAAM,CAE/C;AAGD,QAAQ;AACR,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAEhD;AACD,QAAQ;AACR,wBAAgB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAE/C;AAGD,SAAS;AACT,wBAAgB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAM/C;AACD,WAAW;AACX,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAMhD;AACD,SAAS;AACT,wBAAgB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAM/C;AACD,WAAW;AACX,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAMhD;AAGD,SAAS;AACT,wBAAgB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAM/C;AACD,UAAU;AACV,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAEhD;AAGD,WAAW;AACX,wBAAgB,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAwBhD;AACD,YAAY;AACZ,wBAAgB,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAEjD;AAED,UAAU;AACV,wBAAgB,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAIjD;AACD,WAAW;AACX,wBAAgB,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAElD"}
1
+ {"version":3,"file":"operator.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/operator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAM/C,YAAY;AACZ,wBAAgB,OAAO,CAAC,GAAG,IAAI,EAAE,SAAS,KAAK,EAAE,GAAG,MAAM,CAEzD;AAGD,SAAS;AACT,eAAO,MAAM,IAAI,0BAAY,CAAC;AAC9B,SAAS;AACT,eAAO,MAAM,IAAI,GAAI,GAAG,KAAK,KAAG,MAAuB,CAAC;AACxD,QAAQ;AACR,eAAO,MAAM,IAAI,GAAI,GAAG,KAAK,KAAG,OAAyB,CAAC;AAI1D,SAAS;AACT,eAAO,MAAM,IAAI,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,MAGzC,CAAC;AAEF,SAAS;AACT,eAAO,MAAM,IAAI,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,MAGzC,CAAC;AAEF,SAAS;AACT,eAAO,MAAM,IAAI,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,MAGzC,CAAC;AAEF,SAAS;AACT,eAAO,MAAM,IAAI,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,MAGzC,CAAC;AAEF,SAAS;AACT,eAAO,MAAM,IAAI,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,MAGzC,CAAC;AAEF,SAAS;AACT,eAAO,MAAM,IAAI,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,MAGzC,CAAC;AAIF,QAAQ;AACR,eAAO,MAAM,IAAI,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,OAGzC,CAAC;AAEF,QAAQ;AACR,eAAO,MAAM,GAAG,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,OAGxC,CAAC;AAGF,SAAS;AACT,eAAO,MAAM,GAAG,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,OAMxC,CAAC;AACF,WAAW;AACX,eAAO,MAAM,IAAI,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,OAMzC,CAAC;AACF,SAAS;AACT,eAAO,MAAM,GAAG,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,OAMxC,CAAC;AACF,WAAW;AACX,eAAO,MAAM,IAAI,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,OAMzC,CAAC;AAGF,SAAS;AACT,eAAO,MAAM,GAAG,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,OAMxC,CAAC;AACF,UAAU;AACV,eAAO,MAAM,IAAI,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,OAEzC,CAAC;AAGF,WAAW;AACX,eAAO,MAAM,IAAI,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,OAwBzC,CAAC;AACF,YAAY;AACZ,eAAO,MAAM,KAAK,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,OAE1C,CAAC;AAEF,UAAU;AACV,eAAO,MAAM,KAAK,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,OAI1C,CAAC;AACF,WAAW;AACX,eAAO,MAAM,MAAM,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,OAE3C,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { VmAny, VmArray } from '../types/index.js';
2
2
  /** 获取数组切片 */
3
- export declare function $Slice(value: VmAny, start: VmAny, end: VmAny): VmArray;
3
+ export declare const $Slice: (value: VmAny, start: VmAny, end: VmAny) => VmArray;
4
4
  /** 获取数组切片(不包含结束位置) */
5
- export declare function $SliceExclusive(value: VmAny, start: VmAny, end: VmAny): VmArray;
5
+ export declare const $SliceExclusive: (value: VmAny, start: VmAny, end: VmAny) => VmArray;
6
6
  //# sourceMappingURL=slice.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"slice.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/slice.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAuBxD,aAAa;AACb,wBAAgB,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,GAAG,OAAO,CAMtE;AACD,sBAAsB;AACtB,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,GAAG,OAAO,CAM/E"}
1
+ {"version":3,"file":"slice.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/slice.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAwBxD,aAAa;AACb,eAAO,MAAM,MAAM,GAAI,OAAO,KAAK,EAAE,OAAO,KAAK,EAAE,KAAK,KAAK,KAAG,OAM/D,CAAC;AACF,sBAAsB;AACtB,eAAO,MAAM,eAAe,GAAI,OAAO,KAAK,EAAE,OAAO,KAAK,EAAE,KAAK,KAAK,KAAG,OAMxE,CAAC"}
@@ -1,16 +1,16 @@
1
1
  import type { VmTypeName, VmAny, VmArray, VmRecord, VmValue } from '../types/index.js';
2
2
  /** 获取值的类型名称 */
3
- export declare function $Type(value: VmAny): VmTypeName;
3
+ export declare const $Type: (value: VmAny) => VmTypeName;
4
4
  /** 判断值是否为布尔值 */
5
- export declare function $IsBoolean(value: VmAny): value is boolean;
5
+ export declare const $IsBoolean: (value: VmAny) => value is boolean;
6
6
  /** 判断值是否为数字 */
7
- export declare function $IsNumber(value: VmAny): value is number;
7
+ export declare const $IsNumber: (value: VmAny) => value is number;
8
8
  /** 判断值是否为字符串 */
9
- export declare function $IsString(value: VmAny): value is string;
9
+ export declare const $IsString: (value: VmAny) => value is string;
10
10
  /** 判断值是否为记录 */
11
- export declare function $IsRecord(value: VmAny): value is VmRecord;
11
+ export declare const $IsRecord: (value: VmAny) => value is VmRecord;
12
12
  /** 判断值是否为数组 */
13
- export declare function $IsArray(value: VmAny): value is VmArray;
13
+ export declare const $IsArray: (value: VmAny) => value is VmArray;
14
14
  /** 断言值非 nil */
15
- export declare function $AssertNonNil<T extends VmValue>(value: T | undefined): asserts value is NonNullable<T>;
15
+ export declare const $AssertNonNil: <T extends VmValue>(value: T | undefined) => asserts value is NonNullable<T>;
16
16
  //# sourceMappingURL=type-check.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-check.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/type-check.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAGvF,eAAe;AACf,wBAAgB,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,UAAU,CAO9C;AACD,gBAAgB;AAChB,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,OAAO,CAGzD;AACD,eAAe;AACf,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,MAAM,CAGvD;AACD,gBAAgB;AAChB,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,MAAM,CAGvD;AACD,eAAe;AACf,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,QAAQ,CAGzD;AACD,eAAe;AACf,wBAAgB,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,OAAO,CAGvD;AACD,eAAe;AACf,wBAAgB,aAAa,CAAC,CAAC,SAAS,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,SAAS,GAAG,OAAO,CAAC,KAAK,IAAI,WAAW,CAAC,CAAC,CAAC,CAItG"}
1
+ {"version":3,"file":"type-check.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/type-check.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAGvF,eAAe;AACf,eAAO,MAAM,KAAK,GAAI,OAAO,KAAK,KAAG,UAIpC,CAAC;AACF,gBAAgB;AAChB,eAAO,MAAM,UAAU,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,KAAK,IAAI,OAGnD,CAAC;AACF,eAAe;AACf,eAAO,MAAM,SAAS,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,KAAK,IAAI,MAGlD,CAAC;AACF,gBAAgB;AAChB,eAAO,MAAM,SAAS,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,KAAK,IAAI,MAGlD,CAAC;AACF,eAAe;AACf,eAAO,MAAM,SAAS,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,KAAK,IAAI,QAGlD,CAAC;AACF,eAAe;AACf,eAAO,MAAM,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,KAAK,IAAI,OAGjD,CAAC;AACF,eAAe;AACf,eAAO,MAAM,aAAa,EAAE,CAAC,CAAC,SAAS,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,SAAS,KAAK,OAAO,CAAC,KAAK,IAAI,WAAW,CAAC,CAAC,CAItG,CAAC"}
@@ -3,9 +3,9 @@ import type { VmAny, VmValue } from '../types/index.js';
3
3
  * 确定操作的重载
4
4
  * @returns 如果应按数字处理则返回 true;如果应按字符串处理则返回 false
5
5
  */
6
- export declare function overloadNumberString(a: VmAny, b: VmAny): boolean;
6
+ export declare const overloadNumberString: (a: VmAny, b: VmAny) => boolean;
7
7
  /**
8
8
  * 检查两个 VmValue 是否相同
9
9
  */
10
- export declare function isSame(a: VmValue, b: VmValue): boolean;
10
+ export declare const isSame: (a: VmValue, b: VmValue) => boolean;
11
11
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAExD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAIhE;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,GAAG,OAAO,CAgDtD"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/vm/operations/utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAExD;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,OAIzD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,MAAM,GAAI,GAAG,OAAO,EAAE,GAAG,OAAO,KAAG,OAgD/C,CAAC"}
@@ -1,5 +1,5 @@
1
- import type { VmFunctionLike, VmFunction } from './function.js';
2
1
  import type { VmAny, VmConst, VmPrimitive, VmValue } from './index.js';
2
+ import type { VmFunctionLike, VmFunction } from './function.js';
3
3
  /** 创建 Mirascript 函数在宿主语言运行的代理 */
4
4
  export declare function toVmFunctionProxy<T extends VmFunctionLike>(fn: VmFunction<T>): T;
5
5
  /** 解开 Mirascript 函数在宿主语言运行的代理 */
@@ -1 +1 @@
1
- {"version":3,"file":"boundary.d.ts","sourceRoot":"","sources":["../../../src/vm/types/boundary.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhE,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAY,WAAW,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAGjF,iCAAiC;AACjC,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,cAAc,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAmBhF;AAED,iCAAiC;AACjC,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,cAAc,EAAE,EAAE,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAOzF;AAED,+BAA+B;AAC/B,wBAAgB,aAAa,CACzB,KAAK,EAAE,OAAO,EACd,aAAa,GAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,GAAG,IAAW,GACrF,OAAO,CAsBT;AACD,+BAA+B;AAC/B,wBAAgB,aAAa,CACzB,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,OAAc,EACvB,aAAa,GAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,GAAG,IAAW,GACrF,OAAO,CAeT;AAYD,+BAA+B;AAC/B,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,UAAO,GAAG,OAAO,CAY3E"}
1
+ {"version":3,"file":"boundary.d.ts","sourceRoot":"","sources":["../../../src/vm/types/boundary.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAY,WAAW,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACjF,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAGhE,iCAAiC;AACjC,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,cAAc,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAmBhF;AAED,iCAAiC;AACjC,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,cAAc,EAAE,EAAE,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAOzF;AAED,+BAA+B;AAC/B,wBAAgB,aAAa,CACzB,KAAK,EAAE,OAAO,EACd,aAAa,GAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,GAAG,IAAW,GACrF,OAAO,CAsBT;AACD,+BAA+B;AAC/B,wBAAgB,aAAa,CACzB,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,OAAc,EACvB,aAAa,GAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,GAAG,IAAW,GACrF,OAAO,CAeT;AAYD,+BAA+B;AAC/B,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,UAAO,GAAG,OAAO,CAY3E"}
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/vm/types/context.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAK9D,uBAAuB;AACvB,MAAM,WAAW,SAAS;IACtB,YAAY;IACZ,QAAQ,CAAC,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC;IAC5B,0BAA0B;IAC1B,IAAI,IAAI,SAAS,MAAM,EAAE,CAAC;IAC1B,oCAAoC;IACpC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAC1C;;;OAGG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1B,oCAAoC;IACpC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC7B;AACD,uBAAuB;AACvB,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACpD,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAgB,CAAC;AAC3E,eAAO,MAAM,8BAA8B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAgB,CAAC;AAS/F,qCAAqC;AACrC,wBAAgB,oBAAoB,CAChC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,WAAW,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,KAAK,CAAC,EAClD,QAAQ,UAAQ,EAChB,WAAW,GAAE,MAAM,GAAG,IAAI,GAAG,SAAqB,GACnD,IAAI,CAeN;AAED,aAAa;AACb,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,SAAS,CAsB/C,CAAC;AAqHH,uBAAuB;AACvB,wBAAgB,eAAe,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC;AACvD,qBAAqB;AACrB,wBAAgB,eAAe,CAC3B,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,GAAG,SAAS,EAC5C,UAAU,CAAC,EAAE,CAAC,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,EAC5C,SAAS,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC,GAAG,IAAI,GACzD,SAAS,CAAC;AACb,qBAAqB;AACrB,wBAAgB,eAAe,CAC3B,QAAQ,CAAC,EAAE,eAAe,GAAG,IAAI,EACjC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,EAC7C,SAAS,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC,GAAG,IAAI,GACzD,SAAS,CAAC"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/vm/types/context.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAI9D,uBAAuB;AACvB,MAAM,WAAW,SAAS;IACtB,YAAY;IACZ,QAAQ,CAAC,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC;IAC5B,0BAA0B;IAC1B,IAAI,IAAI,SAAS,MAAM,EAAE,CAAC;IAC1B,oCAAoC;IACpC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAC1C;;;OAGG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1B,oCAAoC;IACpC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC7B;AACD,uBAAuB;AACvB,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACpD,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAgB,CAAC;AAC3E,eAAO,MAAM,8BAA8B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAgB,CAAC;AAS/F,qCAAqC;AACrC,wBAAgB,oBAAoB,CAChC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,WAAW,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,KAAK,CAAC,EAClD,QAAQ,UAAQ,EAChB,WAAW,GAAE,MAAM,GAAG,IAAI,GAAG,SAAqB,GACnD,IAAI,CAeN;AAED,aAAa;AACb,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,SAAS,CAsB/C,CAAC;AAqHH,uBAAuB;AACvB,wBAAgB,eAAe,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC;AACvD,qBAAqB;AACrB,wBAAgB,eAAe,CAC3B,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,GAAG,SAAS,EAC5C,UAAU,CAAC,EAAE,CAAC,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,EAC5C,SAAS,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC,GAAG,IAAI,GACzD,SAAS,CAAC;AACb,qBAAqB;AACrB,wBAAgB,eAAe,CAC3B,QAAQ,CAAC,EAAE,eAAe,GAAG,IAAI,EACjC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,EAC7C,SAAS,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC,GAAG,IAAI,GACzD,SAAS,CAAC"}
@@ -30,8 +30,6 @@ export type VmFunctionInfo = {
30
30
  readonly returnsType?: string;
31
31
  /** 文档字符串 */
32
32
  readonly examples?: string[];
33
- /** 如果添加了包装,返回原函数 */
34
- readonly original?: VmFunctionLike;
35
33
  /** 标记为弃用 */
36
34
  readonly deprecated?: {
37
35
  use?: string;
@@ -42,8 +40,6 @@ export type VmFunctionInfo = {
42
40
  export type VmFunctionOption = Partial<Omit<VmFunctionInfo, 'original'>> & {
43
41
  /** 函数名称 */
44
42
  readonly name?: string | null | undefined;
45
- /** 是否注入检查点 */
46
- readonly injectCp?: boolean;
47
43
  };
48
44
  /** 创建 Mirascript 函数 */
49
45
  export declare function VmFunction<T extends VmFunctionLike>(fn: T, option?: NoInfer<VmFunctionOption | VmFunction | VmLib<T>>): VmFunction<T>;
@@ -1 +1 @@
1
- {"version":3,"file":"function.d.ts","sourceRoot":"","sources":["../../../src/vm/types/function.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,WAAW,EAA8B,MAAM,4BAA4B,CAAC;AAErF,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAGjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE/C;;;;GAIG;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,GAAG,IAAI,EAAE,aAAa,CAAC,OAAO,GAAG,SAAS,CAAC,KAAK,KAAK,GAAG,IAAI,CAAC;AAE3F,oBAAoB;AACpB,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,IAAI,CAAC,GAAG;IAAE,QAAQ,CAAC,CAAC,WAAW,CAAC,EAAE,cAAc,CAAA;CAAE,CAAC;AAEnH,sBAAsB;AACtB,MAAM,MAAM,cAAc,GAAG;IACzB,WAAW;IACX,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,aAAa;IACb,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,YAAY;IACZ,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY;IACZ,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,YAAY;IACZ,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7C,YAAY;IACZ,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY;IACZ,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY;IACZ,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,oBAAoB;IACpB,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IACnC,YAAY;IACZ,QAAQ,CAAC,UAAU,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,cAAc,CAAA;KAAE,CAAC;CACnE,CAAC;AAEF,wBAAwB;AACxB,MAAM,MAAM,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC,GAAG;IACvE,WAAW;IACX,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1C,cAAc;IACd,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;CAC/B,CAAC;AAQF,uBAAuB;AACvB,wBAAgB,UAAU,CAAC,CAAC,SAAS,cAAc,EAC/C,EAAE,EAAE,CAAC,EACL,MAAM,GAAE,OAAO,CAAC,gBAAgB,GAAG,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAM,GAC/D,UAAU,CAAC,CAAC,CAAC,CAmDf"}
1
+ {"version":3,"file":"function.d.ts","sourceRoot":"","sources":["../../../src/vm/types/function.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,WAAW,EAA8B,MAAM,4BAA4B,CAAC;AAErF,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAEjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE/C;;;;GAIG;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,GAAG,IAAI,EAAE,aAAa,CAAC,OAAO,GAAG,SAAS,CAAC,KAAK,KAAK,GAAG,IAAI,CAAC;AAE3F,oBAAoB;AACpB,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,IAAI,CAAC,GAAG;IAAE,QAAQ,CAAC,CAAC,WAAW,CAAC,EAAE,cAAc,CAAA;CAAE,CAAC;AAEnH,sBAAsB;AACtB,MAAM,MAAM,cAAc,GAAG;IACzB,WAAW;IACX,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,aAAa;IACb,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,YAAY;IACZ,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY;IACZ,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,YAAY;IACZ,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7C,YAAY;IACZ,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY;IACZ,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY;IACZ,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,YAAY;IACZ,QAAQ,CAAC,UAAU,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,cAAc,CAAA;KAAE,CAAC;CACnE,CAAC;AAEF,wBAAwB;AACxB,MAAM,MAAM,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC,GAAG;IACvE,WAAW;IACX,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAC7C,CAAC;AAQF,uBAAuB;AACvB,wBAAgB,UAAU,CAAC,CAAC,SAAS,cAAc,EAC/C,EAAE,EAAE,CAAC,EACL,MAAM,GAAE,OAAO,CAAC,gBAAgB,GAAG,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAM,GAC/D,UAAU,CAAC,CAAC,CAAC,CAqCf"}
@@ -49,7 +49,7 @@ export interface VmValueMap {
49
49
  /** Mirascript 模块 */
50
50
  module: VmModule;
51
51
  }
52
- export { isVmAny, isVmArray, isVmArrayLikeRecord, isVmArrayLikeRecordByEntires, isVmArrayLikeRecordByKeys, isVmCallable, isVmConst, isVmContext, isVmExtern, isVmFunction, isVmImmutable, isVmModule, isVmPrimitive, isVmRecord, isVmScript, isVmValue, isVmWrapper, getVmFunctionInfo, } from '../../helpers/types.js';
52
+ export { isVmAny, isVmArray, isVmArrayLikeRecord, isVmArrayLikeRecordByEntires, isVmArrayLikeRecordByKeys, isVmCallable, isVmConst, isVmContext, isVmExtern, isVmFunction, isVmImmutable, isVmModule, isVmPrimitive, isVmRecord, isVmScript, isVmValue, isVmWrapper, getVmFunctionInfo, getVmType, } from '../../helpers/types.js';
53
53
  export { wrapToVmValue, unwrapFromVmValue } from './boundary.js';
54
54
  export { type VmContext, type VmContextRecord, defineVmContextValue, createVmContext } from './context.js';
55
55
  export { VmExtern } from './extern.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/vm/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,WAAW;AACX,MAAM,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC;AAE1C,6BAA6B;AAC7B,MAAM,MAAM,eAAe,GAAG,SAAS,CAAC;AACxC,qBAAqB;AACrB,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAC3D;;;GAGG;AACH,MAAM,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;AACzD;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG;IACnB,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;CAC/C,CAAC;AACF,2BAA2B;AAC3B,MAAM,MAAM,OAAO,GAAG,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAC;AACvD,2BAA2B;AAC3B,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,CAAC;AAC1D,0BAA0B;AAC1B,MAAM,MAAM,OAAO,GAAG,WAAW,GAAG,QAAQ,CAAC;AAC7C,kCAAkC;AAClC,MAAM,MAAM,KAAK,GAAG,OAAO,GAAG,eAAe,CAAC;AAE9C,aAAa;AACb,MAAM,WAAW,UAAU;IACvB,SAAS;IACT,GAAG,EAAE,IAAI,CAAC;IACV,UAAU;IACV,MAAM,EAAE,MAAM,CAAC;IACf,SAAS;IACT,MAAM,EAAE,MAAM,CAAC;IACf,UAAU;IACV,OAAO,EAAE,OAAO,CAAC;IACjB,oBAAoB;IACpB,MAAM,EAAE,QAAQ,CAAC;IACjB,oBAAoB;IACpB,KAAK,EAAE,OAAO,CAAC;IACf,oBAAoB;IACpB,QAAQ,EAAE,UAAU,CAAC;IACrB,aAAa;IACb,MAAM,EAAE,QAAQ,CAAC;IACjB,oBAAoB;IACpB,MAAM,EAAE,QAAQ,CAAC;CACpB;AAED,OAAO,EACH,OAAO,EACP,SAAS,EACT,mBAAmB,EACnB,4BAA4B,EAC5B,yBAAyB,EACzB,YAAY,EACZ,SAAS,EACT,WAAW,EACX,UAAU,EACV,YAAY,EACZ,aAAa,EACb,UAAU,EACV,aAAa,EACb,UAAU,EACV,UAAU,EACV,SAAS,EACT,WAAW,EACX,iBAAiB,GACpB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEjE,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,eAAe,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC3G,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC5G,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/vm/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,WAAW;AACX,MAAM,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC;AAE1C,6BAA6B;AAC7B,MAAM,MAAM,eAAe,GAAG,SAAS,CAAC;AACxC,qBAAqB;AACrB,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAC3D;;;GAGG;AACH,MAAM,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;AACzD;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG;IACnB,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;CAC/C,CAAC;AACF,2BAA2B;AAC3B,MAAM,MAAM,OAAO,GAAG,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAC;AACvD,2BAA2B;AAC3B,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,CAAC;AAC1D,0BAA0B;AAC1B,MAAM,MAAM,OAAO,GAAG,WAAW,GAAG,QAAQ,CAAC;AAC7C,kCAAkC;AAClC,MAAM,MAAM,KAAK,GAAG,OAAO,GAAG,eAAe,CAAC;AAE9C,aAAa;AACb,MAAM,WAAW,UAAU;IACvB,SAAS;IACT,GAAG,EAAE,IAAI,CAAC;IACV,UAAU;IACV,MAAM,EAAE,MAAM,CAAC;IACf,SAAS;IACT,MAAM,EAAE,MAAM,CAAC;IACf,UAAU;IACV,OAAO,EAAE,OAAO,CAAC;IACjB,oBAAoB;IACpB,MAAM,EAAE,QAAQ,CAAC;IACjB,oBAAoB;IACpB,KAAK,EAAE,OAAO,CAAC;IACf,oBAAoB;IACpB,QAAQ,EAAE,UAAU,CAAC;IACrB,aAAa;IACb,MAAM,EAAE,QAAQ,CAAC;IACjB,oBAAoB;IACpB,MAAM,EAAE,QAAQ,CAAC;CACpB;AAED,OAAO,EACH,OAAO,EACP,SAAS,EACT,mBAAmB,EACnB,4BAA4B,EAC5B,yBAAyB,EACzB,YAAY,EACZ,SAAS,EACT,WAAW,EACX,UAAU,EACV,YAAY,EACZ,aAAa,EACb,UAAU,EACV,aAAa,EACb,UAAU,EACV,UAAU,EACV,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,SAAS,GACZ,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEjE,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,eAAe,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC3G,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC5G,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC"}