You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/glossary.md
+9-8Lines changed: 9 additions & 8 deletions
Original file line number
Diff line number
Diff line change
@@ -9,23 +9,24 @@ AST | the abstract syntax tree produced by the syntax crate
9
9
codegen unit | when we produce LLVM IR, we group the Rust code into a number of codegen units. Each of these units is processed by LLVM independently from one another, enabling parallelism. They are also the unit of incremental re-use.
10
10
cx | we tend to use "cx" as an abbrevation for context. See also `tcx`, `infcx`, etc.
11
11
DefId | an index identifying a definition (see `librustc/hir/def_id.rs`). Uniquely identifies a `DefPath`.
12
-
HIR | the High-level IR, created by lowering and desugaring the AST. See `librustc/hir`.
12
+
HIR | the High-level IR, created by lowering and desugaring the AST ([see more](hir.html))
13
13
HirId | identifies a particular node in the HIR by combining a def-id with an "intra-definition offset".
14
-
'gcx | the lifetime of the global arena (see `librustc/ty`).
14
+
'gcx | the lifetime of the global arena ([see more](ty.html))
15
15
generics | the set of generic type parameters defined on a type or item
16
16
ICE | internal compiler error. When the compiler crashes.
17
17
infcx | the inference context (see `librustc/infer`)
18
18
MIR | the Mid-level IR that is created after type-checking for use by borrowck and trans. Defined in the `src/librustc/mir/` module, but much of the code that manipulates it is found in `src/librustc_mir`.
19
-
obligation | something that must be proven by the trait system; see `librustc/traits`.
19
+
obligation | something that must be proven by the trait system ([see more](trait-resolution.html))
20
20
local crate | the crate currently being compiled.
21
21
node-id or NodeId | an index identifying a particular node in the AST or HIR; gradually being phased out and replaced with `HirId`.
22
-
query | perhaps some sub-computation during compilation; see `librustc/maps`.
23
-
provider | the function that executes a query; see `librustc/maps`.
22
+
query | perhaps some sub-computation during compilation ([see more](query.html))
23
+
provider | the function that executes a query ([see more](query.html))
24
24
sess | the compiler session, which stores global data used throughout compilation
25
25
side tables | because the AST and HIR are immutable once created, we often carry extra information about them in the form of hashtables, indexed by the id of a particular node.
26
26
span | a location in the user's source code, used for error reporting primarily. These are like a file-name/line-number/column tuple on steroids: they carry a start/end point, and also track macro expansions and compiler desugaring. All while being packed into a few bytes (really, it's an index into a table). See the Span datatype for more.
27
27
substs | the substitutions for a given generic type or item (e.g., the `i32`, `u32` in `HashMap<i32, u32>`)
28
-
tcx | the "typing context", main data structure of the compiler (see `librustc/ty`).
28
+
tcx | the "typing context", main data structure of the compiler ([see more](ty.html))
29
+
'tcx | the lifetime of the currently active inference context ([see more](ty.html))
29
30
trans | the code to translate MIR into LLVM IR.
30
-
trait reference | a trait and values for its type parameters (see `librustc/ty`).
31
-
ty | the internal representation of a type (see `librustc/ty`).
31
+
trait reference | a trait and values for its type parameters ([see more](ty.html)).
32
+
ty | the internal representation of a type ([see more](ty.html)).
0 commit comments