File Coverage

blib/lib/Locale/CLDR/Locales/Ar/Any/Km.pm
Criterion Covered Total %
statement 29 29 100.0
branch n/a
condition n/a
subroutine 10 10 100.0
pod n/a
total 39 39 100.0


line stmt bran cond sub pod time code
1             =encoding utf8
2              
3             =head1
4              
5             Locale::CLDR::Locales::Ar::Any::Km - Package for language Arabic
6              
7             =cut
8              
9             # This file auto generated from Data/common/main/ar_KM.xml
10             # on Mon 11 Apr 5:23:38 pm GMT
11              
12             use strict;
13 1     1   745 use warnings;
  1         1  
  1         22  
14 1     1   3 use version;
  1         2  
  1         18  
15 1     1   4  
  1         1  
  1         4  
16             our $VERSION = version->declare('v0.34.1');
17              
18             use v5.10.1;
19 1     1   72 use mro 'c3';
  1         3  
20 1     1   4 use utf8;
  1         1  
  1         4  
21 1     1   28 use if $^V ge v5.12.0, feature => 'unicode_strings';
  1         2  
  1         4  
22 1     1   24 use Types::Standard qw( Str Int HashRef ArrayRef CodeRef RegexpRef );
  1         2  
  1         9  
23 1     1   78 use Moo;
  1         2  
  1         11  
24 1     1   767  
  1         2  
  1         4  
25             extends('Locale::CLDR::Locales::Ar::Any');
26             has 'default_numbering_system' => (
27             is => 'ro',
28             isa => Str,
29             init_arg => undef,
30             default => 'arab',
31             );
32              
33             has 'currencies' => (
34             is => 'ro',
35             isa => HashRef,
36             init_arg => undef,
37             default => sub { {
38             'KMF' => {
39             symbol => 'CF',
40             },
41             } },
42             );
43              
44              
45             has 'day_period_data' => (
46             is => 'ro',
47             isa => CodeRef,
48             init_arg => undef,
49             default => sub { sub {
50             # Time in hhmm format
51             my ($self, $type, $time, $day_period_type) = @_;
52             $day_period_type //= 'default';
53             SWITCH:
54             for ($type) {
55             if ($_ eq 'gregorian') {
56             if($day_period_type eq 'default') {
57             return 'afternoon1' if $time >= 1200
58             && $time < 1300;
59             return 'afternoon2' if $time >= 1300
60             && $time < 1800;
61             return 'evening1' if $time >= 1800
62             && $time < 2400;
63             return 'morning1' if $time >= 300
64             && $time < 600;
65             return 'morning2' if $time >= 600
66             && $time < 1200;
67             return 'night1' if $time >= 0
68             && $time < 100;
69             return 'night2' if $time >= 100
70             && $time < 300;
71             }
72             if($day_period_type eq 'selection') {
73             return 'afternoon1' if $time >= 1200
74             && $time < 1300;
75             return 'afternoon2' if $time >= 1300
76             && $time < 1800;
77             return 'evening1' if $time >= 1800
78             && $time < 2400;
79             return 'morning1' if $time >= 300
80             && $time < 600;
81             return 'morning2' if $time >= 600
82             && $time < 1200;
83             return 'night1' if $time >= 0
84             && $time < 100;
85             return 'night2' if $time >= 100
86             && $time < 300;
87             }
88             last SWITCH;
89             }
90             }
91             } },
92             );
93              
94             around day_period_data => sub {
95             my ($orig, $self) = @_;
96             return $self->$orig;
97             };
98              
99             has 'eras' => (
100             is => 'ro',
101             isa => HashRef,
102             init_arg => undef,
103             default => sub { {
104             'gregorian' => {
105             },
106             } },
107             );
108              
109             has 'date_formats' => (
110             is => 'ro',
111             isa => HashRef,
112             init_arg => undef,
113             default => sub { {
114             'gregorian' => {
115             },
116             } },
117             );
118              
119             has 'time_formats' => (
120             is => 'ro',
121             isa => HashRef,
122             init_arg => undef,
123             default => sub { {
124             'gregorian' => {
125             'full' => q{HH:mm:ss zzzz},
126             'long' => q{HH:mm:ss z},
127             'medium' => q{HH:mm:ss},
128             'short' => q{HH:mm},
129             },
130             } },
131             );
132              
133             has 'datetime_formats' => (
134             is => 'ro',
135             isa => HashRef,
136             init_arg => undef,
137             default => sub { {
138             'gregorian' => {
139             },
140             } },
141             );
142              
143             has 'datetime_formats_available_formats' => (
144             is => 'ro',
145             isa => HashRef,
146             init_arg => undef,
147             default => sub { {
148             } },
149             );
150              
151             has 'datetime_formats_append_item' => (
152             is => 'ro',
153             isa => HashRef,
154             init_arg => undef,
155             default => sub { {
156             } },
157             );
158              
159             has 'datetime_formats_interval' => (
160             is => 'ro',
161             isa => HashRef,
162             init_arg => undef,
163             default => sub { {
164             } },
165             );
166              
167             no Moo;
168 1     1   814  
  1         2  
  1         2  
169             1;
170              
171             # vim: tabstop=4