about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/librustc/README.md6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/librustc/README.md b/src/librustc/README.md
index e72acb43fba..48bc9f91619 100644
--- a/src/librustc/README.md
+++ b/src/librustc/README.md
@@ -187,6 +187,12 @@ pointers for understanding them better.
 - sess -- the **compiler session**, which stores global data used throughout compilation
 - 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.
+- 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.
 - substs -- the **substitutions** for a given generic type or item
   (e.g., the `i32, u32` in `HashMap<i32, u32>`)
 - tcx -- the "typing context", main data structure of the compiler (see `librustc/ty`).