MediaWiki REL1_37
SearchExactMatchRescorer Class Reference

An utility class to rescore search results by looking for an exact match in the db and add the page found to the first position. More...

Public Member Functions

 rescore ( $search, $namespaces, $srchres, $limit)
 Default search backend does proper prefix searching, but custom backends may sort based on other algorithms that may cause the exact title match to not be in the results or be lower down the list.
 

Private Member Functions

 getRedirectTarget ( $title)
 Get a redirect's destination from a title.
 
 pullFront ( $key, array $array)
 Returns an array where the element of $array at index $key becomes the first element.
 
 redirectTargetsToRedirect (array $titles)
 

Detailed Description

An utility class to rescore search results by looking for an exact match in the db and add the page found to the first position.

NOTE: extracted from TitlePrefixSearch

Definition at line 33 of file SearchExactMatchRescorer.php.

Member Function Documentation

◆ getRedirectTarget()

SearchExactMatchRescorer::getRedirectTarget (   $title)
private

Get a redirect's destination from a title.

Parameters
Title$titleA title to redirect. It may not redirect or even exist
Returns
null|string If title exists and redirects, get the destination's prefixed name

Definition at line 139 of file SearchExactMatchRescorer.php.

References $title.

Referenced by redirectTargetsToRedirect(), and rescore().

◆ pullFront()

SearchExactMatchRescorer::pullFront (   $key,
array  $array 
)
private

Returns an array where the element of $array at index $key becomes the first element.

Parameters
int$keykey to pull to the front
array$array
Returns
array $array with the item at $key pulled to the front

Definition at line 128 of file SearchExactMatchRescorer.php.

Referenced by rescore().

◆ redirectTargetsToRedirect()

SearchExactMatchRescorer::redirectTargetsToRedirect ( array  $titles)
private
Parameters
string[]$titles
Returns
array redirect target prefixedText to index of title in titles that is a redirect to it.

Definition at line 105 of file SearchExactMatchRescorer.php.

References $title, and getRedirectTarget().

Referenced by rescore().

◆ rescore()

SearchExactMatchRescorer::rescore (   $search,
  $namespaces,
  $srchres,
  $limit 
)

Default search backend does proper prefix searching, but custom backends may sort based on other algorithms that may cause the exact title match to not be in the results or be lower down the list.

Parameters
string$searchthe query
int[]$namespaces
string[]$srchresresults
int$limitthe max number of results to return
Returns
string[] munged results

Definition at line 44 of file SearchExactMatchRescorer.php.

References $t, getRedirectTarget(), NS_MAIN, pullFront(), and redirectTargetsToRedirect().


The documentation for this class was generated from the following file: