]> git.lizzy.rs Git - rust.git/blob - src/tools/rustfmt/tests/source/const_generics.rs
Rollup merge of #107166 - petrochenkov:nooptable, r=oli-obk
[rust.git] / src / tools / rustfmt / tests / source / const_generics.rs
1 struct Message {
2     field2: Vec<
3       "MessageEntity"
4     >,
5     field3: Vec<
6       1
7     >,
8     field4: Vec<
9       2 ,    3
10     >,
11
12 }
13
14 struct RectangularArray<T, const WIDTH: usize, const HEIGHT: usize> {
15     array: [[T; WIDTH]; HEIGHT],
16 }
17
18 fn main() {
19   const X: usize = 7;
20   let x: RectangularArray<i32, 2, 4>;
21   let y: RectangularArray<i32,  X,  {2 
22   * 2} >;
23 }
24
25 fn foo<const X: usize>() {
26     const Y: usize = X * 2;
27     static Z: (usize, usize) = (X, X);
28
29     struct Foo([i32; X]);
30 }
31
32 type Foo<const N: usize> = [i32; N + 1];
33
34 pub trait Foo: Bar<{Baz::COUNT}> {
35         const ASD: usize;
36 }
37
38 // #4263
39 fn const_generics_on_params<
40     // AAAA
41         const BBBB: usize,
42     /* CCCC */
43     const DDDD: usize,
44     >() {}