← Index
NYTProf Performance Profile
«
line view
»
For /usr/local/libexec/sympa/task_manager-debug.pl
Run on Tue Jun 1 22:32:51 2021
Reported on Tue Jun 1 22:35:05 2021
Filename
/root/Specio::Exception->new
Statements
Executed 0 statements in 0s
Subroutines
Calls
P
F
Exclusive
Time
Inclusive
Time
Subroutine
0
0
0
0s
0s
__ANON__[Specio::::Exception->new:60]
__ANON__[Specio::
Exception->new:60]
Call graph for these subroutines as a
Graphviz
dot language file
.
Line
State
ments
Time
on line
Calls
Time
in subs
Code
1
sub {
2
my $class = shift;
3
4
my %p = do {
5
if ( @_ == 1 ) {
6
if ( ref $_[0] eq 'HASH' ) {
7
%{ shift() };
8
}
9
else {
10
Specio::OO::_constructor_confess(
11
Specio::OO::_bad_args_message( $class, @_ ) );
12
}
13
}
14
else {
15
Specio::OO::_constructor_confess(
16
Specio::OO::_bad_args_message( $class, @_ ) )
17
if @_ % 2;
18
@_;
19
}
20
};
21
22
my $self = bless {}, $class;
23
24
Specio::OO::_constructor_confess(
25
"Specio::Exception->new requires a message argument.")
26
unless exists $p{message};
27
if ( exists $p{message} && !Specio::TypeChecks::is_Str( $p{message} ) ) {
28
Carp::confess(
29
Specio::OO::_bad_value_message(
30
"The value you provided to Specio::Exception->new for message is not a valid Str.",
31
$p{message},
32
)
33
);
34
}
35
$self->{message} = $p{message} if exists $p{message};
36
37
$self->{stack_trace} = $p{stack_trace} if exists $p{stack_trace};
38
39
Specio::OO::_constructor_confess(
40
"Specio::Exception->new requires a type argument.")
41
unless exists $p{type};
42
if ( exists $p{type} && !Specio::TypeChecks::does_role( $p{type}, "Specio::Constraint::Role::Interface" ) ) {
43
Carp::confess(
44
Specio::OO::_bad_value_message(
45
"The value you provided to Specio::Exception->new for type does not do the Specio::Constraint::Role::Interface role.",
46
$p{type},
47
)
48
);
49
}
50
$self->{type} = $p{type} if exists $p{type};
51
52
Specio::OO::_constructor_confess(
53
"Specio::Exception->new requires a value argument.")
54
unless exists $p{value};
55
$self->{value} = $p{value} if exists $p{value};
56
57
$self->Specio::Exception::BUILD(\%p);
58
59
return $self;
60
}
61
;
62