File tree Expand file tree Collapse file tree 1 file changed +8
-3
lines changed Expand file tree Collapse file tree 1 file changed +8
-3
lines changed Original file line number Diff line number Diff line change @@ -269,13 +269,18 @@ mod prim_pointer { }
269269/// - `Borrow`, `BorrowMut`
270270/// - `Default`
271271///
272+ /// This limitation to `N in 0..33` exists because Rust does not yet support
273+ /// generics over the size of an array type. `[Foo; 3]` and `[Bar; 3]` are
274+ /// instances of same generic type `[T; 3]`, but `[Foo; 3]` and `[Foo; 5]` are
275+ /// entirely different types. As a stopgap, trait implementations are
276+ /// statically generated for `N in 0..33`.
277+ ///
272278/// Arrays coerce to [slices (`[T]`)][slice], so their methods can be called on
273- /// arrays.
279+ /// arrays. Slices are dynamic and do not coerce to arrays; consequently more
280+ /// methods are defined on `slice` where they support both types.
274281///
275282/// [slice]: primitive.slice.html
276283///
277- /// Rust does not currently support generics over the size of an array type.
278- ///
279284/// # Examples
280285///
281286/// ```
You can’t perform that action at this time.
0 commit comments