/*______________
| ______ | U I Z E J A V A S C R I P T F R A M E W O R K
| / / | ---------------------------------------------------
| / O / | MODULE : Uize.Loc.Plurals.Langs.gd Package
| / / / |
| / / / /| | ONLINE : http://uize.com
| /____/ /__/_| | COPYRIGHT : (c)2015-2016 UIZE
| /___ | LICENSE : Available under MIT License or GNU General Public License
|_______________| http://uize.com/license.html
*/
/* Module Meta Data
type: Package
importance: 1
codeCompleteness: 100
docCompleteness: 100
*/
/*?
Introduction
The =Uize.Loc.Plurals.Langs.gd= module implements a feature for determining a plural category from a number value for the gd language.
*DEVELOPERS:* `Chris van Rensburg`
Plural Categories
........................................................
<< table >>
title: Plural Categories
data:
:| Category | Rule |
:| one | n = 1,11 @integer 1, 11 @decimal 1.0, 11.0, 1.00, 11.00, 1.000, 11.000, 1.0000 |
:| two | n = 2,12 @integer 2, 12 @decimal 2.0, 12.0, 2.00, 12.00, 2.000, 12.000, 2.0000 |
:| few | n = 3..10,13..19 @integer 3~10, 13~19 @decimal 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 3.00 |
:| other | @integer 0, 20~34, 100, 1000, 10000, 100000, 1000000, … @decimal 0.0~0.9, 1.1~1.6, 10.1, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, … |
........................................................
*/
Uize.module ({
name:'Uize.Loc.Plurals.Langs.gd',
required:'Uize.Loc.Plurals.Util',
builder:function () {
'use strict';
return Uize.package ({
getPluralCategory:function (_value) {
return Uize.Loc.Plurals.Util.getPluralCategory (
_value,
function (n,i,f,t,v,w,within) {
return within (n,[1,11]) ? 'one' : within (n,[2,12]) ? 'two' : within (n,[[3,10],[13,19]]) ? 'few' : 'other';
}
);
}
});
}
});