|
@@ 4813-4825 (lines=13) @@
|
| 4810 |
|
* @since 1.20 |
| 4811 |
|
* @return array Associative array with plural form, and plural rule as key-value pairs |
| 4812 |
|
*/ |
| 4813 |
|
public function getCompiledPluralRules() { |
| 4814 |
|
$pluralRules = self::$dataCache->getItem( strtolower( $this->mCode ), 'compiledPluralRules' ); |
| 4815 |
|
$fallbacks = Language::getFallbacksFor( $this->mCode ); |
| 4816 |
|
if ( !$pluralRules ) { |
| 4817 |
|
foreach ( $fallbacks as $fallbackCode ) { |
| 4818 |
|
$pluralRules = self::$dataCache->getItem( strtolower( $fallbackCode ), 'compiledPluralRules' ); |
| 4819 |
|
if ( $pluralRules ) { |
| 4820 |
|
break; |
| 4821 |
|
} |
| 4822 |
|
} |
| 4823 |
|
} |
| 4824 |
|
return $pluralRules; |
| 4825 |
|
} |
| 4826 |
|
|
| 4827 |
|
/** |
| 4828 |
|
* Get the plural rules for the language |
|
@@ 4832-4844 (lines=13) @@
|
| 4829 |
|
* @since 1.20 |
| 4830 |
|
* @return array Associative array with plural form number and plural rule as key-value pairs |
| 4831 |
|
*/ |
| 4832 |
|
public function getPluralRules() { |
| 4833 |
|
$pluralRules = self::$dataCache->getItem( strtolower( $this->mCode ), 'pluralRules' ); |
| 4834 |
|
$fallbacks = Language::getFallbacksFor( $this->mCode ); |
| 4835 |
|
if ( !$pluralRules ) { |
| 4836 |
|
foreach ( $fallbacks as $fallbackCode ) { |
| 4837 |
|
$pluralRules = self::$dataCache->getItem( strtolower( $fallbackCode ), 'pluralRules' ); |
| 4838 |
|
if ( $pluralRules ) { |
| 4839 |
|
break; |
| 4840 |
|
} |
| 4841 |
|
} |
| 4842 |
|
} |
| 4843 |
|
return $pluralRules; |
| 4844 |
|
} |
| 4845 |
|
|
| 4846 |
|
/** |
| 4847 |
|
* Get the plural rule types for the language |
|
@@ 4851-4863 (lines=13) @@
|
| 4848 |
|
* @since 1.22 |
| 4849 |
|
* @return array Associative array with plural form number and plural rule type as key-value pairs |
| 4850 |
|
*/ |
| 4851 |
|
public function getPluralRuleTypes() { |
| 4852 |
|
$pluralRuleTypes = self::$dataCache->getItem( strtolower( $this->mCode ), 'pluralRuleTypes' ); |
| 4853 |
|
$fallbacks = Language::getFallbacksFor( $this->mCode ); |
| 4854 |
|
if ( !$pluralRuleTypes ) { |
| 4855 |
|
foreach ( $fallbacks as $fallbackCode ) { |
| 4856 |
|
$pluralRuleTypes = self::$dataCache->getItem( strtolower( $fallbackCode ), 'pluralRuleTypes' ); |
| 4857 |
|
if ( $pluralRuleTypes ) { |
| 4858 |
|
break; |
| 4859 |
|
} |
| 4860 |
|
} |
| 4861 |
|
} |
| 4862 |
|
return $pluralRuleTypes; |
| 4863 |
|
} |
| 4864 |
|
|
| 4865 |
|
/** |
| 4866 |
|
* Find the index number of the plural rule appropriate for the given number |