diff options
Diffstat (limited to 'docs/TOOLS.md')
-rw-r--r-- | docs/TOOLS.md | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/docs/TOOLS.md b/docs/TOOLS.md new file mode 100644 index 000000000..1fcfa2dec --- /dev/null +++ b/docs/TOOLS.md | |||
@@ -0,0 +1,30 @@ | |||
1 | # Tools used to implement libsyntax | ||
2 | |||
3 | libsyntax uses several tools to help with development. | ||
4 | |||
5 | Each tool is a binary in the [tools/](../tools) package. | ||
6 | You can run them via `cargo run` command. | ||
7 | |||
8 | ``` | ||
9 | cargo run --package tools --bin tool | ||
10 | ``` | ||
11 | |||
12 | There are also aliases in [./cargo/config](../.cargo/config), | ||
13 | so the following also works: | ||
14 | |||
15 | ``` | ||
16 | cargo tool | ||
17 | ``` | ||
18 | |||
19 | |||
20 | # Tool: `gen` | ||
21 | |||
22 | This tool reads a "grammar" from [grammar.ron](../grammar.ron) and | ||
23 | generates the `syntax_kinds.rs` file. You should run this tool if you | ||
24 | add new keywords or syntax elements. | ||
25 | |||
26 | |||
27 | # Tool: 'parse' | ||
28 | |||
29 | This tool reads rust source code from the standard input, parses it, | ||
30 | and prints the result to stdout. | ||