4 clippy::needless_pass_by_value,
5 clippy::disallowed_names,
9 use std::collections::{BTreeMap, BTreeSet, BinaryHeap, HashMap, HashSet, LinkedList, VecDeque};
12 ($init:expr, $x:ty) => {
13 let _: Box<$x> = Box::new($init);
18 boxit!(vec![1], Vec<u8>);
21 fn test1(foo: Box<Vec<bool>>) {}
23 fn test2(foo: Box<dyn Fn(Vec<u32>)>) {
24 // pass if #31 is fixed
28 fn test3(foo: Box<String>) {}
30 fn test4(foo: Box<HashMap<String, String>>) {}
32 fn test5(foo: Box<HashSet<i64>>) {}
34 fn test6(foo: Box<VecDeque<i32>>) {}
36 fn test7(foo: Box<LinkedList<i16>>) {}
38 fn test8(foo: Box<BTreeMap<i8, String>>) {}
40 fn test9(foo: Box<BTreeSet<u64>>) {}
42 fn test10(foo: Box<BinaryHeap<u32>>) {}
44 fn test_local_not_linted() {
45 let _: Box<Vec<bool>>;
48 // All of these test should be allowed because they are part of the
49 // public api and `avoid_breaking_exported_api` is `false` by default.
50 pub fn pub_test(foo: Box<Vec<bool>>) {}
52 pub fn pub_test_ret() -> Box<Vec<bool>> {