#![allow(unused)] #![warn(clippy::partial_pub_fields)] fn main() { use std::collections::HashMap; #[derive(Default)] pub struct FileSet { files: HashMap<String, u32>, pub paths: HashMap<u32, String>, //~^ ERROR: mixed usage of pub and non-pub fields } pub struct Color { pub r: u8, pub g: u8, b: u8, //~^ ERROR: mixed usage of pub and non-pub fields } pub struct Point(i32, pub i32); //~^ ERROR: mixed usage of pub and non-pub fields pub struct Visibility { r#pub: bool, pub pos: u32, //~^ ERROR: mixed usage of pub and non-pub fields } // Don't lint on empty structs; pub struct Empty1; pub struct Empty2(); pub struct Empty3 {}; // Don't lint on structs with one field. pub struct Single1(i32); pub struct Single2(pub i32); pub struct Single3 { v1: i32, } pub struct Single4 { pub v1: i32, } }