File Coverage

blib/lib/Story/Interact/Character.pm
Criterion Covered Total %
statement 21 25 84.0
branch n/a
condition n/a
subroutine 8 11 72.7
pod 0 1 0.0
total 29 37 78.3


line stmt bran cond sub pod time code
1 5     5   80 use 5.010001;
  5         18  
2 5     5   31 use strict;
  5         9  
  5         115  
3 5     5   22 use warnings;
  5         11  
  5         342  
4              
5             package Story::Interact::Character;
6              
7             our $AUTHORITY = 'cpan:TOBYINK';
8             our $VERSION = '0.001014';
9              
10 5     5   2777 use Moo;
  5         56558  
  5         25  
11 5     5   10178 use Types::Common -types;
  5         1271688  
  5         50  
12 5     5   74215 use namespace::clean;
  5         59968  
  5         54  
13              
14             use overload (
15 0     0   0 q[bool] => sub { 1 },
16 0     0   0 q[""] => sub { shift->name },
17 5         82 fallback => 1,
18 5     5   5101 );
  5         17  
19              
20             has 'name' => (
21             is => 'ro',
22             isa => NonEmptyStr,
23             required => 1,
24             );
25              
26             has 'location' => (
27             is => 'rwp',
28             isa => Str | Undef,
29             );
30              
31             has [ qw( meta knows carries achieved ) ] => (
32             is => 'ro',
33             isa => HashRef,
34 40     40   22979 builder => sub { {} },
35             );
36              
37             sub TO_JSON {
38 0     0 0   +{ %{ +shift } };
  0            
39             }
40              
41             1;