mirror of
https://github.com/rust-lang/rust-analyzer
synced 2024-12-27 05:23:24 +00:00
31 lines
667 B
Markdown
31 lines
667 B
Markdown
|
# Tools used to implement libsyntax
|
||
|
|
||
|
libsyntax uses several tools to help with development.
|
||
|
|
||
|
Each tool is a binary in the [tools/](../tools) package.
|
||
|
You can run them via `cargo run` command.
|
||
|
|
||
|
```
|
||
|
cargo run --package tools --bin tool
|
||
|
```
|
||
|
|
||
|
There are also aliases in [./cargo/config](../.cargo/config),
|
||
|
so the following also works:
|
||
|
|
||
|
```
|
||
|
cargo tool
|
||
|
```
|
||
|
|
||
|
|
||
|
# Tool: `gen`
|
||
|
|
||
|
This tool reads a "grammar" from [grammar.ron](../grammar.ron) and
|
||
|
generates the `syntax_kinds.rs` file. You should run this tool if you
|
||
|
add new keywords or syntax elements.
|
||
|
|
||
|
|
||
|
# Tool: 'parse'
|
||
|
|
||
|
This tool reads rust source code from the standard input, parses it,
|
||
|
and prints the result to stdout.
|