summaryrefslogtreecommitdiffstats
path: root/src/tools/rustfmt/tests/source/enum.rs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:02:58 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:02:58 +0000
commit698f8c2f01ea549d77d7dc3338a12e04c11057b9 (patch)
tree173a775858bd501c378080a10dca74132f05bc50 /src/tools/rustfmt/tests/source/enum.rs
parentInitial commit. (diff)
downloadrustc-698f8c2f01ea549d77d7dc3338a12e04c11057b9.tar.xz
rustc-698f8c2f01ea549d77d7dc3338a12e04c11057b9.zip
Adding upstream version 1.64.0+dfsg1.upstream/1.64.0+dfsg1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/tools/rustfmt/tests/source/enum.rs')
-rw-r--r--src/tools/rustfmt/tests/source/enum.rs212
1 files changed, 212 insertions, 0 deletions
diff --git a/src/tools/rustfmt/tests/source/enum.rs b/src/tools/rustfmt/tests/source/enum.rs
new file mode 100644
index 000000000..0ed9651ab
--- /dev/null
+++ b/src/tools/rustfmt/tests/source/enum.rs
@@ -0,0 +1,212 @@
+// rustfmt-wrap_comments: true
+// Enums test
+
+#[atrr]
+pub enum Test {
+ A, B(u32,
+ A /* comment */,
+ SomeType),
+ /// Doc comment
+ C,
+}
+
+pub enum Foo<'a, Y: Baz> where X: Whatever
+{ A, }
+
+enum EmtpyWithComment {
+ // Some comment
+}
+
+// C-style enum
+enum Bar {
+ A = 1,
+ #[someAttr(test)]
+ B = 2, // comment
+ C,
+}
+
+enum LongVariants {
+First(LOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONG, // comment
+VARIANT),
+ // This is the second variant
+ Second
+}
+
+enum StructLikeVariants {
+ Normal(u32, String, ),
+ StructLike { x: i32, // Test comment
+ // Pre-comment
+ #[Attr50] y: SomeType, // Aanother Comment
+ }, SL { a: A }
+}
+
+enum X {
+ CreateWebGLPaintTask(Size2D<i32>, GLContextAttributes, IpcSender<Result<(IpcSender<CanvasMsg>, usize), String>>), // 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>
+where I: Iterator<Item = T> {
+ // Pre Comment
+ Left {list: I, root: T}, // Post-comment
+ Right {list: I, root: T} // Post Comment
+}
+
+
+enum EmtpyWithComment {
+ // Some comment
+}
+
+enum TestFormatFails {
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+}
+
+fn nested_enum_test() {
+ if true {
+ enum TestEnum {
+ One(usize, usize, usize, usize, usize, usize, usize, usize, usize, usize, usize, usize, usize, usize, usize, usize,), // AAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAA
+ Two // AAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAA
+ }
+ enum TestNestedFormatFail {
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ }
+ }
+}
+
+ 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 {
+ SetCookieForUrl(
+ ServoUrl,
+ #[serde(deserialize_with = "::hyper_serde::deserialize",
+ serialize_with = "::hyper_serde::serialize")]
+ Cookie,
+ CookieSource
+ ),
+}
+
+enum Loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong {}
+enum Looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong {}
+enum Loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong {}
+enum Loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong { Foo }
+
+// #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>,
+ ),
+}
+
+// #2081
+pub enum ForegroundColor {
+ CYAN = (winapi::FOREGROUND_INTENSITY | winapi::FOREGROUND_GREEN | winapi::FOREGROUND_BLUE) as u16,
+}
+
+// #2098
+pub enum E<'a> {
+ V ( < std::slice::Iter<'a, Xxxxxxxxxxxxxx> as Iterator> :: Item ) ,
+}
+
+// #1809
+enum State {
+ TryRecv {
+ pos: usize,
+ lap: u8,
+ closed_count: usize,
+ },
+ Subscribe { pos: usize },
+ IsReady { pos: usize, ready: bool },
+ Unsubscribe {
+ pos: usize,
+ lap: u8,
+ id_woken: usize,
+ },
+ FinalTryRecv { pos: usize, id_woken: usize },
+ TimedOut,
+ Disconnected,
+}
+
+// #2190
+#[derive(Debug, Fail)]
+enum AnError {
+ #[fail(display = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")]
+ UnexpectedSingleToken { token: syn::Token },
+}
+
+// #2193
+enum WidthOf101 {
+ #[fail(display = ".....................................................")] Io(::std::io::Error),
+ #[fail(display = ".....................................................")] Ioo(::std::io::Error),
+ Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx(::std::io::Error),
+ Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx(::std::io::Error),
+}
+
+// #2389
+pub enum QlError {
+ #[fail(display = "Parsing error: {}", 0)] LexError(parser::lexer::LexError),
+ #[fail(display = "Parsing error: {:?}", 0)] ParseError(parser::ParseError),
+ #[fail(display = "Validation error: {:?}", 0)] ValidationError(Vec<validation::Error>),
+ #[fail(display = "Execution error: {}", 0)] ExecutionError(String),
+ // (from, to)
+ #[fail(display = "Translation error: from {} to {}", 0, 1)] TranslationError(String, String),
+ // (kind, input, expected)
+ #[fail(display = "aaaaaaaaaaaaCould not find {}: Found: {}, expected: {:?}", 0, 1, 2)] ResolveError(&'static str, String, Option<String>),
+}
+
+// #2594
+enum Foo {}
+enum Bar { }
+
+// #3562
+enum PublishedFileVisibility {
+ Public = sys::ERemoteStoragePublishedFileVisibility_k_ERemoteStoragePublishedFileVisibilityPublic,
+ FriendsOnly = sys::ERemoteStoragePublishedFileVisibility_k_ERemoteStoragePublishedFileVisibilityFriendsOnly,
+ Private = sys::ERemoteStoragePublishedFileVisibility_k_ERemoteStoragePublishedFileVisibilityPrivate,
+}
+
+// #3771
+//#![feature(arbitrary_enum_discriminant)]
+#[repr(u32)]
+pub enum E {
+ A { a: u32 } = 0x100,
+ B { field1: u32, field2: u8, field3: m::M } = 0x300 // comment
+}