9f79d2f86a
Make FileMap::{lines, multibyte_chars, non_narrow_chars} non-mutable. This PR removes most of the interior mutability from `FileMap`, which should be beneficial, especially in a multithreaded setting. This is achieved by initializing the state in question when the filemap is constructed instead of during lexing. Hopefully this doesn't degrade performance. cc @wesleywiser |
||
---|---|---|
.. | ||
diagnostics | ||
ext | ||
parse | ||
util | ||
ast.rs | ||
attr.rs | ||
build.rs | ||
Cargo.toml | ||
codemap.rs | ||
config.rs | ||
diagnostic_list.rs | ||
entry.rs | ||
feature_gate.rs | ||
fold.rs | ||
json.rs | ||
lib.rs | ||
ptr.rs | ||
README.md | ||
show_span.rs | ||
std_inject.rs | ||
str.rs | ||
test_snippet.rs | ||
test.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: