]> git.lizzy.rs Git - rust.git/blob - tests/target/enum.rs
Update a test
[rust.git] / tests / target / enum.rs
1 // rustfmt-wrap_comments: true
2 // rustfmt-error_on_line_overflow: false
3 // Enums test
4
5 #[atrr]
6 pub enum Test {
7     A,
8     B(u32, A /* comment */, SomeType),
9     /// Doc comment
10     C,
11 }
12
13 pub enum Foo<'a, Y: Baz>
14 where
15     X: Whatever,
16 {
17     A,
18 }
19
20 enum EmtpyWithComment {
21     // Some comment
22 }
23
24 // C-style enum
25 enum Bar {
26     A = 1,
27     #[someAttr(test)] B = 2, // comment
28     C,
29 }
30
31 enum LongVariants {
32     First(
33         LOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONG, // comment
34         VARIANT,
35     ),
36     // This is the second variant
37     Second,
38 }
39
40 enum StructLikeVariants {
41     Normal(u32, String),
42     StructLike {
43         x: i32, // Test comment
44         // Pre-comment
45         #[Attr50] y: SomeType, // Aanother Comment
46     },
47     SL { a: A },
48 }
49
50 enum X {
51     CreateWebGLPaintTask(
52         Size2D<i32>,
53         GLContextAttributes,
54         IpcSender<Result<(IpcSender<CanvasMsg>, usize), String>>,
55     ), // This is a post comment
56 }
57
58 pub enum EnumWithAttributes {
59     // This is a pre comment
60     // AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
61     TupleVar(usize, usize, usize), /* AAAA AAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAA
62                                     * AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA */
63     // Pre Comment
64     #[rustfmt_skip]
65     SkippedItem(String,String,), // Post-comment
66     #[another_attr]
67     #[attr2]
68     ItemStruct { x: usize, y: usize }, /* Comment AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA */
69     // And another
70     ForcedPreflight, /* AAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
71                       * AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA */
72 }
73
74 pub enum SingleTuple {
75     // Pre Comment AAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
76     // AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
77     Match(usize, usize, String), /* Post-comment AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA */
78 }
79
80 pub enum SingleStruct {
81     Match { name: String, loc: usize }, // Post-comment
82 }
83
84 pub enum GenericEnum<I, T>
85 where
86     I: Iterator<Item = T>,
87 {
88     // Pre Comment
89     Left { list: I, root: T },  // Post-comment
90     Right { list: I, root: T }, // Post Comment
91 }
92
93
94 enum EmtpyWithComment {
95     // Some comment
96 }
97
98 enum TestFormatFails {
99     AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA,
100 }
101
102 fn nested_enum_test() {
103     if true {
104         enum TestEnum {
105             One(
106                 usize,
107                 usize,
108                 usize,
109                 usize,
110                 usize,
111                 usize,
112                 usize,
113                 usize,
114                 usize,
115                 usize,
116                 usize,
117                 usize,
118                 usize,
119                 usize,
120                 usize,
121                 usize,
122             ), /* AAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAA
123                 * AAAAAAAAAAAAAAAAAAAAAA */
124             Two, /* AAAAAAAAAAAAAAAAAA  AAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
125                   * AAAAAAAAAAAAAAAAAA */
126         }
127         enum TestNestedFormatFail {
128             AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA,
129         }
130     }
131 }
132
133 pub struct EmtpyWithComment {
134     // FIXME: Implement this struct
135 }
136
137 // #1115
138 pub enum Bencoding<'i> {
139     Str(&'i [u8]),
140     Int(i64),
141     List(Vec<Bencoding<'i>>),
142     /// A bencoded dict value. The first element the slice of bytes in the source that the dict is
143     /// composed of. The second is the dict, decoded into an ordered map.
144     // TODO make Dict "structlike" AKA name the two values.
145     Dict(&'i [u8], BTreeMap<&'i [u8], Bencoding<'i>>),
146 }
147
148 // #1261
149 pub enum CoreResourceMsg {
150     SetCookieForUrl(
151         ServoUrl,
152         #[serde(deserialize_with = "::hyper_serde::deserialize",
153                 serialize_with = "::hyper_serde::serialize")]
154         Cookie,
155         CookieSource,
156     ),
157 }
158
159 enum Loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong
160 {}
161 enum Looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong
162 {}
163 enum Loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong
164 {}
165 enum Loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong
166 {
167     Foo,
168 }
169
170 // #1046
171 pub enum Entry<'a, K: 'a, V: 'a> {
172     Vacant(#[stable(feature = "rust1", since = "1.0.0")] VacantEntry<'a, K, V>),
173     Occupied(#[stable(feature = "rust1", since = "1.0.0")] OccupiedEntry<'a, K, V>),
174 }
175
176 // #2081
177 pub enum ForegroundColor {
178     CYAN =
179         (winapi::FOREGROUND_INTENSITY | winapi::FOREGROUND_GREEN | winapi::FOREGROUND_BLUE) as u16,
180 }
181
182 // #2098
183 pub enum E<'a> {
184     V(<std::slice::Iter<'a, Xxxxxxxxxxxxxx> as Iterator>::Item),
185 }