File Coverage

blib/lib/Locale/CLDR/NumberingSystems.pm
Criterion Covered Total %
statement 40 40 100.0
branch 4 4 100.0
condition 1 2 50.0
subroutine 13 13 100.0
pod 0 1 0.0
total 58 60 96.6


line stmt bran cond sub pod time code
1             package Locale::CLDR::NumberingSystems;
2             # This file auto generated from Data\common\supplemental\numberingSystems.xml
3             # on Sun 16 Dec 4:03:59 pm GMT
4              
5 21     21   12087 use strict;
  21         59  
  21         661  
6 21     21   111 use warnings;
  21         44  
  21         552  
7 21     21   112 use version;
  21         43  
  21         119  
8              
9             our $VERSION = version->declare('v0.34.0');
10              
11 21     21   2183 use v5.10.1;
  21         83  
12 21     21   146 use mro 'c3';
  21         49  
  21         129  
13 21     21   704 use utf8;
  21         51  
  21         155  
14 21     21   945 use if $^V ge v5.12.0, feature => 'unicode_strings';
  21         77  
  21         7350  
15 21     21   2473 use Types::Standard qw( Str Int HashRef ArrayRef CodeRef RegexpRef );
  21         56  
  21         147  
16 21     21   23277 use Moo::Role;
  21         55  
  21         148  
17              
18             has 'numbering_system' => (
19             is => 'ro',
20             isa => HashRef,
21             init_arg => undef,
22             default => sub { return {
23             'adlm' => {
24             type => 'numeric',
25             data => [qw(𞥐 𞥑 𞥒 𞥓 𞥔 𞥕 𞥖 𞥗 𞥘 𞥙)],
26             },
27             'ahom' => {
28             type => 'numeric',
29             data => [qw(𑜰 𑜱 𑜲 𑜳 𑜴 𑜵 𑜶 𑜷 𑜸 𑜹)],
30             },
31             'arab' => {
32             type => 'numeric',
33             data => [qw(Ù  Ù¡ Ù¢ Ù£ Ù¤ Ù¥ Ù¦ Ù§ Ù¨ Ù©)],
34             },
35             'arabext' => {
36             type => 'numeric',
37             data => [qw(Û° Û± Û² Û³ Û´ Ûµ Û¶ Û· Û¸ Û¹)],
38             },
39             'armn' => {
40             type => 'algorithmic',
41             data => 'armenian-upper',
42             },
43             'armnlow' => {
44             type => 'algorithmic',
45             data => 'armenian-lower',
46             },
47             'bali' => {
48             type => 'numeric',
49             data => [qw(᭐ á­‘ á­’ á­“ á­” á­• á­– á­— á­˜ á­™)],
50             },
51             'beng' => {
52             type => 'numeric',
53             data => [qw(০ ১ ২ ৩ ৪ ৫ ৬ ৭ ৮ ৯)],
54             },
55             'bhks' => {
56             type => 'numeric',
57             data => [qw(𑱐 𑱑 𑱒 𑱓 𑱔 𑱕 𑱖 𑱗 𑱘 𑱙)],
58             },
59             'brah' => {
60             type => 'numeric',
61             data => [qw(𑁦 𑁧 𑁨 𑁩 𑁪 𑁫 𑁬 𑁭 𑁮 𑁯)],
62             },
63             'cakm' => {
64             type => 'numeric',
65             data => [qw(𑄶 ð‘„· 𑄸 ð‘„¹ 𑄺 ð‘„» ð‘„¼ ð‘„½ ð‘„¾ ð‘„¿)],
66             },
67             'cham' => {
68             type => 'numeric',
69             data => [qw(꩐ ê©‘ ê©’ ê©“ ê©” ê©• ê©– ê©— ꩘ ê©™)],
70             },
71             'cyrl' => {
72             type => 'algorithmic',
73             data => 'cyrillic-lower',
74             },
75             'deva' => {
76             type => 'numeric',
77             data => [qw(० १ २ ३ ४ ५ ६ ७ ८ ९)],
78             },
79             'ethi' => {
80             type => 'algorithmic',
81             data => 'ethiopic',
82             },
83             'fullwide' => {
84             type => 'numeric',
85             data => [qw(0 1 ï¼’ 3 ï¼” 5 ï¼– ï¼— 8 ï¼™)],
86             },
87             'geor' => {
88             type => 'algorithmic',
89             data => 'georgian',
90             },
91             'gong' => {
92             type => 'numeric',
93             data => [qw(𑶠 𑶡 𑶢 𑶣 𑶤 𑶥 𑶦 𑶧 𑶨 𑶩)],
94             },
95             'gonm' => {
96             type => 'numeric',
97             data => [qw(𑵐 𑵑 𑵒 𑵓 𑵔 𑵕 𑵖 𑵗 𑵘 𑵙)],
98             },
99             'grek' => {
100             type => 'algorithmic',
101             data => 'greek-upper',
102             },
103             'greklow' => {
104             type => 'algorithmic',
105             data => 'greek-lower',
106             },
107             'gujr' => {
108             type => 'numeric',
109             data => [qw(૦ ૧ ૨ à«© ૪ à«« ૬ à«­ à«® ૯)],
110             },
111             'guru' => {
112             type => 'numeric',
113             data => [qw(੦ ੧ ੨ à©© ੪ à©« ੬ à©­ à©® ੯)],
114             },
115             'hanidays' => {
116             type => 'algorithmic',
117             data => 'zh/SpelloutRules/spellout-numbering-days',
118             },
119             'hanidec' => {
120             type => 'numeric',
121             data => [qw(〇 一 二 三 å›› 五 å…­ 七 å…« 九)],
122             },
123             'hans' => {
124             type => 'algorithmic',
125             data => 'zh/SpelloutRules/spellout-cardinal',
126             },
127             'hansfin' => {
128             type => 'algorithmic',
129             data => 'zh/SpelloutRules/spellout-cardinal-financial',
130             },
131             'hant' => {
132             type => 'algorithmic',
133             data => 'zh_Hant/SpelloutRules/spellout-cardinal',
134             },
135             'hantfin' => {
136             type => 'algorithmic',
137             data => 'zh_Hant/SpelloutRules/spellout-cardinal-financial',
138             },
139             'hebr' => {
140             type => 'algorithmic',
141             data => 'hebrew',
142             },
143             'hmng' => {
144             type => 'numeric',
145             data => [qw(𖭐 ð–­‘ ð–­’ ð–­“ ð–­” ð–­• ð–­– ð–­— ð–­˜ ð–­™)],
146             },
147             'java' => {
148             type => 'numeric',
149             data => [qw(꧐ ꧑ ꧒ ꧓ ꧔ ꧕ ꧖ ꧗ ꧘ ꧙)],
150             },
151             'jpan' => {
152             type => 'algorithmic',
153             data => 'ja/SpelloutRules/spellout-cardinal',
154             },
155             'jpanfin' => {
156             type => 'algorithmic',
157             data => 'ja/SpelloutRules/spellout-cardinal-financial',
158             },
159             'kali' => {
160             type => 'numeric',
161             data => [qw(꤀ ꤁ ꤂ ꤃ ꤄ ꤅ ꤆ ꤇ ꤈ ꤉)],
162             },
163             'khmr' => {
164             type => 'numeric',
165             data => [qw(០ ១ ២ ៣ ៤ ៥ ៦ ៧ ៨ ៩)],
166             },
167             'knda' => {
168             type => 'numeric',
169             data => [qw(೦ ೧ ೨ ೩ ೪ ೫ ೬ à³­ à³® ೯)],
170             },
171             'lana' => {
172             type => 'numeric',
173             data => [qw(᪀ ᪁ ᪂ ᪃ ᪄ ᪅ ᪆ ᪇ ᪈ ᪉)],
174             },
175             'lanatham' => {
176             type => 'numeric',
177             data => [qw(᪐ ᪑ ᪒ ᪓ ᪔ ᪕ ᪖ ᪗ ᪘ ᪙)],
178             },
179             'laoo' => {
180             type => 'numeric',
181             data => [qw(໐ ໑ à»’ ໓ à»” ໕ à»– à»— ໘ à»™)],
182             },
183             'latn' => {
184             type => 'numeric',
185             data => [qw(0 1 2 3 4 5 6 7 8 9)],
186             },
187             'lepc' => {
188             type => 'numeric',
189             data => [qw(á±€ ᱁ ᱂ ᱃ ᱄ á±… ᱆ ᱇ ᱈ ᱉)],
190             },
191             'limb' => {
192             type => 'numeric',
193             data => [qw(᥆ ᥇ ᥈ ᥉ ᥊ ᥋ ᥌ ᥍ ᥎ ᥏)],
194             },
195             'mathbold' => {
196             type => 'numeric',
197             data => [qw(𝟎 𝟏 𝟐 𝟑 𝟒 𝟓 𝟔 𝟕 𝟖 𝟗)],
198             },
199             'mathdbl' => {
200             type => 'numeric',
201             data => [qw(𝟘 𝟙 𝟚 𝟛 𝟜 𝟝 𝟞 𝟟 𝟠 𝟡)],
202             },
203             'mathmono' => {
204             type => 'numeric',
205             data => [qw(𝟶 𝟷 𝟸 𝟹 𝟺 𝟻 𝟼 𝟽 𝟾 𝟿)],
206             },
207             'mathsanb' => {
208             type => 'numeric',
209             data => [qw(𝟬 𝟭 𝟮 𝟯 𝟰 𝟱 𝟲 𝟳 𝟴 𝟵)],
210             },
211             'mathsans' => {
212             type => 'numeric',
213             data => [qw(𝟢 𝟣 𝟤 𝟥 𝟦 𝟧 𝟨 𝟩 𝟪 𝟫)],
214             },
215             'mlym' => {
216             type => 'numeric',
217             data => [qw(൦ ൧ ൨ ൩ ൪ ൫ ൬ ൭ ൮ ൯)],
218             },
219             'modi' => {
220             type => 'numeric',
221             data => [qw(𑙐 ð‘™‘ ð‘™’ ð‘™“ ð‘™” ð‘™• ð‘™– ð‘™— 𑙘 ð‘™™)],
222             },
223             'mong' => {
224             type => 'numeric',
225             data => [qw(᠐ á ‘ á ’ á “ á ” á • á – á — á ˜ á ™)],
226             },
227             'mroo' => {
228             type => 'numeric',
229             data => [qw(ð–©  ð–©¡ ð–©¢ ð–©£ 𖩤 ð–©¥ 𖩦 𖩧 𖩨 ð–©©)],
230             },
231             'mtei' => {
232             type => 'numeric',
233             data => [qw(꯰ ꯱ ꯲ ꯳ ꯴ ꯵ ꯶ ꯷ ꯸ ꯹)],
234             },
235             'mymr' => {
236             type => 'numeric',
237             data => [qw(၀ ၁ ၂ ၃ ၄ ၅ ၆ ၇ ၈ ၉)],
238             },
239             'mymrshan' => {
240             type => 'numeric',
241             data => [qw(႐ á‚‘ á‚’ á‚“ á‚” á‚• á‚– á‚— ႘ á‚™)],
242             },
243             'mymrtlng' => {
244             type => 'numeric',
245             data => [qw(꧰ ꧱ ꧲ ꧳ ꧴ ꧵ ꧶ ꧷ ꧸ ꧹)],
246             },
247             'newa' => {
248             type => 'numeric',
249             data => [qw(𑑐 ð‘‘‘ ð‘‘’ ð‘‘“ ð‘‘” ð‘‘• ð‘‘– ð‘‘— 𑑘 ð‘‘™)],
250             },
251             'nkoo' => {
252             type => 'numeric',
253             data => [qw(߀ ߁ ß‚ ߃ ß„ ß… ߆ ߇ ߈ ߉)],
254             },
255             'olck' => {
256             type => 'numeric',
257             data => [qw(᱐ ᱑ á±’ ᱓ á±” ᱕ á±– á±— ᱘ á±™)],
258             },
259             'orya' => {
260             type => 'numeric',
261             data => [qw(à­¦ à­§ à­¨ à­© à­ª à­« à­¬ à­­ à­® à­¯)],
262             },
263             'osma' => {
264             type => 'numeric',
265             data => [qw(𐒠 𐒡 𐒢 𐒣 𐒤 𐒥 𐒦 𐒧 𐒨 𐒩)],
266             },
267             'rohg' => {
268             type => 'numeric',
269             data => [qw(𐴰 𐴱 𐴲 𐴳 𐴴 𐴵 𐴶 𐴷 𐴸 𐴹)],
270             },
271             'roman' => {
272             type => 'algorithmic',
273             data => 'roman-upper',
274             },
275             'romanlow' => {
276             type => 'algorithmic',
277             data => 'roman-lower',
278             },
279             'saur' => {
280             type => 'numeric',
281             data => [qw(꣐ ꣑ ꣒ ꣓ ꣔ ꣕ ꣖ ꣗ ꣘ ꣙)],
282             },
283             'shrd' => {
284             type => 'numeric',
285             data => [qw(𑇐 𑇑 𑇒 𑇓 𑇔 𑇕 𑇖 𑇗 𑇘 𑇙)],
286             },
287             'sind' => {
288             type => 'numeric',
289             data => [qw(ð‘‹° ð‘‹± ð‘‹² ð‘‹³ ð‘‹´ ð‘‹µ 𑋶 ð‘‹· 𑋸 ð‘‹¹)],
290             },
291             'sinh' => {
292             type => 'numeric',
293             data => [qw(à·¦ à·§ à·¨ à·© à·ª à·« à·¬ à·­ à·® à·¯)],
294             },
295             'sora' => {
296             type => 'numeric',
297             data => [qw(𑃰 𑃱 𑃲 𑃳 𑃴 𑃵 𑃶 𑃷 𑃸 𑃹)],
298             },
299             'sund' => {
300             type => 'numeric',
301             data => [qw(á®° á®± ᮲ ᮳ á®´ ᮵ ᮶ á®· ᮸ ᮹)],
302             },
303             'takr' => {
304             type => 'numeric',
305             data => [qw(𑛀 𑛁 ð‘›‚ 𑛃 ð‘›„ ð‘›… 𑛆 𑛇 𑛈 𑛉)],
306             },
307             'talu' => {
308             type => 'numeric',
309             data => [qw(᧐ ᧑ ᧒ ᧓ ᧔ ᧕ ᧖ ᧗ ᧘ ᧙)],
310             },
311             'taml' => {
312             type => 'algorithmic',
313             data => 'tamil',
314             },
315             'tamldec' => {
316             type => 'numeric',
317             data => [qw(௦ ௧ ௨ ௩ ௪ ௫ ௬ ௭ ௮ ௯)],
318             },
319             'telu' => {
320             type => 'numeric',
321             data => [qw(౦ ౧ ౨ ౩ ౪ ౫ ౬ à±­ à±® ౯)],
322             },
323             'thai' => {
324             type => 'numeric',
325             data => [qw(๐ ๑ ๒ ๓ ๔ ๕ ๖ ๗ ๘ ๙)],
326             },
327             'tibt' => {
328             type => 'numeric',
329             data => [qw(༠ ༡ ༢ ༣ ༤ ༥ ༦ ༧ ༨ ༩)],
330             },
331             'tirh' => {
332             type => 'numeric',
333             data => [qw(𑓐 ð‘“‘ ð‘“’ ð‘““ ð‘“” ð‘“• ð‘“– ð‘“— 𑓘 ð‘“™)],
334             },
335             'vaii' => {
336             type => 'numeric',
337             data => [qw(꘠ ꘡ ꘢ ꘣ ꘤ ꘥ ꘦ ꘧ ꘨ ꘩)],
338             },
339             'wara' => {
340             type => 'numeric',
341             data => [qw(ð‘£  𑣡 ð‘£¢ ð‘££ 𑣤 ð‘£¥ 𑣦 𑣧 𑣨 𑣩)],
342             },
343             }},
344             );
345              
346             has '_default_numbering_system' => (
347             is => 'ro',
348             isa => Str,
349             init_arg => undef,
350             default => '',
351             clearer => '_clear_default_nu',
352             writer => '_set_default_numbering_system',
353             );
354              
355             sub _set_default_nu {
356 10     10   45 my ($self, $system) = @_;
357 10   50     79 my $default = $self->_default_numbering_system // '';
358 10         220 $self->_set_default_numbering_system("$default$system");
359             }
360              
361             sub _test_default_nu {
362 2354     2354   3674 my $self = shift;
363 2354 100       7885 return length $self->_default_numbering_system ? 1 : 0;
364             }
365              
366             sub default_numbering_system {
367 2354     2354 0 4102 my $self = shift;
368            
369 2354 100       5070 if($self->_test_default_nu) {
370 2344         7647 return $self->_default_numbering_system;
371             }
372             else {
373 10         53 my $numbering_system = $self->_find_bundle('default_numbering_system')->default_numbering_system;
374 10         177 $self->_set_default_nu($numbering_system);
375 10         468 return $numbering_system
376             }
377             }
378              
379 21     21   31770 no Moo::Role;
  21         53  
  21         103  
380              
381             1;
382              
383             # vim: tabstop=4