File Coverage

File:lib/WWW/Google/Contacts/Type/Email.pm
Coverage:100.0%

linestmtbrancondsubpodtimecode
1package WWW::Google::Contacts::Type::Email;
2
3
12
12
12
95
38
102
use Moose;
4
12
12
12
147
41
108
use MooseX::Types::Moose qw( Str Undef );
5
12
12
12
131
38
103
use WWW::Google::Contacts::InternalTypes qw( Rel XmlBool );
6
12
12
12
127
40
97
use WWW::Google::Contacts::Meta::Attribute::Trait::XmlField;
7
8extends 'WWW::Google::Contacts::Type::Base';
9
10with 'WWW::Google::Contacts::Roles::HasTypeAndLabel' => {
11    valid_types => [ qw( work home ) ],
12};
13
14has value => (
15    isa => Str,
16    is => 'rw',
17    traits => [ 'XmlField' ],
18    xml_key => 'address',
19    predicate => 'has_value',
20    required => 1,
21);
22
23has display_name => (
24    isa => Str,
25    is => 'rw',
26    traits => [ 'XmlField' ],
27    xml_key => 'displayName',
28    predicate => 'has_display_name',
29);
30
31has primary => (
32    isa => XmlBool,
33    is => 'rw',
34    traits => [ 'XmlField' ],
35    predicate => 'has_primary',
36    xml_key => 'primary',
37    to_xml => sub { my $val = shift; return "true" if $val == 1; return "false" },
38    default => sub { 0 },
39    coerce => 1,
40);
41
42
12
12
12
119
37
92
no Moose;
43__PACKAGE__->meta->make_immutable;
441;