File Coverage

blib/lib/PlantUML/ClassDiagram/Class/Method.pm
Criterion Covered Total %
statement 21 21 100.0
branch 4 4 100.0
condition n/a
subroutine 8 8 100.0
pod 0 4 0.0
total 33 37 89.1


line stmt bran cond sub pod time code
1             package PlantUML::ClassDiagram::Class::Method;
2              
3 4     4   16641 use strict;
  4         7  
  4         120  
4 4     4   18 use warnings;
  4         5  
  4         104  
5 4     4   15 use utf8;
  4         4  
  4         18  
6              
7 4     4   1527 use parent qw/PlantUML::ClassDiagram::Class::Base/;
  4         837  
  4         17  
8             __PACKAGE__->follow_best_practice;
9              
10             my @self_valiables = qw/
11             name
12             attribute
13             /;
14             __PACKAGE__->mk_ro_accessors(@self_valiables);
15              
16             sub build {
17 20     20 0 2927 my ($class, $string) = @_;
18              
19 20         65 my ($name) = $string =~ /(\w+)\(.*\)/;
20 20         59 my ($attribute) = $string =~ /\{(\w+)\}/;
21              
22 20         82 return $class->new($name, $attribute);
23             }
24              
25 14     14 0 38 sub is_method { 1 }
26              
27             sub is_static {
28 3     3 0 5 my ($self) = @_;
29              
30 3 100       6 return ($self->get_attribute eq 'static') ? 1 : 0;
31             }
32              
33             sub is_abstract {
34 3     3 0 2163 my ($self) = @_;
35              
36 3 100       7 return ($self->get_attribute eq 'abstract') ? 1 : 0;
37             }
38              
39             1;