#编译器 #javascript-compiler #js #javascript #cli

app boa_cli

Boa 是用 Rust 编写的 JavaScript 词法分析器、解析器和编译器。目前,它支持该语言的一些功能。

6 个版本 (3 个重大更新)

0.19.0 2024 年 7 月 11 日
0.18.0 2024 年 3 月 7 日
0.17.3 2023 年 9 月 26 日
0.17.0 2023 年 7 月 8 日
0.16.0 2022 年 9 月 25 日

#43 in 命令行工具

无许可证 OR MIT

5.5MB
103K SLoC

Boa CLI

Boa CLI 是 Boa 的 REPL 实现工具,可以直接从 CLI 执行 JavaScript

安装

boa_cli 可以通过 Cargo 直接安装。

    cargo install boa_cli

使用方法

安装完成后,即可使用!

要执行一些 JavaScript 源代码,导航到您选择的目录,然后输入

    boa test.js

或者,如果您想使用 Boa 的 REPL,只需输入

    boa

CLI 选项

Usage: boa [OPTIONS] [FILE]...

Arguments:
  [FILE]...  The JavaScript file(s) to be evaluated

Options:
      --strict                        Run in strict mode
  -a, --dump-ast [<FORMAT>]           Dump the AST to stdout with the given format [possible values: debug, json, json-pretty]
  -t, --trace                         Dump the AST to stdout with the given format
      --vi                            Use vi mode in the REPL
  -O, --optimize
      --optimizer-statistics
      --flowgraph [<FORMAT>]          Generate instruction flowgraph. Default is Graphviz [possible values: graphviz, mermaid]
      --flowgraph-direction <FORMAT>  Specifies the direction of the flowgraph. Default is top-top-bottom [possible values: top-to-bottom, bottom-to-top, left-to-right, right-to-left]
      --debug-object                  Inject debugging object `$boa`
  -m, --module                        Treats the input files as modules
  -r, --root <ROOT>                   Root path from where the module resolver will try to load the modules [default: .]
  -h, --help                          Print help (see more with '--help')
  -V, --version                       Print version

功能

Boa 的 CLI 当前具有各种功能(如 Options 中列出)。

包括以下功能

  • 已实现的运行时功能(请注意,目前仅实现了 Console
  • AST 可视化:查看编译后的 Boa AST (--dump-ast)
  • 跟踪:在执行任何 JavaScript 时启用 vm 跟踪
  • 流程图:查看生成的(使用各种提供的选项)
  • 调试:Boa 的 CLI 附带了一个具有各种功能的实现的 $boa 调试对象(请参阅文档)。

如果您有任何功能建议,请随时提交问题并/或做出贡献!

依赖项

~24–39MB
~512K SLoC