rust/tests/target/enum.rs

180 lines
4.6 KiB
Rust
Raw Normal View History

// rustfmt-wrap_comments: true
// rustfmt-error_on_line_overflow: false
2015-05-29 05:41:26 -05:00
// Enums test
#[atrr]
pub enum Test {
A,
2015-06-23 08:58:58 -05:00
B(u32, A /* comment */, SomeType),
2015-05-29 05:41:26 -05:00
/// Doc comment
C,
}
pub enum Foo<'a, Y: Baz>
2017-06-11 23:01:41 -05:00
where
X: Whatever,
2015-05-29 05:41:26 -05:00
{
A,
}
enum EmtpyWithComment {
// Some comment
}
// C-style enum
enum Bar {
A = 1,
2017-08-11 03:54:20 -05:00
#[someAttr(test)] B = 2, // comment
2015-05-29 05:41:26 -05:00
C,
}
enum LongVariants {
2017-06-11 23:01:41 -05:00
First(
LOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONG, // comment
VARIANT,
2017-06-11 23:01:41 -05:00
),
2015-05-29 05:41:26 -05:00
// This is the second variant
Second,
}
2015-06-23 08:58:58 -05:00
enum StructLikeVariants {
Normal(u32, String),
StructLike {
x: i32, // Test comment
// Pre-comment
2017-08-11 03:54:20 -05:00
#[Attr50] y: SomeType, // Aanother Comment
},
SL { a: A },
2015-06-23 08:58:58 -05:00
}
enum X {
2017-06-11 23:01:41 -05:00
CreateWebGLPaintTask(
Size2D<i32>,
GLContextAttributes,
IpcSender<Result<(IpcSender<CanvasMsg>, usize), String>>,
2017-06-11 23:01:41 -05:00
), // This is a post comment
}
pub enum EnumWithAttributes {
// This is a pre comment
// AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
TupleVar(usize, usize, usize), /* AAAA AAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAA
* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA */
// Pre Comment
#[rustfmt_skip]
SkippedItem(String,String,), // Post-comment
#[another_attr]
#[attr2]
ItemStruct { x: usize, y: usize }, /* Comment AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA */
// And another
ForcedPreflight, /* AAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA */
}
pub enum SingleTuple {
// Pre Comment AAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
// AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Match(usize, usize, String), /* Post-comment AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA */
}
pub enum SingleStruct {
Match { name: String, loc: usize }, // Post-comment
}
pub enum GenericEnum<I, T>
2017-06-11 23:01:41 -05:00
where
I: Iterator<Item = T>,
{
// Pre Comment
2017-07-05 11:03:20 -05:00
Left { list: I, root: T }, // Post-comment
Right { list: I, root: T }, // Post Comment
}
enum EmtpyWithComment {
// Some comment
}
enum TestFormatFails {
2017-08-11 03:54:20 -05:00
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA,
}
fn nested_enum_test() {
if true {
enum TestEnum {
2017-06-11 23:01:41 -05:00
One(
usize,
usize,
usize,
usize,
usize,
usize,
usize,
usize,
usize,
usize,
usize,
usize,
usize,
usize,
2017-06-11 23:01:41 -05:00
usize,
usize,
2017-06-11 23:01:41 -05:00
), /* AAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAA
* AAAAAAAAAAAAAAAAAAAAAA */
Two, /* AAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
* AAAAAAAAAAAAAAAAAA */
}
enum TestNestedFormatFail {
2017-08-11 03:54:20 -05:00
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA,
}
}
}
2015-10-18 17:25:38 -05:00
pub struct EmtpyWithComment {
// FIXME: Implement this struct
}
// #1115
pub enum Bencoding<'i> {
Str(&'i [u8]),
Int(i64),
List(Vec<Bencoding<'i>>),
/// A bencoded dict value. The first element the slice of bytes in the
/// source that the dict is
/// composed of. The second is the dict, decoded into an ordered map.
// TODO make Dict "structlike" AKA name the two values.
Dict(&'i [u8], BTreeMap<&'i [u8], Bencoding<'i>>),
}
// #1261
pub enum CoreResourceMsg {
2017-06-11 23:01:41 -05:00
SetCookieForUrl(
ServoUrl,
#[serde(deserialize_with = "::hyper_serde::deserialize",
serialize_with = "::hyper_serde::serialize")]
Cookie,
CookieSource,
2017-06-11 23:01:41 -05:00
),
}
2017-07-25 04:51:29 -05:00
enum Loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong
{}
enum Looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong
{}
enum Loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong
{}
enum Loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong
{
Foo,
}
2017-08-11 03:54:20 -05:00
// #1046
pub enum Entry<'a, K: 'a, V: 'a> {
Vacant(
#[stable(feature = "rust1", since = "1.0.0")] VacantEntry<'a, K, V>,
),
Occupied(
#[stable(feature = "rust1", since = "1.0.0")] OccupiedEntry<'a, K, V>,
),
}