File Coverage

blib/lib/WebService/ValidSign/Types.pm
Criterion Covered Total %
statement 18 18 100.0
branch n/a
condition n/a
subroutine 6 6 100.0
pod n/a
total 24 24 100.0


line stmt bran cond sub pod time code
1             our $VERSION = '0.004';
2             use warnings;
3 6     6   37 use strict;
  6         11  
  6         181  
4 6     6   27  
  6         13  
  6         125  
5             # ABSTRACT: Moo(se) like types defined for WebService::ValidSign
6              
7             use Types::Standard qw(Str);
8 6     6   26 use URI;
  6         14  
  6         29  
9 6     6   2242 use Type::Utils -all;
  6         13  
  6         132  
10 6     6   2232 use Type::Library
  6         23830  
  6         50  
11             -base,
12 6         24 -declare => qw(
13             WebServiceValidSignURI
14             WebServiceValidSignAuthModule
15             );
16 6     6   17239  
  6         12  
17             class_type WebServiceValidSignURI, {class => 'URI' };
18             coerce WebServiceValidSignURI, from Str, via { return URI->new($_); };
19              
20             class_type WebServiceValidSignAuthModule, {class => 'WebService::ValidSign::API::Auth' };
21              
22             1;
23              
24              
25             =pod
26              
27             =encoding UTF-8
28              
29             =head1 NAME
30              
31             WebService::ValidSign::Types - Moo(se) like types defined for WebService::ValidSign
32              
33             =head1 VERSION
34              
35             version 0.004
36              
37             =head1 SYNOPSIS
38              
39             package Foo;
40             use Moo;
41              
42             use WebService::ValidSign::Types qw(WebServiceValidSignURI);
43              
44             has bar => (
45             is => 'ro',
46             isa => WebServiceValidSignURI,
47             );
48              
49             =head1 DESCRIPTION
50              
51             Defines custom types for WebService::ValidSign modules
52              
53             =head1 TYPES
54              
55             =head2 WebServiceValidSignURI
56              
57             Allows a scalar URI, eq 'https://foo.bar.nl', or a URI object.
58              
59             =head1 AUTHOR
60              
61             Wesley Schwengle <waterkip@cpan.org>
62              
63             =head1 COPYRIGHT AND LICENSE
64              
65             This software is Copyright (c) 2019 by Wesley Schwengle.
66              
67             This is free software, licensed under:
68              
69             The (three-clause) BSD License
70              
71             =cut