Filename | /Users/timbo/perl5/perlbrew/perls/perl-5.18.2/lib/site_perl/5.18.2/PPI/Statement/Break.pm |
Statements | Executed 9 statements in 102µs |
Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
---|---|---|---|---|---|
1 | 1 | 1 | 11µs | 22µs | BEGIN@40 | PPI::Statement::Break::
1 | 1 | 1 | 8µs | 8µs | BEGIN@44 | PPI::Statement::Break::
1 | 1 | 1 | 6µs | 33µs | BEGIN@43 | PPI::Statement::Break::
1 | 1 | 1 | 4µs | 4µs | BEGIN@41 | PPI::Statement::Break::
Line | State ments |
Time on line |
Calls | Time in subs |
Code |
---|---|---|---|---|---|
1 | package PPI::Statement::Break; | ||||
2 | |||||
3 | =pod | ||||
4 | |||||
5 | =head1 NAME | ||||
6 | |||||
7 | PPI::Statement::Break - Statements which break out of normal statement flow | ||||
8 | |||||
9 | =head1 SYNOPSIS | ||||
10 | |||||
11 | last; | ||||
12 | goto FOO; | ||||
13 | next if condition(); | ||||
14 | return $foo; | ||||
15 | redo; | ||||
16 | |||||
17 | =head1 INHERITANCE | ||||
18 | |||||
19 | PPI::Statement::Break | ||||
20 | isa PPI::Statement | ||||
21 | isa PPI::Node | ||||
22 | isa PPI::Element | ||||
23 | |||||
24 | =head1 DESCRIPTION | ||||
25 | |||||
26 | C<PPI::Statement::Break> is intended to represent statements that break | ||||
27 | out of the normal statement flow control. This covers the basic | ||||
28 | types C<'redo'>, C<'goto'>, C<'next'>, C<'last'> and C<'return'>. | ||||
29 | |||||
30 | =head1 METHODS | ||||
31 | |||||
32 | C<PPI::Statement::Break> has no additional methods beyond the default ones | ||||
33 | provided by L<PPI::Statement>, L<PPI::Node> and L<PPI::Element>. | ||||
34 | |||||
35 | However, it is expected to gain methods for identifying the line to break | ||||
36 | to, or the structure to break out of. | ||||
37 | |||||
38 | =cut | ||||
39 | |||||
40 | 2 | 22µs | 2 | 33µs | # spent 22µs (11+11) within PPI::Statement::Break::BEGIN@40 which was called:
# once (11µs+11µs) by PPI::Statement::BEGIN@162 at line 40 # spent 22µs making 1 call to PPI::Statement::Break::BEGIN@40
# spent 11µs making 1 call to strict::import |
41 | 2 | 22µs | 1 | 4µs | # spent 4µs within PPI::Statement::Break::BEGIN@41 which was called:
# once (4µs+0s) by PPI::Statement::BEGIN@162 at line 41 # spent 4µs making 1 call to PPI::Statement::Break::BEGIN@41 |
42 | |||||
43 | 2 | 27µs | 2 | 59µs | # spent 33µs (6+26) within PPI::Statement::Break::BEGIN@43 which was called:
# once (6µs+26µs) by PPI::Statement::BEGIN@162 at line 43 # spent 33µs making 1 call to PPI::Statement::Break::BEGIN@43
# spent 26µs making 1 call to vars::import |
44 | # spent 8µs within PPI::Statement::Break::BEGIN@44 which was called:
# once (8µs+0s) by PPI::Statement::BEGIN@162 at line 47 | ||||
45 | 1 | 300ns | $VERSION = '1.215'; | ||
46 | 1 | 8µs | @ISA = 'PPI::Statement'; | ||
47 | 1 | 20µs | 1 | 8µs | } # spent 8µs making 1 call to PPI::Statement::Break::BEGIN@44 |
48 | |||||
49 | 1 | 2µs | 1; | ||
50 | |||||
51 | =pod | ||||
52 | |||||
53 | =head1 TO DO | ||||
54 | |||||
55 | - Add the methods to identify the break target | ||||
56 | |||||
57 | - Add some proper unit testing | ||||
58 | |||||
59 | =head1 SUPPORT | ||||
60 | |||||
61 | See the L<support section|PPI/SUPPORT> in the main module. | ||||
62 | |||||
63 | =head1 AUTHOR | ||||
64 | |||||
65 | Adam Kennedy E<lt>adamk@cpan.orgE<gt> | ||||
66 | |||||
67 | =head1 COPYRIGHT | ||||
68 | |||||
69 | Copyright 2001 - 2011 Adam Kennedy. | ||||
70 | |||||
71 | This program is free software; you can redistribute | ||||
72 | it and/or modify it under the same terms as Perl itself. | ||||
73 | |||||
74 | The full text of the license can be found in the | ||||
75 | LICENSE file included with this module. | ||||
76 | |||||
77 | =cut |