// rustfmt-normalize_comments: true impl Foo for Bar { fn foo() { "hi" } } pub impl Foo for Bar { // Associated Constants const Baz: i32 = 16; // Associated Types type FooBar = usize; // Comment 1 fn foo() { "hi" } // Comment 2 fn foo() { "hi" } // Comment 3 } pub unsafe impl<'a, 'b, X, Y: Foo> !Foo<'a, X> for Bar<'b, Y> where X: Foo<'a, Z>, { fn foo() { "hi" } } impl<'a, 'b, X, Y: Foo> Foo<'a, X> for Bar<'b, Y> where X: Fooooooooooooooooooooooooooooo<'a, Z>, { fn foo() { "hi" } } impl<'a, 'b, X, Y: Foo> Foo<'a, X> for Bar<'b, Y> where X: Foooooooooooooooooooooooooooo<'a, Z>, { fn foo() { "hi" } } impl Foo for Bar where T: Baz, { } impl Foo for Bar where T: Baz, { // Comment } impl Foo { fn foo() {} } impl Boo { // BOO fn boo() {} // FOO } mod a { impl Foo { // Hello! fn foo() {} } } mod b { mod a { impl Foo { fn foo() {} } } } impl Foo { add_fun!(); } impl Blah { fn boop() {} add_fun!(); } impl X { fn do_parse(mut self: X) {} } impl Y5000 { fn bar(self: X<'a, 'b>, y: Y) {} fn bad(&self, (x, y): CoorT) {} fn turbo_bad(self: X<'a, 'b>, (x, y): CoorT) {} } pub impl Foo for Bar where T: Foo, { fn foo() { "hi" } } pub impl Foo for Bar where T: Foo, Z: Baz, { } mod m { impl PartialEq for S where T: PartialEq, { fn eq(&self, other: &Self) { true } } impl PartialEq for S where T: PartialEq, { } } impl Handle, HandleType> { } impl PartialEq for Handle, HandleType> { } mod x { impl Foo where A: 'static, B: 'static, C: 'static, D: 'static, { } } impl Issue1249 { // Creates a new flow constructor. fn foo() {} } // #1600 impl<#[may_dangle] K, #[may_dangle] V> Drop for RawTable { fn drop() {} } // #1168 pub trait Number: Copy + Eq + Not + Shl + Shr + BitAnd + BitOr + BitAndAssign + BitOrAssign { // test fn zero() -> Self; } // #1642 pub trait SomeTrait: Clone + Eq + PartialEq + Ord + PartialOrd + Default + Hash + Debug + Display + Write + Read + FromStr { // comment } // #1995 impl Foo { fn f( S { aaaaaaaaaa: aaaaaaaaaa, bbbbbbbbbb: bbbbbbbbbb, cccccccccc: cccccccccc, }: S, ) -> u32 { 1 } } // #2491 impl<'a, 'b, 'c> SomeThing for ( &'a mut SomethingLong, &'b mut SomethingLong, &'c mut SomethingLong, ) { fn foo() {} }