#![warn(clippy::rc_mutex)] #![allow(unused, clippy::blacklisted_name)] use std::rc::Rc; use std::sync::Mutex; pub struct MyStructWithPrivItem { foo: Rc>, } pub struct MyStructWithPubItem { pub foo: Rc>, } pub struct SubT { foo: T, } pub enum MyEnum { One, Two, } // All of these test should be trigger the lint because they are not // part of the public api fn test1(foo: Rc>) {} fn test2(foo: Rc>) {} fn test3(foo: Rc>>) {} // All of these test should be allowed because they are part of the // public api and `avoid_breaking_exported_api` is `false` by default. pub fn pub_test1(foo: Rc>) {} pub fn pub_test2(foo: Rc>) {} pub fn pub_test3(foo: Rc>>) {} fn main() {}