#legion #default #level #representation #high #intermediate #script

legion-error

为 Nyar 提供的高级中间表示

1 个不稳定版本

0.0.0 2024 年 5 月 14 日

#7 in #legion

MPL-2.0 许可证

5KB

- source/
    - index.vk
- scripts/
    - main.vk
- examples/
    - main.vk
- benchmarks/
    - main.vk
- tests/
    - main.vk
main.vk
package.toml
package.lock
readme.md
  • main.vk:默认运行脚本
  • readme.md:
  • legion.json:

scripts

支持 *.vk*.wat*.wasm 三种格式,以及目录形式

  • scripts/可执行脚本
    • 文本.wat:
    • single.vk:单个文件脚本
    • nested/:脚本目录
      • main.vk:脚本入口点

比如这个结构体

  • vp 二进制
  • vp 文本
  • vp 单个
  • vp 嵌套

examples

  • examples/可执行脚本
    • nested/:脚本目录
      • main.vk:脚本入口点

通过 vp 直接运行,只能使用 vp example 命令运行。

  • vp example nested

默认不打包发布。

tests

scripts 目录结构完全相同,但不能通过 vp 直接运行,只能使用 vp test 命令运行。

默认不打包发布。

benchmarks

scripts 目录结构完全相同,但不能通过 vp 直接运行,只能使用 vp benchmark 命令运行。

默认不打包发布。

示例

{
    workspace: {
    },
    package: {
        name: "std",
        version: "0.0.0",
        publish: false,
        description: "The standard function library of the Valkyrie language",
        authors: [
            "Aster <[email protected]>"
        ],
        repository: "https://github.com/oovm/XCell",
        documentation: "https://docs.rs/xcell-types",
        edition: "2000",
        license: "MPL-2.0",
    },
    features: {
        default: [],
    },
    scripts: {
        "command": "running"
    },
    binaries: {
    },
    "dependencies": {},
    "dependencies-build": {},
    "dependencies-debug": {},
    // pretty: "path"

    pretty: {
        // pretty format config, inherit parent
    }
}

无运行时依赖