File Coverage

blib/lib/Locale/CLDR/Locales/Ar/Any/Mr.pm
Criterion Covered Total %
statement 32 32 100.0
branch n/a
condition n/a
subroutine 11 11 100.0
pod n/a
total 43 43 100.0


line stmt bran cond sub pod time code
1             =encoding utf8
2              
3             =head1 NAME
4              
5             Locale::CLDR::Locales::Ar::Any::Mr - Package for language Arabic
6              
7             =cut
8              
9             package Locale::CLDR::Locales::Ar::Any::Mr;
10             # This file auto generated from Data\common\main\ar_MR.xml
11             # on Fri 13 Oct 9:05:30 am GMT
12              
13 1     1   963 use strict;
  1         2  
  1         25  
14 1     1   5 use warnings;
  1         2  
  1         20  
15 1     1   5 use version;
  1         2  
  1         4  
16              
17             our $VERSION = version->declare('v0.34.2');
18              
19 1     1   85 use v5.10.1;
  1         4  
20 1     1   4 use mro 'c3';
  1         2  
  1         5  
21 1     1   33 use utf8;
  1         2  
  1         4  
22 1     1   29 use if $^V ge v5.12.0, feature => 'unicode_strings';
  1         2  
  1         10  
23 1     1   127 use Types::Standard qw( Str Int HashRef ArrayRef CodeRef RegexpRef );
  1         2  
  1         6  
24 1     1   934 use Moo;
  1         2  
  1         6  
25              
26             extends('Locale::CLDR::Locales::Ar::Any');
27             has 'characters' => (
28             is => 'ro',
29             isa => HashRef,
30             init_arg => undef,
31             default => $^V ge v5.18.0
32             ? eval <<'EOT'
33             sub {
34             no warnings 'experimental::regex_sets';
35             return {
36             numbers => qr{[‎ \- , . % ‰ + 0 1 2 3 4 5 6 7 8 9]},
37             };
38             },
39             EOT
40             : sub {
41             return {};
42             },
43 1     1   84 );
  1         3  
  1         78  
44              
45              
46             has 'default_numbering_system' => (
47             is => 'ro',
48             isa => Str,
49             init_arg => undef,
50             default => 'arab',
51             );
52              
53             has 'number_symbols' => (
54             is => 'ro',
55             isa => HashRef,
56             init_arg => undef,
57             default => sub { {
58             'latn' => {
59             'decimal' => q(,),
60             'group' => q(.),
61             },
62             } }
63             );
64              
65             has 'calendar_months' => (
66             is => 'ro',
67             isa => HashRef,
68             init_arg => undef,
69             default => sub { {
70             'gregorian' => {
71             'format' => {
72             abbreviated => {
73             nonleap => [
74             'يناير',
75             'فبراير',
76             'مارس',
77             'إبريل',
78             'مايو',
79             'يونيو',
80             'يوليو',
81             'أغشت',
82             'شتمبر',
83             'أكتوبر',
84             'نوفمبر',
85             'دجمبر'
86             ],
87             leap => [
88            
89             ],
90             },
91             narrow => {
92             nonleap => [
93             'ي',
94             'ف',
95             'م',
96             'إ',
97             'و',
98             'ن',
99             'ل',
100             'غ',
101             'ش',
102             'ك',
103             'ب',
104             'د'
105             ],
106             leap => [
107            
108             ],
109             },
110             wide => {
111             nonleap => [
112             'يناير',
113             'فبراير',
114             'مارس',
115             'إبريل',
116             'مايو',
117             'يونيو',
118             'يوليو',
119             'أغشت',
120             'شتمبر',
121             'أكتوبر',
122             'نوفمبر',
123             'دجمبر'
124             ],
125             leap => [
126            
127             ],
128             },
129             },
130             'stand-alone' => {
131             abbreviated => {
132             nonleap => [
133             'يناير',
134             'فبراير',
135             'مارس',
136             'إبريل',
137             'مايو',
138             'يونيو',
139             'يوليو',
140             'أغشت',
141             'شتمبر',
142             'أكتوبر',
143             'نوفمبر',
144             'دجمبر'
145             ],
146             leap => [
147            
148             ],
149             },
150             narrow => {
151             nonleap => [
152             'ي',
153             'ف',
154             'م',
155             'إ',
156             'و',
157             'ن',
158             'ل',
159             'غ',
160             'ش',
161             'ك',
162             'ب',
163             'د'
164             ],
165             leap => [
166            
167             ],
168             },
169             wide => {
170             nonleap => [
171             'يناير',
172             'فبراير',
173             'مارس',
174             'إبريل',
175             'مايو',
176             'يونيو',
177             'يوليو',
178             'أغشت',
179             'شتمبر',
180             'أكتوبر',
181             'نوفمبر',
182             'دجمبر'
183             ],
184             leap => [
185            
186             ],
187             },
188             },
189             },
190             } },
191             );
192              
193             has 'day_period_data' => (
194             is => 'ro',
195             isa => CodeRef,
196             init_arg => undef,
197             default => sub { sub {
198             # Time in hhmm format
199             my ($self, $type, $time, $day_period_type) = @_;
200             $day_period_type //= 'default';
201             SWITCH:
202             for ($type) {
203             if ($_ eq 'gregorian') {
204             if($day_period_type eq 'default') {
205             return 'afternoon1' if $time >= 1200
206             && $time < 1300;
207             return 'afternoon2' if $time >= 1300
208             && $time < 1800;
209             return 'evening1' if $time >= 1800
210             && $time < 2400;
211             return 'morning1' if $time >= 300
212             && $time < 600;
213             return 'morning2' if $time >= 600
214             && $time < 1200;
215             return 'night1' if $time >= 0
216             && $time < 100;
217             return 'night2' if $time >= 100
218             && $time < 300;
219             }
220             if($day_period_type eq 'selection') {
221             return 'afternoon1' if $time >= 1200
222             && $time < 1300;
223             return 'afternoon2' if $time >= 1300
224             && $time < 1800;
225             return 'evening1' if $time >= 1800
226             && $time < 2400;
227             return 'morning1' if $time >= 300
228             && $time < 600;
229             return 'morning2' if $time >= 600
230             && $time < 1200;
231             return 'night1' if $time >= 0
232             && $time < 100;
233             return 'night2' if $time >= 100
234             && $time < 300;
235             }
236             last SWITCH;
237             }
238             }
239             } },
240             );
241              
242             around day_period_data => sub {
243             my ($orig, $self) = @_;
244             return $self->$orig;
245             };
246              
247             has 'eras' => (
248             is => 'ro',
249             isa => HashRef,
250             init_arg => undef,
251             default => sub { {
252             'gregorian' => {
253             },
254             } },
255             );
256              
257             has 'date_formats' => (
258             is => 'ro',
259             isa => HashRef,
260             init_arg => undef,
261             default => sub { {
262             'gregorian' => {
263             },
264             } },
265             );
266              
267             has 'time_formats' => (
268             is => 'ro',
269             isa => HashRef,
270             init_arg => undef,
271             default => sub { {
272             'gregorian' => {
273             },
274             } },
275             );
276              
277             has 'datetime_formats' => (
278             is => 'ro',
279             isa => HashRef,
280             init_arg => undef,
281             default => sub { {
282             'gregorian' => {
283             },
284             } },
285             );
286              
287             has 'datetime_formats_available_formats' => (
288             is => 'ro',
289             isa => HashRef,
290             init_arg => undef,
291             default => sub { {
292             } },
293             );
294              
295             has 'datetime_formats_append_item' => (
296             is => 'ro',
297             isa => HashRef,
298             init_arg => undef,
299             default => sub { {
300             } },
301             );
302              
303             has 'datetime_formats_interval' => (
304             is => 'ro',
305             isa => HashRef,
306             init_arg => undef,
307             default => sub { {
308             } },
309             );
310              
311 1     1   1133 no Moo;
  1         2  
  1         4  
312              
313             1;
314              
315             # vim: tabstop=4