File Coverage

blib/lib/Locale/CLDR/Currencies.pm
Criterion Covered Total %
statement 24 24 100.0
branch 1 2 50.0
condition n/a
subroutine 8 8 100.0
pod 0 1 0.0
total 33 35 94.2


line stmt bran cond sub pod time code
1             package Locale::CLDR::Currencies;
2             # This file auto generated from Data.xml
3             # on Sun 15 Nov 3:58:59 pm GMT
4              
5 20     20   13543 use version;
  20         47  
  20         139  
6              
7             our $VERSION = version->declare('v0.28.2');
8              
9 20     20   1959 use v5.10.1;
  20         76  
10 20     20   110 use mro 'c3';
  20         42  
  20         134  
11 20     20   698 use utf8;
  20         45  
  20         122  
12 20     20   656 use if $^V ge v5.12.0, feature => 'unicode_strings';
  20         46  
  20         273  
13              
14 20     20   2050 use Moose::Role;
  20         42  
  20         131  
15              
16             has '_currency_fractions' => (
17             is => 'ro',
18             isa => 'HashRef',
19             init_arg => undef,
20             default => sub { {
21              
22             ADP => {
23             'digits' => '0',
24             'rounding' => '0',
25             'cashdigits' => '0',
26             'cashrounding' => '0',
27             },
28             AFN => {
29             'digits' => '0',
30             'rounding' => '0',
31             'cashdigits' => '0',
32             'cashrounding' => '0',
33             },
34             ALL => {
35             'digits' => '0',
36             'rounding' => '0',
37             'cashdigits' => '0',
38             'cashrounding' => '0',
39             },
40             AMD => {
41             'digits' => '0',
42             'rounding' => '0',
43             'cashdigits' => '0',
44             'cashrounding' => '0',
45             },
46             BHD => {
47             'digits' => '3',
48             'rounding' => '0',
49             'cashdigits' => '3',
50             'cashrounding' => '0',
51             },
52             BIF => {
53             'digits' => '0',
54             'rounding' => '0',
55             'cashdigits' => '0',
56             'cashrounding' => '0',
57             },
58             BYR => {
59             'digits' => '0',
60             'rounding' => '0',
61             'cashdigits' => '0',
62             'cashrounding' => '0',
63             },
64             CAD => {
65             'digits' => '2',
66             'rounding' => '0',
67             'cashdigits' => '2',
68             'cashrounding' => '5',
69             },
70             CHF => {
71             'digits' => '2',
72             'rounding' => '0',
73             'cashdigits' => '2',
74             'cashrounding' => '5',
75             },
76             CLF => {
77             'digits' => '4',
78             'rounding' => '0',
79             'cashdigits' => '4',
80             'cashrounding' => '0',
81             },
82             CLP => {
83             'digits' => '0',
84             'rounding' => '0',
85             'cashdigits' => '0',
86             'cashrounding' => '0',
87             },
88             COP => {
89             'digits' => '0',
90             'rounding' => '0',
91             'cashdigits' => '0',
92             'cashrounding' => '0',
93             },
94             CRC => {
95             'digits' => '0',
96             'rounding' => '0',
97             'cashdigits' => '0',
98             'cashrounding' => '0',
99             },
100             CZK => {
101             'digits' => '2',
102             'rounding' => '0',
103             'cashdigits' => '2',
104             'cashrounding' => '0',
105             },
106             DEFAULT => {
107             'digits' => '2',
108             'rounding' => '0',
109             'cashdigits' => '2',
110             'cashrounding' => '0',
111             },
112             DJF => {
113             'digits' => '0',
114             'rounding' => '0',
115             'cashdigits' => '0',
116             'cashrounding' => '0',
117             },
118             ESP => {
119             'digits' => '0',
120             'rounding' => '0',
121             'cashdigits' => '0',
122             'cashrounding' => '0',
123             },
124             GNF => {
125             'digits' => '0',
126             'rounding' => '0',
127             'cashdigits' => '0',
128             'cashrounding' => '0',
129             },
130             GYD => {
131             'digits' => '0',
132             'rounding' => '0',
133             'cashdigits' => '0',
134             'cashrounding' => '0',
135             },
136             HUF => {
137             'digits' => '2',
138             'rounding' => '0',
139             'cashdigits' => '2',
140             'cashrounding' => '0',
141             },
142             IDR => {
143             'digits' => '0',
144             'rounding' => '0',
145             'cashdigits' => '0',
146             'cashrounding' => '0',
147             },
148             IQD => {
149             'digits' => '0',
150             'rounding' => '0',
151             'cashdigits' => '0',
152             'cashrounding' => '0',
153             },
154             IRR => {
155             'digits' => '0',
156             'rounding' => '0',
157             'cashdigits' => '0',
158             'cashrounding' => '0',
159             },
160             ISK => {
161             'digits' => '0',
162             'rounding' => '0',
163             'cashdigits' => '0',
164             'cashrounding' => '0',
165             },
166             ITL => {
167             'digits' => '0',
168             'rounding' => '0',
169             'cashdigits' => '0',
170             'cashrounding' => '0',
171             },
172             JOD => {
173             'digits' => '3',
174             'rounding' => '0',
175             'cashdigits' => '3',
176             'cashrounding' => '0',
177             },
178             JPY => {
179             'digits' => '0',
180             'rounding' => '0',
181             'cashdigits' => '0',
182             'cashrounding' => '0',
183             },
184             KMF => {
185             'digits' => '0',
186             'rounding' => '0',
187             'cashdigits' => '0',
188             'cashrounding' => '0',
189             },
190             KPW => {
191             'digits' => '0',
192             'rounding' => '0',
193             'cashdigits' => '0',
194             'cashrounding' => '0',
195             },
196             KRW => {
197             'digits' => '0',
198             'rounding' => '0',
199             'cashdigits' => '0',
200             'cashrounding' => '0',
201             },
202             KWD => {
203             'digits' => '3',
204             'rounding' => '0',
205             'cashdigits' => '3',
206             'cashrounding' => '0',
207             },
208             LAK => {
209             'digits' => '0',
210             'rounding' => '0',
211             'cashdigits' => '0',
212             'cashrounding' => '0',
213             },
214             LBP => {
215             'digits' => '0',
216             'rounding' => '0',
217             'cashdigits' => '0',
218             'cashrounding' => '0',
219             },
220             LUF => {
221             'digits' => '0',
222             'rounding' => '0',
223             'cashdigits' => '0',
224             'cashrounding' => '0',
225             },
226             LYD => {
227             'digits' => '3',
228             'rounding' => '0',
229             'cashdigits' => '3',
230             'cashrounding' => '0',
231             },
232             MGA => {
233             'digits' => '0',
234             'rounding' => '0',
235             'cashdigits' => '0',
236             'cashrounding' => '0',
237             },
238             MGF => {
239             'digits' => '0',
240             'rounding' => '0',
241             'cashdigits' => '0',
242             'cashrounding' => '0',
243             },
244             MMK => {
245             'digits' => '0',
246             'rounding' => '0',
247             'cashdigits' => '0',
248             'cashrounding' => '0',
249             },
250             MNT => {
251             'digits' => '0',
252             'rounding' => '0',
253             'cashdigits' => '0',
254             'cashrounding' => '0',
255             },
256             MRO => {
257             'digits' => '0',
258             'rounding' => '0',
259             'cashdigits' => '0',
260             'cashrounding' => '0',
261             },
262             MUR => {
263             'digits' => '0',
264             'rounding' => '0',
265             'cashdigits' => '0',
266             'cashrounding' => '0',
267             },
268             OMR => {
269             'digits' => '3',
270             'rounding' => '0',
271             'cashdigits' => '3',
272             'cashrounding' => '0',
273             },
274             PKR => {
275             'digits' => '0',
276             'rounding' => '0',
277             'cashdigits' => '0',
278             'cashrounding' => '0',
279             },
280             PYG => {
281             'digits' => '0',
282             'rounding' => '0',
283             'cashdigits' => '0',
284             'cashrounding' => '0',
285             },
286             RSD => {
287             'digits' => '0',
288             'rounding' => '0',
289             'cashdigits' => '0',
290             'cashrounding' => '0',
291             },
292             RWF => {
293             'digits' => '0',
294             'rounding' => '0',
295             'cashdigits' => '0',
296             'cashrounding' => '0',
297             },
298             SLL => {
299             'digits' => '0',
300             'rounding' => '0',
301             'cashdigits' => '0',
302             'cashrounding' => '0',
303             },
304             SOS => {
305             'digits' => '0',
306             'rounding' => '0',
307             'cashdigits' => '0',
308             'cashrounding' => '0',
309             },
310             STD => {
311             'digits' => '0',
312             'rounding' => '0',
313             'cashdigits' => '0',
314             'cashrounding' => '0',
315             },
316             SYP => {
317             'digits' => '0',
318             'rounding' => '0',
319             'cashdigits' => '0',
320             'cashrounding' => '0',
321             },
322             TMM => {
323             'digits' => '0',
324             'rounding' => '0',
325             'cashdigits' => '0',
326             'cashrounding' => '0',
327             },
328             TND => {
329             'digits' => '3',
330             'rounding' => '0',
331             'cashdigits' => '3',
332             'cashrounding' => '0',
333             },
334             TRL => {
335             'digits' => '0',
336             'rounding' => '0',
337             'cashdigits' => '0',
338             'cashrounding' => '0',
339             },
340             TWD => {
341             'digits' => '2',
342             'rounding' => '0',
343             'cashdigits' => '2',
344             'cashrounding' => '0',
345             },
346             TZS => {
347             'digits' => '0',
348             'rounding' => '0',
349             'cashdigits' => '0',
350             'cashrounding' => '0',
351             },
352             UGX => {
353             'digits' => '0',
354             'rounding' => '0',
355             'cashdigits' => '0',
356             'cashrounding' => '0',
357             },
358             UYI => {
359             'digits' => '0',
360             'rounding' => '0',
361             'cashdigits' => '0',
362             'cashrounding' => '0',
363             },
364             UZS => {
365             'digits' => '0',
366             'rounding' => '0',
367             'cashdigits' => '0',
368             'cashrounding' => '0',
369             },
370             VND => {
371             'digits' => '0',
372             'rounding' => '0',
373             'cashdigits' => '0',
374             'cashrounding' => '0',
375             },
376             VUV => {
377             'digits' => '0',
378             'rounding' => '0',
379             'cashdigits' => '0',
380             'cashrounding' => '0',
381             },
382             XAF => {
383             'digits' => '0',
384             'rounding' => '0',
385             'cashdigits' => '0',
386             'cashrounding' => '0',
387             },
388             XOF => {
389             'digits' => '0',
390             'rounding' => '0',
391             'cashdigits' => '0',
392             'cashrounding' => '0',
393             },
394             XPF => {
395             'digits' => '0',
396             'rounding' => '0',
397             'cashdigits' => '0',
398             'cashrounding' => '0',
399             },
400             YER => {
401             'digits' => '0',
402             'rounding' => '0',
403             'cashdigits' => '0',
404             'cashrounding' => '0',
405             },
406             ZMK => {
407             'digits' => '0',
408             'rounding' => '0',
409             'cashdigits' => '0',
410             'cashrounding' => '0',
411             },
412             ZWD => {
413             'digits' => '0',
414             'rounding' => '0',
415             'cashdigits' => '0',
416             'cashrounding' => '0',
417             },
418             } },
419             );
420              
421             sub currency_fractions {
422 17     17 0 25 my ($self, $currency) = @_;
423            
424 17         638 my $currency_data = $self->_currency_fractions()->{$currency};
425            
426 17 50       97 $currency_data = {
427             digits => 2,
428             cashdigits => 2,
429             rounding => 0,
430             cashrounding => 0,
431             } unless $currency_data;
432            
433 17         45 return $currency_data;
434             }
435              
436             has '_default_currency' => (
437             is => 'ro',
438             isa => 'HashRef',
439             init_arg => undef,
440             default => sub { {
441              
442             'AC' => 'SHP',
443             'AD' => 'EUR',
444             'AE' => 'AED',
445             'AF' => 'AFN',
446             'AG' => 'XCD',
447             'AI' => 'XCD',
448             'AL' => 'ALL',
449             'AM' => 'AMD',
450             'AO' => 'AOA',
451             'AQ' => 'XXX',
452             'AR' => 'ARS',
453             'AS' => 'USD',
454             'AT' => 'EUR',
455             'AU' => 'AUD',
456             'AW' => 'AWG',
457             'AX' => 'EUR',
458             'AZ' => 'AZN',
459             'BA' => 'BAM',
460             'BB' => 'BBD',
461             'BD' => 'BDT',
462             'BE' => 'EUR',
463             'BF' => 'XOF',
464             'BG' => 'BGN',
465             'BH' => 'BHD',
466             'BI' => 'BIF',
467             'BJ' => 'XOF',
468             'BL' => 'EUR',
469             'BM' => 'BMD',
470             'BN' => 'BND',
471             'BO' => 'BOB',
472             'BQ' => 'USD',
473             'BR' => 'BRL',
474             'BS' => 'BSD',
475             'BT' => 'BTN',
476             'BV' => 'NOK',
477             'BW' => 'BWP',
478             'BY' => 'BYR',
479             'BZ' => 'BZD',
480             'CA' => 'CAD',
481             'CC' => 'AUD',
482             'CD' => 'CDF',
483             'CF' => 'XAF',
484             'CG' => 'XAF',
485             'CH' => 'CHF',
486             'CI' => 'XOF',
487             'CK' => 'NZD',
488             'CL' => 'CLP',
489             'CM' => 'XAF',
490             'CN' => 'CNY',
491             'CO' => 'COP',
492             'CP' => 'XXX',
493             'CR' => 'CRC',
494             'CU' => 'CUP',
495             'CV' => 'CVE',
496             'CW' => 'ANG',
497             'CX' => 'AUD',
498             'CY' => 'EUR',
499             'CZ' => 'CZK',
500             'DE' => 'EUR',
501             'DG' => 'USD',
502             'DJ' => 'DJF',
503             'DK' => 'DKK',
504             'DM' => 'XCD',
505             'DO' => 'DOP',
506             'DZ' => 'DZD',
507             'EA' => 'EUR',
508             'EC' => 'USD',
509             'EE' => 'EUR',
510             'EG' => 'EGP',
511             'EH' => 'MAD',
512             'ER' => 'ERN',
513             'ES' => 'EUR',
514             'ET' => 'ETB',
515             'EU' => 'EUR',
516             'FI' => 'EUR',
517             'FJ' => 'FJD',
518             'FK' => 'FKP',
519             'FM' => 'USD',
520             'FO' => 'DKK',
521             'FR' => 'EUR',
522             'GA' => 'XAF',
523             'GB' => 'GBP',
524             'GD' => 'XCD',
525             'GE' => 'GEL',
526             'GF' => 'EUR',
527             'GG' => 'GBP',
528             'GH' => 'GHS',
529             'GI' => 'GIP',
530             'GL' => 'DKK',
531             'GM' => 'GMD',
532             'GN' => 'GNF',
533             'GP' => 'EUR',
534             'GQ' => 'XAF',
535             'GR' => 'EUR',
536             'GS' => 'GBP',
537             'GT' => 'GTQ',
538             'GU' => 'USD',
539             'GW' => 'XOF',
540             'GY' => 'GYD',
541             'HK' => 'HKD',
542             'HM' => 'AUD',
543             'HN' => 'HNL',
544             'HR' => 'HRK',
545             'HT' => 'HTG',
546             'HU' => 'HUF',
547             'IC' => 'EUR',
548             'ID' => 'IDR',
549             'IE' => 'EUR',
550             'IL' => 'ILS',
551             'IM' => 'GBP',
552             'IN' => 'INR',
553             'IO' => 'USD',
554             'IQ' => 'IQD',
555             'IR' => 'IRR',
556             'IS' => 'ISK',
557             'IT' => 'EUR',
558             'JE' => 'GBP',
559             'JM' => 'JMD',
560             'JO' => 'JOD',
561             'JP' => 'JPY',
562             'KE' => 'KES',
563             'KG' => 'KGS',
564             'KH' => 'KHR',
565             'KI' => 'AUD',
566             'KM' => 'KMF',
567             'KN' => 'XCD',
568             'KP' => 'KPW',
569             'KR' => 'KRW',
570             'KW' => 'KWD',
571             'KY' => 'KYD',
572             'KZ' => 'KZT',
573             'LA' => 'LAK',
574             'LB' => 'LBP',
575             'LC' => 'XCD',
576             'LI' => 'CHF',
577             'LK' => 'LKR',
578             'LR' => 'LRD',
579             'LS' => 'ZAR',
580             'LT' => 'EUR',
581             'LU' => 'EUR',
582             'LV' => 'EUR',
583             'LY' => 'LYD',
584             'MA' => 'MAD',
585             'MC' => 'EUR',
586             'MD' => 'MDL',
587             'ME' => 'EUR',
588             'MF' => 'EUR',
589             'MG' => 'MGA',
590             'MH' => 'USD',
591             'MK' => 'MKD',
592             'ML' => 'XOF',
593             'MM' => 'MMK',
594             'MN' => 'MNT',
595             'MO' => 'MOP',
596             'MP' => 'USD',
597             'MQ' => 'EUR',
598             'MR' => 'MRO',
599             'MS' => 'XCD',
600             'MT' => 'EUR',
601             'MU' => 'MUR',
602             'MV' => 'MVR',
603             'MW' => 'MWK',
604             'MX' => 'MXN',
605             'MY' => 'MYR',
606             'MZ' => 'MZN',
607             'NA' => 'NAD',
608             'NC' => 'XPF',
609             'NE' => 'XOF',
610             'NF' => 'AUD',
611             'NG' => 'NGN',
612             'NI' => 'NIO',
613             'NL' => 'EUR',
614             'NO' => 'NOK',
615             'NP' => 'NPR',
616             'NR' => 'AUD',
617             'NU' => 'NZD',
618             'NZ' => 'NZD',
619             'OM' => 'OMR',
620             'PA' => 'PAB',
621             'PE' => 'PEN',
622             'PF' => 'XPF',
623             'PG' => 'PGK',
624             'PH' => 'PHP',
625             'PK' => 'PKR',
626             'PL' => 'PLN',
627             'PM' => 'EUR',
628             'PN' => 'NZD',
629             'PR' => 'USD',
630             'PS' => 'ILS',
631             'PT' => 'EUR',
632             'PW' => 'USD',
633             'PY' => 'PYG',
634             'QA' => 'QAR',
635             'RE' => 'EUR',
636             'RO' => 'RON',
637             'RS' => 'RSD',
638             'RU' => 'RUB',
639             'RW' => 'RWF',
640             'SA' => 'SAR',
641             'SB' => 'SBD',
642             'SC' => 'SCR',
643             'SD' => 'SDG',
644             'SE' => 'SEK',
645             'SG' => 'SGD',
646             'SH' => 'SHP',
647             'SI' => 'EUR',
648             'SJ' => 'NOK',
649             'SK' => 'EUR',
650             'SL' => 'SLL',
651             'SM' => 'EUR',
652             'SN' => 'XOF',
653             'SO' => 'SOS',
654             'SR' => 'SRD',
655             'SS' => 'SSP',
656             'ST' => 'STD',
657             'SV' => 'USD',
658             'SX' => 'ANG',
659             'SY' => 'SYP',
660             'SZ' => 'SZL',
661             'TA' => 'GBP',
662             'TC' => 'USD',
663             'TD' => 'XAF',
664             'TF' => 'EUR',
665             'TG' => 'XOF',
666             'TH' => 'THB',
667             'TJ' => 'TJS',
668             'TK' => 'NZD',
669             'TL' => 'USD',
670             'TM' => 'TMT',
671             'TN' => 'TND',
672             'TO' => 'TOP',
673             'TR' => 'TRY',
674             'TT' => 'TTD',
675             'TV' => 'AUD',
676             'TW' => 'TWD',
677             'TZ' => 'TZS',
678             'UA' => 'UAH',
679             'UG' => 'UGX',
680             'UM' => 'USD',
681             'US' => 'USD',
682             'UY' => 'UYU',
683             'UZ' => 'UZS',
684             'VA' => 'EUR',
685             'VC' => 'XCD',
686             'VE' => 'VEF',
687             'VG' => 'USD',
688             'VI' => 'USD',
689             'VN' => 'VND',
690             'VU' => 'VUV',
691             'WF' => 'XPF',
692             'WS' => 'WST',
693             'XK' => 'EUR',
694             'YE' => 'YER',
695             'YT' => 'EUR',
696             'ZA' => 'ZAR',
697             'ZM' => 'ZMW',
698             'ZW' => 'USD',
699             'ZZ' => 'XAG',
700             } },
701             );
702              
703              
704 20     20   141194 no Moose::Role;
  20         44  
  20         107  
705              
706             1;
707              
708             # vim: tabstop=4