| // rustfmt-wrap_comments: true |
| // Test attributes and doc comments are preserved. |
| #![doc( |
| html_logo_url = "https://www.rust-lang.org/logos/rust-logo-128x128-blk-v2.png", |
| html_favicon_url = "https://doc.rust-lang.org/favicon.ico", |
| html_root_url = "https://doc.rust-lang.org/nightly/", |
| html_playground_url = "https://play.rust-lang.org/", |
| test(attr(deny(warnings))) |
| )] |
| |
| //! Doc comment |
| |
| #![attribute] |
| |
| //! Crate doc comment |
| |
| // Comment |
| |
| // Comment on attribute |
| #![the(attribute)] |
| |
| // Another comment |
| |
| /// Blah blah blah. |
| /// Blah blah blah. |
| /// Blah blah blah. |
| /// Blah blah blah. |
| |
| /// Blah blah blah. |
| impl Bar { |
| /// Blah blah blooo. |
| /// Blah blah blooo. |
| /// Blah blah blooo. |
| /// Blah blah blooo. |
| #[an_attribute] |
| #[doc = "an attribute that shouldn't be normalized to a doc comment"] |
| fn foo(&mut self) -> isize {} |
| |
| /// Blah blah bing. |
| /// Blah blah bing. |
| /// Blah blah bing. |
| |
| /// Blah blah bing. |
| /// Blah blah bing. |
| /// Blah blah bing. |
| pub fn f2(self) { |
| (foo, bar) |
| } |
| |
| #[another_attribute] |
| fn f3(self) -> Dog {} |
| |
| /// Blah blah bing. |
| |
| #[attrib1] |
| /// Blah blah bing. |
| #[attrib2] |
| // Another comment that needs rewrite because it's tooooooooooooooooooooooooooooooo |
| // loooooooooooong. |
| /// Blah blah bing. |
| fn f4(self) -> Cat {} |
| |
| // We want spaces around `=` |
| #[cfg(feature = "nightly")] |
| fn f5(self) -> Monkey {} |
| } |
| |
| // #984 |
| struct Foo { |
| #[derive(Clone, PartialEq, Debug, Deserialize, Serialize)] |
| foo: usize, |
| } |
| |
| // #1668 |
| |
| /// Default path (*nix) |
| #[cfg(all( |
| unix, |
| not(target_os = "macos"), |
| not(target_os = "ios"), |
| not(target_os = "android") |
| ))] |
| fn foo() { |
| #[cfg(target_os = "freertos")] |
| match port_id { |
| 'a' | 'A' => GpioPort { |
| port_address: GPIO_A, |
| }, |
| 'b' | 'B' => GpioPort { |
| port_address: GPIO_B, |
| }, |
| _ => panic!(), |
| } |
| |
| #[cfg_attr(not(target_os = "freertos"), allow(unused_variables))] |
| let x = 3; |
| } |
| |
| // #1777 |
| #[test] |
| #[should_panic(expected = "(")] |
| #[should_panic(expected = /* ( */ "(")] |
| #[should_panic(/* ((((( */expected /* ((((( */= /* ((((( */ "("/* ((((( */)] |
| #[should_panic( |
| /* (((((((( *//* |
| (((((((((()(((((((( */ |
| expected = "(" |
| // (((((((( |
| )] |
| fn foo() {} |
| |
| // #1799 |
| fn issue_1799() { |
| #[allow(unreachable_code)] // https://github.com/rust-lang/rust/issues/43336 |
| Some(Err(error)); |
| |
| #[allow(unreachable_code)] |
| // https://github.com/rust-lang/rust/issues/43336 |
| Some(Err(error)); |
| } |
| |
| // Formatting inner attributes |
| fn inner_attributes() { |
| #![this_is_an_inner_attribute(foo)] |
| |
| foo(); |
| } |
| |
| impl InnerAttributes() { |
| #![this_is_an_inner_attribute(foo)] |
| |
| fn foo() {} |
| } |
| |
| mod InnerAttributes { |
| #![this_is_an_inner_attribute(foo)] |
| } |
| |
| fn attributes_on_statements() { |
| // Local |
| #[attr(on(local))] |
| let x = 3; |
| |
| // Item |
| #[attr(on(item))] |
| use foo; |
| |
| // Expr |
| #[attr(on(expr))] |
| {} |
| |
| // Semi |
| #[attr(on(semi))] |
| foo(); |
| |
| // Mac |
| #[attr(on(mac))] |
| foo!(); |
| } |
| |
| // Large derives |
| #[derive( |
| Add, Sub, Mul, Div, Clone, Copy, Eq, PartialEq, Ord, PartialOrd, Debug, Hash, Serialize, Mul, |
| )] |
| |
| /// Foo bar baz |
| |
| #[derive( |
| Add, |
| Sub, |
| Mul, |
| Div, |
| Clone, |
| Copy, |
| Eq, |
| PartialEq, |
| Ord, |
| PartialOrd, |
| Debug, |
| Hash, |
| Serialize, |
| Deserialize, |
| )] |
| pub struct HP(pub u8); |
| |
| // Long `#[doc = "..."]` |
| struct A { |
| #[doc = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"] |
| b: i32, |
| } |
| |
| // #2647 |
| #[cfg( |
| feature = "this_line_is_101_characters_long_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" |
| )] |
| pub fn foo() {} |
| |
| // path attrs |
| #[clippy::bar] |
| #[clippy::bar(a, b, c)] |
| pub fn foo() {} |
| |
| mod issue_2620 { |
| #[derive(Debug, StructOpt)] |
| #[structopt(about = "Display information about the character on FF Logs")] |
| pub struct Params { |
| #[structopt(help = "The server the character is on")] |
| server: String, |
| #[structopt(help = "The character's first name")] |
| first_name: String, |
| #[structopt(help = "The character's last name")] |
| last_name: String, |
| #[structopt( |
| short = "j", |
| long = "job", |
| help = "The job to look at", |
| parse(try_from_str) |
| )] |
| job: Option<Job>, |
| } |
| } |
| |
| // #2969 |
| #[cfg(not(all( |
| feature = "std", |
| any( |
| target_os = "linux", |
| target_os = "android", |
| target_os = "netbsd", |
| target_os = "dragonfly", |
| target_os = "haiku", |
| target_os = "emscripten", |
| target_os = "solaris", |
| target_os = "cloudabi", |
| target_os = "macos", |
| target_os = "ios", |
| target_os = "freebsd", |
| target_os = "openbsd", |
| target_os = "redox", |
| target_os = "fuchsia", |
| windows, |
| all(target_arch = "wasm32", feature = "stdweb"), |
| all(target_arch = "wasm32", feature = "wasm-bindgen"), |
| ) |
| )))] |
| type Os = NoSource; |
| |
| // #3313 |
| fn stmt_expr_attributes() { |
| let foo; |
| #[must_use] |
| foo = false; |
| } |
| |
| // #3509 |
| fn issue3509() { |
| match MyEnum { |
| MyEnum::Option1 if cfg!(target_os = "windows") => |
| #[cfg(target_os = "windows")] |
| { |
| 1 |
| } |
| } |
| match MyEnum { |
| MyEnum::Option1 if cfg!(target_os = "windows") => |
| { |
| #[cfg(target_os = "windows")] |
| 1 |
| } |
| } |
| } |