PluralRule16   A
last analyzed

Complexity

Total Complexity 25

Size/Duplication

Total Lines 13
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Test Coverage

Coverage 100%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 25
c 1
b 0
f 0
lcom 0
cbo 0
dl 0
loc 13
ccs 6
cts 6
cp 1
rs 10

3 Methods

Rating   Name   Duplication   Size   Complexity  
F getPlural() 0 3 23
A getPluralForm() 0 3 1
A getPluralsCount() 0 3 1
1
<?php
2
namespace l10n\Plural;
3
4
/**
5
 * @link https://developer.mozilla.org/en-US/docs/Mozilla/Localization/Localization_and_Plurals#List_of_Plural_Rules
6
 */
7
class PluralRule16 implements IPlural {
8 718
	final public function getPlural($n = 1) {
9 718
		return $n % 10 == 1 && $n % 100 != 11 && $n % 100 != 71 && $n % 100 != 91 ? 0 : ($n % 10 == 2 && $n % 100 != 12 && $n % 100 != 72 && $n % 100 != 92 ? 1 : (($n % 10 == 3 || $n % 10 == 4 || $n % 10 == 9) && $n % 100 != 13 && $n % 100 != 14 && $n % 100 != 19 && $n % 100 != 73 && $n % 100 != 74 && $n % 100 != 79 && $n % 100 != 93 && $n % 100 != 94 && $n % 100 != 99 ? 2 : ($n % 1000000 == 0 && $n != 0 ? 3 : 4)));
10
	}
11
12 361
	final public function getPluralForm() {
13 361
		return 'nplurals=5; plural=n%10==1&&n%100!=11&&n%100!=71&&n%100!=91?0:(n%10==2&&n%100!=12&&n%100!=72&&n%100!=92?1:((n%10==3||n%10==4||n%10==9)&&n%100!=13&&n%100!=14&&n%100!=19&&n%100!=73&&n%100!=74&&n%100!=79&&n%100!=93&&n%100!=94&&n%100!=99?2:(n%1000000==0&&n!=0?3:4)));';
14
	}
15
16 2
	final public function getPluralsCount() {
17 2
		return 5;
18
	}
19
}
20