@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.
- package/README.md +46 -0
- package/dist/{chunk-6CAGNGY6.js → chunk-5BBTXV5A.js} +270 -269
- package/dist/chunk-5BBTXV5A.js.map +6 -0
- package/dist/{chunk-VRGQ23AK.js → chunk-HZYARHEQ.js} +30 -38
- package/dist/chunk-HZYARHEQ.js.map +6 -0
- package/dist/compiler/emit/consts.d.ts.map +1 -1
- package/dist/compiler/emit-script.d.ts +7 -2
- package/dist/compiler/emit-script.d.ts.map +1 -1
- package/dist/compiler/index.d.ts +2 -0
- package/dist/compiler/index.d.ts.map +1 -1
- package/dist/compiler/worker.js +1 -1
- package/dist/helpers/constants.d.ts +1 -10
- package/dist/helpers/constants.d.ts.map +1 -1
- package/dist/helpers/serialize.d.ts.map +1 -1
- package/dist/helpers/types.d.ts +5 -1
- package/dist/helpers/types.d.ts.map +1 -1
- package/dist/helpers/utils.d.ts +7 -1
- package/dist/helpers/utils.d.ts.map +1 -1
- package/dist/index.js +7 -4
- package/dist/index.js.map +1 -1
- package/dist/subtle.js +3 -3
- package/dist/subtle.js.map +1 -1
- package/dist/vm/checkpoint.d.ts +3 -3
- package/dist/vm/checkpoint.d.ts.map +1 -1
- package/dist/vm/lib/global/debug.d.ts.map +1 -1
- package/dist/vm/lib/global/sequence/entries.d.ts.map +1 -1
- package/dist/vm/lib/global/sequence/with.d.ts.map +1 -1
- package/dist/vm/operations/array-range.d.ts +6 -0
- package/dist/vm/operations/array-range.d.ts.map +1 -0
- package/dist/vm/operations/call.d.ts.map +1 -1
- package/dist/vm/operations/common.d.ts +1 -1
- package/dist/vm/operations/common.d.ts.map +1 -1
- package/dist/vm/operations/compound.d.ts +10 -10
- package/dist/vm/operations/compound.d.ts.map +1 -1
- package/dist/vm/operations/convert.d.ts +4 -4
- package/dist/vm/operations/convert.d.ts.map +1 -1
- package/dist/vm/operations/helpers.d.ts +7 -13
- package/dist/vm/operations/helpers.d.ts.map +1 -1
- package/dist/vm/operations/index.d.ts +1 -0
- package/dist/vm/operations/index.d.ts.map +1 -1
- package/dist/vm/operations/operator.d.ts +22 -22
- package/dist/vm/operations/operator.d.ts.map +1 -1
- package/dist/vm/operations/slice.d.ts +2 -2
- package/dist/vm/operations/slice.d.ts.map +1 -1
- package/dist/vm/operations/type-check.d.ts +7 -7
- package/dist/vm/operations/type-check.d.ts.map +1 -1
- package/dist/vm/operations/utils.d.ts +2 -2
- package/dist/vm/operations/utils.d.ts.map +1 -1
- package/dist/vm/types/boundary.d.ts +1 -1
- package/dist/vm/types/boundary.d.ts.map +1 -1
- package/dist/vm/types/context.d.ts.map +1 -1
- package/dist/vm/types/function.d.ts +0 -4
- package/dist/vm/types/function.d.ts.map +1 -1
- package/dist/vm/types/index.d.ts +1 -1
- package/dist/vm/types/index.d.ts.map +1 -1
- package/package.json +21 -8
- package/src/compiler/diagnostic.ts +2 -2
- package/src/compiler/emit/consts.ts +1 -0
- package/src/compiler/emit/index.ts +5 -5
- package/src/compiler/emit-script.ts +15 -6
- package/src/compiler/index.ts +3 -2
- package/src/helpers/analyze.ts +1 -1
- package/src/helpers/constants.ts +1 -11
- package/src/helpers/serialize.ts +1 -1
- package/src/helpers/types.ts +16 -0
- package/src/helpers/utils.ts +2 -1
- package/src/vm/checkpoint.ts +6 -6
- package/src/vm/lib/global/debug.ts +0 -1
- package/src/vm/lib/global/sequence/entries.ts +2 -0
- package/src/vm/lib/global/sequence/map-filter.ts +4 -4
- package/src/vm/lib/global/sequence/with.ts +3 -2
- package/src/vm/lib/loader.ts +2 -2
- package/src/vm/operations/array-range.ts +37 -0
- package/src/vm/operations/call.ts +8 -7
- package/src/vm/operations/common.ts +2 -2
- package/src/vm/operations/compound.ts +24 -25
- package/src/vm/operations/convert.ts +8 -8
- package/src/vm/operations/helpers.ts +17 -51
- package/src/vm/operations/index.ts +1 -0
- package/src/vm/operations/operator.ts +64 -54
- package/src/vm/operations/slice.ts +5 -4
- package/src/vm/operations/type-check.ts +16 -19
- package/src/vm/operations/utils.ts +4 -4
- package/src/vm/types/boundary.ts +2 -2
- package/src/vm/types/context.ts +1 -2
- package/src/vm/types/function.ts +2 -21
- package/src/vm/types/index.ts +1 -0
- package/bench/index.ts +0 -45
- package/dist/chunk-6CAGNGY6.js.map +0 -6
- package/dist/chunk-VRGQ23AK.js.map +0 -6
package/README.md
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# @mirascript/mirascript
|
|
2
|
+
|
|
3
|
+
`@mirascript/mirascript` 是 MiraScript 的核心 TypeScript API,负责连接底层编译器、生成可执行脚本,并导出运行时与虚拟机相关能力。
|
|
4
|
+
|
|
5
|
+
## 能力概览
|
|
6
|
+
|
|
7
|
+
- 将 MiraScript 源码编译为可执行的 JavaScript 包装对象
|
|
8
|
+
- 提供同步与异步编译接口
|
|
9
|
+
- 导出编译器、VM、序列化等上层 API
|
|
10
|
+
- 在需要时自动加载底层编译器模块
|
|
11
|
+
|
|
12
|
+
## 安装
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
pnpm add @mirascript/mirascript
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## 基本示例
|
|
19
|
+
|
|
20
|
+
```ts
|
|
21
|
+
import { compile, compileSync } from '@mirascript/mirascript';
|
|
22
|
+
|
|
23
|
+
const script = await compile('1 + 2');
|
|
24
|
+
console.log(script());
|
|
25
|
+
|
|
26
|
+
const syncScript = compileSync('let x = 3; x * 7');
|
|
27
|
+
console.log(syncScript());
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## 常用导出
|
|
31
|
+
|
|
32
|
+
- `compile()` / `compileSync()`:编译源代码
|
|
33
|
+
- `serialize()`:序列化运行时值
|
|
34
|
+
- `./subtle`:较底层的接口与工具
|
|
35
|
+
- `compiler/*`、`vm/*`:编译器与运行时内部模块
|
|
36
|
+
|
|
37
|
+
## 开发
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
pnpm --filter @mirascript/mirascript build
|
|
41
|
+
pnpm --filter @mirascript/mirascript watch
|
|
42
|
+
pnpm --filter @mirascript/mirascript test
|
|
43
|
+
pnpm --filter @mirascript/mirascript bench
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
如果你需要直接访问底层 Rust/WASM 编译器能力,优先查看 `@mirascript/bindings`、`@mirascript/napi` 和 `@mirascript/wasm`。
|