MediaWiki REL1_28
Collation Class Reference
Inheritance diagram for Collation:

Public Member Functions

 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.
 

Static Public Member Functions

static factory ( $collationName)
 
static singleton ()
 

Static Private Attributes

static $instance
 

Detailed Description

Since
1.16.3
Author
Tim Starling

Definition at line 27 of file Collation.php.

Member Function Documentation

◆ factory()

static Collation::factory (   $collationName)
static
Since
1.16.3
Exceptions
MWException
Parameters
string$collationName
Returns
Collation

Definition at line 48 of file Collation.php.

Referenced by UpdateCollation\execute(), singleton(), and CollationTest\testGetFirstLetter().

◆ getFirstLetter()

Collation::getFirstLetter (   $string)
abstract

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 in CollationEt, IcuCollation, IdentityCollation, NumericUppercaseCollation, and UppercaseCollation.

◆ getSortKey()

Collation::getSortKey (   $string)
abstract

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 in CollationEt, IcuCollation, IdentityCollation, NumericUppercaseCollation, and UppercaseCollation.

◆ singleton()

static Collation::singleton ( )
static

Member Data Documentation

◆ $instance

Collation::$instance
staticprivate

Definition at line 28 of file Collation.php.

Referenced by singleton().


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