File Coverage

blib/lib/Toolforge/MixNMatch/Print/User.pm
Criterion Covered Total %
statement 16 16 100.0
branch 4 4 100.0
condition n/a
subroutine 4 4 100.0
pod 1 1 100.0
total 25 25 100.0


line stmt bran cond sub pod time code
1             package Toolforge::MixNMatch::Print::User;
2              
3 6     6   258828 use strict;
  6         40  
  6         185  
4 6     6   35 use warnings;
  6         12  
  6         186  
5              
6 6     6   1047 use Error::Pure qw(err);
  6         23818  
  6         731  
7              
8             our $VERSION = 0.04;
9              
10             sub print {
11 7     7 1 19280 my $obj = shift;
12              
13 7 100       19 if (! defined $obj) {
14 1         5 err "Object doesn't exist.";
15             }
16 6 100       34 if (! $obj->isa('Toolforge::MixNMatch::Object::User')) {
17 1         5 err "Object isn't 'Toolforge::MixNMatch::Object::User'.";
18             }
19              
20 5         12 my $print = $obj->username.' ('.$obj->uid.'): '.$obj->count;
21              
22 5         92 return $print;
23             }
24              
25             1;
26              
27             __END__
28              
29             =pod
30              
31             =encoding utf8
32              
33             =head1 NAME
34              
35             Toolforge::MixNMatch::Print::User - Mix'n'match user structure print.
36              
37             =head1 SYNOPSIS
38              
39             use Toolforge::MixNMatch::Print::User qw(print);
40              
41             my $print = print($obj);
42              
43             =head1 SUBROUTINES
44              
45             =head2 C<print>
46              
47             my $print = print($obj);
48              
49             Print Toolforge::MixNMatch::Object::User instance to user output.
50              
51             Returns string.
52              
53             =head1 ERRORS
54              
55             obj2struct():
56             Object doesn't exist.
57             Object isn't 'Toolforge::MixNMatch::Object::User'.
58              
59             =head1 EXAMPLE
60              
61             use strict;
62             use warnings;
63              
64             use Data::Printer;
65             use Toolforge::MixNMatch::Object::User;
66             use Toolforge::MixNMatch::Print::User;
67              
68             # Object.
69             my $obj = Toolforge::MixNMatch::Object::User->new(
70             'count' => 6,
71             'uid' => 1,
72             'username' => 'Skim',
73             );
74              
75             # Print.
76             print Toolforge::MixNMatch::Print::User::print($obj)."\n";
77              
78             # Output:
79             # Skim (1): 6
80              
81             =head1 DEPENDENCIES
82              
83             L<Error::Pure>.
84              
85             =head1 SEE ALSO
86              
87             =over
88              
89             =item L<Toolforge::MixNMatch::Print>
90              
91             Toolforge Mix'n'match tool object print routines.
92              
93             =back
94              
95             =head1 REPOSITORY
96              
97             L<https://github.com/michal-josef-spacek/Toolforge-MixNMatch-Print>
98              
99             =head1 AUTHOR
100              
101             Michal Josef Špaček L<mailto:skim@cpan.org>
102              
103             L<http://skim.cz>
104              
105             =head1 LICENSE AND COPYRIGHT
106              
107             © Michal Josef Špaček 2020
108              
109             BSD 2-Clause License
110              
111             =head1 VERSION
112              
113             0.04
114              
115             =cut