summary refs log tree commit diff
path: root/src/doc/rustc-dev-guide
diff options
context:
space:
mode:
authorYukang <moorekang@gmail.com>2023-08-20 15:40:18 +0800
committerGitHub <noreply@github.com>2023-08-20 00:40:18 -0700
commitde19d6d39b0c1f2847c8f8451bcd4120d3136090 (patch)
tree5cfc81fa5c3ceb751d90145e48486460f0f60cca /src/doc/rustc-dev-guide
parent22fa99983006c32e233e5559bf3f45e6ec892965 (diff)
downloadrust-de19d6d39b0c1f2847c8f8451bcd4120d3136090.tar.gz
rust-de19d6d39b0c1f2847c8f8451bcd4120d3136090.zip
Update outdated doc for types (#1768)
Diffstat (limited to 'src/doc/rustc-dev-guide')
-rw-r--r--src/doc/rustc-dev-guide/src/ty.md12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/doc/rustc-dev-guide/src/ty.md b/src/doc/rustc-dev-guide/src/ty.md
index 4a6cdb7c7b4..624fa421198 100644
--- a/src/doc/rustc-dev-guide/src/ty.md
+++ b/src/doc/rustc-dev-guide/src/ty.md
@@ -74,9 +74,9 @@ HIR is built, some basic type inference and type checking is done. During the ty
 figure out what the `ty::Ty` of everything is and we also check if the type of something is
 ambiguous. The `ty::Ty` is then used for type checking while making sure everything has the
 expected type. The [`astconv` module][astconv] is where the code responsible for converting a
-`rustc_hir::Ty` into a `ty::Ty` is located. This occurs during the type-checking phase,
-but also in other parts of the compiler that want to ask questions like "what argument types does
-this function expect?"
+`rustc_hir::Ty` into a `ty::Ty` is located. The main routine used is `ast_ty_to_ty`. This occurs
+during the type-checking phase, but also in other parts of the compiler that want to ask
+questions like "what argument types does this function expect?"
 
 [astconv]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_hir_analysis/astconv/index.html
 
@@ -137,11 +137,13 @@ benefits of interning.
 
 ## Allocating and working with types
 
-To allocate a new type, you can use the various `mk_` methods defined on the `tcx`. These have names
+To allocate a new type, you can use the various `new_*` methods defined on
+[`Ty`](https://doc.rust-lang.org/nightly/nightly-rustc/rustc_middle/ty/struct.Ty.html).
+These have names
 that correspond mostly to the various kinds of types. For example:
 
 ```rust,ignore
-let array_ty = tcx.mk_array(elem_ty, len * 2);
+let array_ty = Ty::new_array_with_const_len(tcx, ty, count);
 ```
 
 These methods all return a `Ty<'tcx>` – note that the lifetime you get back is the lifetime of the