File tree Expand file tree Collapse file tree 4 files changed +55
-4
lines changed
src/librustdoc/html/static/js Expand file tree Collapse file tree 4 files changed +55
-4
lines changed Original file line number Diff line number Diff line change @@ -2500,6 +2500,7 @@ class DocSearch {
25002500 const sortResults = async ( results , typeInfo , preferredCrate ) => {
25012501 const userQuery = parsedQuery . userQuery ;
25022502 const normalizedUserQuery = parsedQuery . userQuery . toLowerCase ( ) ;
2503+ const isMixedCase = normalizedUserQuery !== userQuery ;
25032504 const result_list = [ ] ;
25042505 for ( const result of results . values ( ) ) {
25052506 result . item = this . searchIndex [ result . id ] ;
@@ -2511,10 +2512,12 @@ class DocSearch {
25112512 let a , b ;
25122513
25132514 // sort by exact case-sensitive match
2514- a = ( aaa . item . name !== userQuery ) ;
2515- b = ( bbb . item . name !== userQuery ) ;
2516- if ( a !== b ) {
2517- return a - b ;
2515+ if ( isMixedCase ) {
2516+ a = ( aaa . item . name !== userQuery ) ;
2517+ b = ( bbb . item . name !== userQuery ) ;
2518+ if ( a !== b ) {
2519+ return a - b ;
2520+ }
25182521 }
25192522
25202523 // sort by exact match with regard to the last word (mismatch goes later)
Original file line number Diff line number Diff line change 1+ const EXPECTED = [
2+ {
3+ 'query' : 'write' ,
4+ 'others' : [
5+ { 'path' : 'std::fmt' , 'name' : 'write' } ,
6+ { 'path' : 'std::fs' , 'name' : 'write' } ,
7+ { 'path' : 'std::ptr' , 'name' : 'write' } ,
8+ { 'path' : 'std::fmt' , 'name' : 'Write' } ,
9+ { 'path' : 'std::io' , 'name' : 'Write' } ,
10+ { 'path' : 'std::hash::Hasher' , 'name' : 'write' } ,
11+ ] ,
12+ } ,
13+ {
14+ 'query' : 'Write' ,
15+ 'others' : [
16+ { 'path' : 'std::fmt' , 'name' : 'Write' } ,
17+ { 'path' : 'std::io' , 'name' : 'Write' } ,
18+ { 'path' : 'std::fmt' , 'name' : 'write' } ,
19+ { 'path' : 'std::fs' , 'name' : 'write' } ,
20+ { 'path' : 'std::ptr' , 'name' : 'write' } ,
21+ { 'path' : 'std::hash::Hasher' , 'name' : 'write' } ,
22+ ] ,
23+ } ,
24+ ] ;
Original file line number Diff line number Diff line change 1+ const EXPECTED = [
2+ {
3+ 'query' : 'Foo' ,
4+ 'others' : [
5+ { 'path' : 'case' , 'name' : 'Foo' , 'desc' : 'Docs for Foo' } ,
6+ { 'path' : 'case' , 'name' : 'foo' , 'desc' : 'Docs for foo' } ,
7+ ] ,
8+ } ,
9+ {
10+ 'query' : 'foo' ,
11+ 'others' : [
12+ // https://github.com/rust-lang/rust/issues/133017
13+ { 'path' : 'case' , 'name' : 'Foo' , 'desc' : 'Docs for Foo' } ,
14+ { 'path' : 'case' , 'name' : 'foo' , 'desc' : 'Docs for foo' } ,
15+ ] ,
16+ } ,
17+ ] ;
Original file line number Diff line number Diff line change 1+ #![ allow( nonstandard_style) ]
2+
3+ /// Docs for Foo
4+ pub struct Foo ;
5+
6+ /// Docs for foo
7+ pub struct foo ;
You can’t perform that action at this time.
0 commit comments