@@ -191,7 +191,7 @@ function initSearch(rawSearchIndex) {
191191 */
192192 let searchIndex ;
193193 let currentResults ;
194- const ALIASES = Object . create ( null ) ;
194+ const ALIASES = new Map ( ) ;
195195
196196 function isWhitespace ( c ) {
197197 return " \t\n\r" . indexOf ( c ) !== - 1 ;
@@ -1424,22 +1424,22 @@ function initSearch(rawSearchIndex) {
14241424 const aliases = [ ] ;
14251425 const crateAliases = [ ] ;
14261426 if ( filterCrates !== null ) {
1427- if ( ALIASES [ filterCrates ] && ALIASES [ filterCrates ] [ lowerQuery ] ) {
1428- const query_aliases = ALIASES [ filterCrates ] [ lowerQuery ] ;
1427+ if ( ALIASES . has ( filterCrates ) && ALIASES . get ( filterCrates ) . has ( lowerQuery ) ) {
1428+ const query_aliases = ALIASES . get ( filterCrates ) . get ( lowerQuery ) ;
14291429 for ( const alias of query_aliases ) {
14301430 aliases . push ( createAliasFromItem ( searchIndex [ alias ] ) ) ;
14311431 }
14321432 }
14331433 } else {
1434- Object . keys ( ALIASES ) . forEach ( crate => {
1435- if ( ALIASES [ crate ] [ lowerQuery ] ) {
1434+ for ( const [ crate , crateAliasesIndex ] of ALIASES ) {
1435+ if ( crateAliasesIndex . has ( lowerQuery ) ) {
14361436 const pushTo = crate === currentCrate ? crateAliases : aliases ;
1437- const query_aliases = ALIASES [ crate ] [ lowerQuery ] ;
1437+ const query_aliases = crateAliasesIndex . get ( lowerQuery ) ;
14381438 for ( const alias of query_aliases ) {
14391439 pushTo . push ( createAliasFromItem ( searchIndex [ alias ] ) ) ;
14401440 }
14411441 }
1442- } ) ;
1442+ }
14431443 }
14441444
14451445 const sortFunc = ( aaa , bbb ) => {
@@ -2345,17 +2345,22 @@ function initSearch(rawSearchIndex) {
23452345 }
23462346
23472347 if ( aliases ) {
2348- ALIASES [ crate ] = Object . create ( null ) ;
2348+ const currentCrateAliases = new Map ( ) ;
2349+ ALIASES . set ( crate , currentCrateAliases ) ;
23492350 for ( const alias_name in aliases ) {
23502351 if ( ! hasOwnPropertyRustdoc ( aliases , alias_name ) ) {
23512352 continue ;
23522353 }
23532354
2354- if ( ! hasOwnPropertyRustdoc ( ALIASES [ crate ] , alias_name ) ) {
2355- ALIASES [ crate ] [ alias_name ] = [ ] ;
2355+ let currentNameAliases ;
2356+ if ( currentCrateAliases . has ( alias_name ) ) {
2357+ currentNameAliases = currentCrateAliases . get ( alias_name ) ;
2358+ } else {
2359+ currentNameAliases = [ ] ;
2360+ currentCrateAliases . set ( alias_name , currentNameAliases ) ;
23562361 }
23572362 for ( const local_alias of aliases [ alias_name ] ) {
2358- ALIASES [ crate ] [ alias_name ] . push ( local_alias + currentIndex ) ;
2363+ currentNameAliases . push ( local_alias + currentIndex ) ;
23592364 }
23602365 }
23612366 }
0 commit comments