File Coverage

blib/lib/App/BitBucketCli/Links.pm
Criterion Covered Total %
statement 18 21 85.7
branch n/a
condition n/a
subroutine 6 7 85.7
pod 1 1 100.0
total 25 29 86.2


line stmt bran cond sub pod time code
1             package App::BitBucketCli::Links;
2              
3             # Created on: 2015-09-16 16:41:19
4             # Create by: Ivan Wills
5             # $Id$
6             # $Revision$, $HeadURL$, $Date$
7             # $Revision$, $Source$, $Date$
8              
9 1     1   5 use Moo;
  1         2  
  1         5  
10 1     1   260 use warnings;
  1         1  
  1         22  
11 1     1   17 use Carp;
  1         2  
  1         40  
12 1     1   5 use Data::Dumper qw/Dumper/;
  1         1  
  1         43  
13 1     1   5 use English qw/ -no_match_vars /;
  1         2  
  1         4  
14 1     1   606 use App::BitBucketCli::Link;
  1         3  
  1         199  
15              
16             our $VERSION = 0.009;
17              
18             has [qw/
19             clone
20             self
21             /] => (
22             is => 'rw',
23             );
24              
25             around BUILDARGS => sub {
26             my ( $orig, $class, @args ) = @_;
27              
28             my $args
29             = !@args ? {}
30             : @args == 1 ? { %{ $args[0] } }
31             : {@args};
32             my $arg = {};
33              
34             for my $type (keys %{ $args }) {
35             $arg->{$type} = [];
36             for my $link (@{ $args->{$type} }) {
37             push @{ $arg->{$type} }, App::BitBucketCli::Link->new($link);
38             }
39             }
40              
41             return $class->$orig($arg);
42             };
43              
44             sub TO_JSON {
45 0     0 1   my ($self) = @_;
46 0           return { %{ $self } };
  0            
47             }
48              
49             1;
50              
51             __END__
52              
53             =head1 NAME
54              
55             App::BitBucketCli::Links - Stores a projects details
56              
57             =head1 VERSION
58              
59             This documentation refers to App::BitBucketCli::Links version 0.009
60              
61             =head1 SYNOPSIS
62              
63             use App::BitBucketCli::Links;
64              
65             # Brief but working code example(s) here showing the most common usage(s)
66             # This section will be as far as many users bother reading, so make it as
67             # educational and exemplary as possible.
68              
69              
70             =head1 DESCRIPTION
71              
72             =head1 SUBROUTINES/METHODS
73              
74             =head2 C<BUILDARGS ()>
75              
76             =head2 C<TO_JSON ()>
77              
78             Used by L<JSON::XS> for dumping the object
79              
80             =head1 ATTRIBUTES
81              
82             =head2 description
83              
84             =head2 clone
85              
86             =head2 self
87              
88             =head1 DIAGNOSTICS
89              
90             =head1 CONFIGURATION AND ENVIRONMENT
91              
92             =head1 DEPENDENCIES
93              
94             =head1 INCOMPATIBILITIES
95              
96             =head1 BUGS AND LIMITATIONS
97              
98             There are no known bugs in this module.
99              
100             Please report problems to Ivan Wills (ivan.wills@gmail.com).
101              
102             Patches are welcome.
103              
104             =head1 AUTHOR
105              
106             Ivan Wills - (ivan.wills@gmail.com)
107              
108             =head1 LICENSE AND COPYRIGHT
109              
110             Copyright (c) 2015 Ivan Wills (14 Mullion Close, Hornsby Heights, NSW Australia 2077).
111             All rights reserved.
112              
113             This module is free software; you can redistribute it and/or modify it under
114             the same terms as Perl itself. See L<perlartistic>. This program is
115             distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
116             without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
117             PARTICULAR PURPOSE.
118              
119             =cut