]> git.lizzy.rs Git - rust.git/blob - tests/target/enum.rs
Don't be so aggressie about line-breaking strings (#911)
[rust.git] / tests / target / enum.rs
1 // rustfmt-wrap_comments: true
2 // Enums test
3
4 #[atrr]
5 pub enum Test {
6     A,
7     B(u32, A /* comment */, SomeType),
8     /// Doc comment
9     C,
10 }
11
12 pub enum Foo<'a, Y: Baz>
13     where X: Whatever
14 {
15     A,
16 }
17
18 enum EmtpyWithComment {
19     // Some comment
20 }
21
22 // C-style enum
23 enum Bar {
24     A = 1,
25     #[someAttr(test)]
26     B = 2, // comment
27     C,
28 }
29
30 enum LongVariants {
31     First(LOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONG, // comment
32           VARIANT),
33     // This is the second variant
34     Second,
35 }
36
37 enum StructLikeVariants {
38     Normal(u32, String),
39     StructLike {
40         x: i32, // Test comment
41         // Pre-comment
42         #[Attr50]
43         y: SomeType, // Aanother Comment
44     },
45     SL {
46         a: A,
47     },
48 }
49
50 enum X {
51     CreateWebGLPaintTask(Size2D<i32>,
52                          GLContextAttributes,
53                          IpcSender<Result<(IpcSender<CanvasMsg>, usize), String>>), /* This is
54                                                                                      * a post comment */
55 }
56
57 pub enum EnumWithAttributes {
58     // This is a pre comment
59     // AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
60     TupleVar(usize, usize, usize), /* AAAA AAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAA
61                                     * AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA */
62     // Pre Comment
63     #[rustfmt_skip]
64     SkippedItem(String,String,), // Post-comment
65     #[another_attr]
66     #[attr2]
67     ItemStruct {
68         x: usize,
69         y: usize,
70     }, /* Comment AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA */
71     // And another
72     ForcedPreflight, /* AAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
73                       * AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA */
74 }
75
76 pub enum SingleTuple {
77     // Pre Comment AAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
78     // AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
79     Match(usize, usize, String), /* Post-comment
80                                   * AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA */
81 }
82
83 pub enum SingleStruct {
84     Match {
85         name: String,
86         loc: usize,
87     }, // Post-comment
88 }
89
90 pub enum GenericEnum<I, T>
91     where I: Iterator<Item = T>
92 {
93     // Pre Comment
94     Left {
95         list: I,
96         root: T,
97     }, // Post-comment
98     Right {
99         list: I,
100         root: T,
101     }, // Post Comment
102 }
103
104
105 enum EmtpyWithComment {
106     // Some comment
107 }
108
109 enum TestFormatFails {
110     AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
111 }
112
113 fn nested_enum_test() {
114     if true {
115         enum TestEnum {
116             One(usize,
117                 usize,
118                 usize,
119                 usize,
120                 usize,
121                 usize,
122                 usize,
123                 usize,
124                 usize,
125                 usize,
126                 usize,
127                 usize,
128                 usize,
129                 usize,
130                 usize,
131                 usize), /* AAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAA
132                          * AAAAAAAAAAAAAAAAAAAAAA */
133             Two, /* AAAAAAAAAAAAAAAAAA  AAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
134                   * AAAAAAAAAAAAAAAAAA */
135         }
136         enum TestNestedFormatFail {
137             AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
138         }
139     }
140 }
141
142 pub struct EmtpyWithComment {
143     // FIXME: Implement this struct
144 }