Generic, What is the relationship between T and [T]

One minor addition to make: [[i32]] is in fact a "real" type, despite being ill-formed and an error to use. You can without an error mention the type in a type alias (e.g. type Illegal = [[i32]];), and you can even mention it as the base of a type projection (e.g. <[[i32]] as Trait>::AssociatedType), although the latter is probably a bug.

3 Likes