File tree Expand file tree Collapse file tree 1 file changed +5
-1
lines changed Expand file tree Collapse file tree 1 file changed +5
-1
lines changed Original file line number Diff line number Diff line change @@ -32,7 +32,10 @@ we'll talk about that later.
32
32
- The token stream passes through a higher-level lexer located in
33
33
[ ` rustc_parse ` ] to prepare for the next stage of the compile process. The
34
34
[ ` StringReader ` ] struct is used at this stage to perform a set of validations
35
- and turn strings into interned symbols (_ interning_ is discussed later).
35
+ and turn strings into interned symbols (_ interning_ is discussed later).
36
+ [ String interning] is a way of storing only one immutable
37
+ copy of each distinct string value.
38
+
36
39
- The lexer has a small interface and doesn't depend directly on the
37
40
diagnostic infrastructure in ` rustc ` . Instead it provides diagnostics as plain
38
41
data which are emitted in ` rustc_parse::lexer::mod ` as real diagnostics.
@@ -97,6 +100,7 @@ we'll talk about that later.
97
100
- The different libraries/binaries are linked together to produce the final
98
101
binary.
99
102
103
+ [ String interning ] : https://en.wikipedia.org/wiki/String_interning
100
104
[ `rustc_lexer` ] : https://doc.rust-lang.org/nightly/nightly-rustc/rustc_lexer/index.html
101
105
[ `rustc_driver` ] : https://rustc-dev-guide.rust-lang.org/rustc-driver.html
102
106
[ `rustc_interface::Config` ] : https://doc.rust-lang.org/nightly/nightly-rustc/rustc_interface/interface/struct.Config.html
You can’t perform that action at this time.
0 commit comments