MediaWiki master
|
An ICU collation that uses a remote server to compute sort keys. More...
Inherits Collation.
Public Member Functions | |
__construct (ShellboxClientFactory $shellboxClientFactory, string $locale) | |
getFirstLetter ( $string) | |
Given a string, return the logical "first letter" to be used for grouping on category pages and so on. | |
getSortKey ( $string) | |
Given a string, convert it to a (hopefully short) key that can be used for efficient sorting. | |
getSortKeys ( $strings) | |
Get multiple sort keys. | |
Static Public Member Functions | |
static | doGetSortKeys ( $locale, $blob) |
The remote entry point. | |
An ICU collation that uses a remote server to compute sort keys.
This can be used in conjunction with $wgTempCategoryCollations to migrate to a different version of ICU.
Definition at line 11 of file RemoteIcuCollation.php.
RemoteIcuCollation::__construct | ( | ShellboxClientFactory | $shellboxClientFactory, |
string | $locale ) |
Definition at line 15 of file RemoteIcuCollation.php.
References MediaWiki\Shell\ShellboxClientFactory\getRpcClient().
|
static |
The remote entry point.
Get sort keys for an encoded list of inputs.
string | $locale | The ICU locale |
string | $blob | The input array encoded with encode() |
Definition at line 91 of file RemoteIcuCollation.php.
RemoteIcuCollation::getFirstLetter | ( | $string | ) |
Given a string, return the logical "first letter" to be used for grouping on category pages and so on.
This has to be coordinated carefully with convertToSortkey(), or else the sorted list might jump back and forth between the same "initial letters" or other pathological behavior. For instance, if you just return the first character, but "a" sorts the same as "A" based on getSortKey(), then you might get a list like
== A ==
== a ==
== A ==
etc., assuming for the sake of argument that $wgCapitalLinks is false.
string | $string | UTF-8 string |
Reimplemented from Collation.
Definition at line 79 of file RemoteIcuCollation.php.
RemoteIcuCollation::getSortKey | ( | $string | ) |
Given a string, convert it to a (hopefully short) key that can be used for efficient sorting.
A binary sort according to the sortkeys corresponds to a logical sort of the corresponding strings. Current code expects that a line feed character should sort before all others, but has no other particular expectations (and that one can be changed if necessary).
string | $string | UTF-8 string |
Reimplemented from Collation.
Definition at line 21 of file RemoteIcuCollation.php.
References getSortKeys().
RemoteIcuCollation::getSortKeys | ( | $strings | ) |
Get multiple sort keys.
string[] | $strings |
Reimplemented from Collation.
Definition at line 57 of file RemoteIcuCollation.php.
Referenced by getSortKey().