MediaWiki  master
IcuCollation Class Reference
Inheritance diagram for IcuCollation:
Collaboration diagram for IcuCollation:

Public Member Functions

 __construct (LanguageFactory $languageFactory, $locale)
 
 getFirstLetter ( $string)
 Given a string, return the logical "first letter" to be used for grouping on category pages and so on. More...
 
 getSortKey ( $string)
 Given a string, convert it to a (hopefully short) key that can be used for efficient sorting. More...
 
- Public Member Functions inherited from Collation
 getSortKeys ( $strings)
 Get multiple sort keys. More...
 

Static Public Member Functions

static getUnicodeVersionForICU ()
 Return the version of Unicode appropriate for the version of ICU library currently in use, or false when it can't be determined. More...
 
static isCjk ( $codepoint)
 Test if a code point is a CJK (Chinese, Japanese, Korean) character. More...
 

Protected Attributes

Language $digitTransformLanguage
 

Detailed Description

Since
1.16.3

Definition at line 26 of file IcuCollation.php.

Constructor & Destructor Documentation

◆ __construct()

IcuCollation::__construct ( LanguageFactory  $languageFactory,
  $locale 
)
Parameters
LanguageFactory$languageFactory
string$locale

Definition at line 248 of file IcuCollation.php.

References MediaWiki\Languages\LanguageFactory\getLanguage().

Member Function Documentation

◆ getFirstLetter()

IcuCollation::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 ==

  • [[Aardvark]]

== a ==

  • [[antelope]]

== A ==

  • [[Ape]]

etc., assuming for the sake of argument that $wgCapitalLinks is false.

Since
1.16.3
Parameters
string$stringUTF-8 string
Returns
string UTF-8 string corresponding to the first letter of input

Reimplemented from Collation.

Definition at line 281 of file IcuCollation.php.

References $keys, ArrayUtils\findLowerBound(), and wfMessage().

◆ getSortKey()

IcuCollation::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).

Since
1.16.3
Parameters
string$stringUTF-8 string
Returns
string Binary sortkey

Reimplemented from Collation.

Definition at line 277 of file IcuCollation.php.

◆ getUnicodeVersionForICU()

static IcuCollation::getUnicodeVersionForICU ( )
static

Return the version of Unicode appropriate for the version of ICU library currently in use, or false when it can't be determined.

Since
1.21
Returns
string|bool

Definition at line 495 of file IcuCollation.php.

Referenced by GenerateCollationData\execute().

◆ isCjk()

static IcuCollation::isCjk (   $codepoint)
static

Test if a code point is a CJK (Chinese, Japanese, Korean) character.

Parameters
int$codepoint
Returns
bool
Since
1.16.3

Definition at line 479 of file IcuCollation.php.

Member Data Documentation

◆ $digitTransformLanguage

Language IcuCollation::$digitTransformLanguage
protected

Definition at line 39 of file IcuCollation.php.


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