1- use std:: { hash :: BuildHasherDefault , path:: PathBuf } ;
1+ use std:: path:: PathBuf ;
22
3- use indexmap:: IndexMap ;
4- use rustc_hash:: { FxHashMap , FxHashSet , FxHasher } ;
3+ use rustc_hash:: { FxHashMap , FxHashSet } ;
54use serde:: { Deserialize , de:: Deserializer } ;
65
76use crate :: util:: { RegexDef , Trie } ;
@@ -49,8 +48,7 @@ pub struct Manifest {
4948 // }]
5049 // ]
5150 #[ serde( deserialize_with = "deserialize_package_registry_data" ) ]
52- pub package_registry_data :
53- FxHashMap < String , IndexMap < String , PackageInformation , BuildHasherDefault < FxHasher > > > ,
51+ pub package_registry_data : FxHashMap < String , FxHashMap < String , PackageInformation > > ,
5452}
5553
5654#[ derive( Clone , Debug , Default , Eq , PartialEq , Hash , Deserialize ) ]
@@ -110,13 +108,9 @@ where
110108 Ok ( map)
111109}
112110
113- #[ expect( clippy:: type_complexity) ]
114111fn deserialize_package_registry_data < ' de , D > (
115112 deserializer : D ,
116- ) -> Result <
117- FxHashMap < String , IndexMap < String , PackageInformation , BuildHasherDefault < FxHasher > > > ,
118- D :: Error ,
119- >
113+ ) -> Result < FxHashMap < String , FxHashMap < String , PackageInformation > > , D :: Error >
120114where
121115 D : Deserializer < ' de > ,
122116{
@@ -126,7 +120,7 @@ where
126120 let mut map = FxHashMap :: default ( ) ;
127121 for item in Vec :: < Item > :: deserialize ( deserializer) ? {
128122 let key = item. 0 . unwrap_or_else ( || "" . to_string ( ) ) ;
129- let value = IndexMap :: from_iter (
123+ let value = FxHashMap :: from_iter (
130124 item. 1 . into_iter ( ) . map ( |( k, v) | ( k. unwrap_or_else ( || "" . to_string ( ) ) , v) ) ,
131125 ) ;
132126 map. insert ( key, value) ;
0 commit comments