Move the JSON error emitter to librustc_errors This is done both as a cleanup (it makes little sense for this emitter to be in libsyntax), but also as part of broader work to decouple Session from librustc itself. Along the way, this also moves SourceMap to syntax_pos, which is also nice for the above reasons, as well as allowing dropping the SourceMapper trait from code. This had the unfortunate side-effect of moving `FatalError` to rustc_data_structures (it's needed in syntax_pos, due to SourceMap, but putting it there feels somehow worse). |
||
|---|---|---|
| .. | ||
| ast | ||
| attr | ||
| diagnostics | ||
| expand | ||
| feature_gate | ||
| util | ||
| ast.rs | ||
| build.rs | ||
| Cargo.toml | ||
| early_buffered_lints.rs | ||
| entry.rs | ||
| lib.rs | ||
| mut_visit.rs | ||
| ptr.rs | ||
| README.md | ||
| sess.rs | ||
| show_span.rs | ||
| token.rs | ||
| tokenstream.rs | ||
| visit.rs | ||
The syntax crate contains those things concerned purely with syntax
– that is, the AST ("abstract syntax tree"), parser, pretty-printer,
lexer, macro expander, and utilities for traversing ASTs.
For more information about how these things work in rustc, see the rustc guide: