Filename | /home/hinrik/perl5/perlbrew/perls/perl-5.13.5/lib/site_perl/5.13.5/Regexp/Common/URI/RFC1808.pm |
Statements | Executed 60 statements in 739µs |
Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
---|---|---|---|---|---|
1 | 1 | 1 | 26µs | 52µs | BEGIN@8 | Regexp::Common::URI::RFC1808::
1 | 1 | 1 | 17µs | 785µs | BEGIN@40 | Regexp::Common::URI::RFC1808::
1 | 1 | 1 | 14µs | 48µs | BEGIN@16 | Regexp::Common::URI::RFC1808::
1 | 1 | 1 | 12µs | 12µs | BEGIN@27 | Regexp::Common::URI::RFC1808::
1 | 1 | 1 | 12µs | 17µs | BEGIN@13 | Regexp::Common::URI::RFC1808::
1 | 1 | 1 | 11µs | 21µs | BEGIN@14 | Regexp::Common::URI::RFC1808::
1 | 1 | 1 | 11µs | 112µs | BEGIN@19 | Regexp::Common::URI::RFC1808::
1 | 1 | 1 | 6µs | 6µs | BEGIN@21 | Regexp::Common::URI::RFC1808::
1 | 1 | 1 | 6µs | 6µs | BEGIN@3 | Regexp::Common::URI::RFC1808::
0 | 0 | 0 | 0s | 0s | __ANON__[:9] | Regexp::Common::URI::RFC1808::
Line | State ments |
Time on line |
Calls | Time in subs |
Code |
---|---|---|---|---|---|
1 | package Regexp::Common::URI::RFC1808; | ||||
2 | |||||
3 | # spent 6µs within Regexp::Common::URI::RFC1808::BEGIN@3 which was called:
# once (6µs+0s) by Regexp::Common::URI::gopher::BEGIN@6 at line 11 | ||||
4 | # This makes sure 'use warnings' doesn't bomb out on 5.005_*; | ||||
5 | # warnings won't be enabled on those old versions though. | ||||
6 | 1 | 7µs | if ($] < 5.006 && !exists $INC {"warnings.pm"}) { | ||
7 | $INC {"warnings.pm"} = 1; | ||||
8 | 2 | 46µs | 2 | 78µs | # spent 52µs (26+26) within Regexp::Common::URI::RFC1808::BEGIN@8 which was called:
# once (26µs+26µs) by Regexp::Common::URI::gopher::BEGIN@6 at line 8 # spent 52µs making 1 call to Regexp::Common::URI::RFC1808::BEGIN@8
# spent 26µs making 1 call to strict::unimport |
9 | *{"warnings::unimport"} = sub {0}; | ||||
10 | } | ||||
11 | 1 | 19µs | 1 | 6µs | } # spent 6µs making 1 call to Regexp::Common::URI::RFC1808::BEGIN@3 |
12 | |||||
13 | 2 | 25µs | 2 | 22µs | # spent 17µs (12+5) within Regexp::Common::URI::RFC1808::BEGIN@13 which was called:
# once (12µs+5µs) by Regexp::Common::URI::gopher::BEGIN@6 at line 13 # spent 17µs making 1 call to Regexp::Common::URI::RFC1808::BEGIN@13
# spent 5µs making 1 call to strict::import |
14 | 2 | 27µs | 2 | 30µs | # spent 21µs (11+10) within Regexp::Common::URI::RFC1808::BEGIN@14 which was called:
# once (11µs+10µs) by Regexp::Common::URI::gopher::BEGIN@6 at line 14 # spent 21µs making 1 call to Regexp::Common::URI::RFC1808::BEGIN@14
# spent 10µs making 1 call to warnings::import |
15 | |||||
16 | 2 | 33µs | 2 | 83µs | # spent 48µs (14+34) within Regexp::Common::URI::RFC1808::BEGIN@16 which was called:
# once (14µs+34µs) by Regexp::Common::URI::gopher::BEGIN@6 at line 16 # spent 48µs making 1 call to Regexp::Common::URI::RFC1808::BEGIN@16
# spent 34µs making 1 call to vars::import |
17 | 1 | 2µs | $VERSION = '2010010201'; | ||
18 | |||||
19 | 2 | 26µs | 2 | 214µs | # spent 112µs (11+102) within Regexp::Common::URI::RFC1808::BEGIN@19 which was called:
# once (11µs+102µs) by Regexp::Common::URI::gopher::BEGIN@6 at line 19 # spent 112µs making 1 call to Regexp::Common::URI::RFC1808::BEGIN@19
# spent 102µs making 1 call to vars::import |
20 | |||||
21 | 2 | 64µs | 1 | 6µs | # spent 6µs within Regexp::Common::URI::RFC1808::BEGIN@21 which was called:
# once (6µs+0s) by Regexp::Common::URI::gopher::BEGIN@6 at line 21 # spent 6µs making 1 call to Regexp::Common::URI::RFC1808::BEGIN@21 |
22 | 1 | 6µs | @ISA = qw /Exporter/; | ||
23 | |||||
24 | |||||
25 | 1 | 1µs | my %vars; | ||
26 | |||||
27 | # spent 12µs within Regexp::Common::URI::RFC1808::BEGIN@27 which was called:
# once (12µs+0s) by Regexp::Common::URI::gopher::BEGIN@6 at line 38 | ||||
28 | 1 | 11µs | $vars {low} = [qw /$punctuation $reserved_range $reserved $national | ||
29 | $extra $safe $digit $digits $hialpha $lowalpha | ||||
30 | $alpha $alphadigit $hex $escape $unreserved_range | ||||
31 | $unreserved $uchar $uchars $pchar_range $pchar | ||||
32 | $pchars/], | ||||
33 | |||||
34 | $vars {parts} = [qw /$fragment $query $param $params $segment | ||||
35 | $fsegment $path $net_loc $scheme $rel_path | ||||
36 | $abs_path $net_path $relativeURL $generic_RL | ||||
37 | $absoluteURL $URL/], | ||||
38 | 1 | 29µs | 1 | 12µs | } # spent 12µs making 1 call to Regexp::Common::URI::RFC1808::BEGIN@27 |
39 | |||||
40 | 2 | 320µs | 2 | 1.55ms | # spent 785µs (17+768) within Regexp::Common::URI::RFC1808::BEGIN@40 which was called:
# once (17µs+768µs) by Regexp::Common::URI::gopher::BEGIN@6 at line 40 # spent 785µs making 1 call to Regexp::Common::URI::RFC1808::BEGIN@40
# spent 768µs making 1 call to vars::import |
41 | |||||
42 | 1 | 2µs | @EXPORT = qw /$host/; | ||
43 | 1 | 16µs | @EXPORT_OK = map {@$_} values %vars; | ||
44 | 1 | 6µs | %EXPORT_TAGS = (%vars, ALL => [@EXPORT_OK]); | ||
45 | |||||
46 | # RFC 1808, base definitions. | ||||
47 | |||||
48 | # Lowlevel definitions. | ||||
49 | 1 | 1µs | $punctuation = '[<>#%"]'; | ||
50 | 1 | 1µs | $reserved_range = q [;/?:@&=]; | ||
51 | 1 | 2µs | $reserved = "[$reserved_range]"; | ||
52 | 1 | 1µs | $national = '[][{}|\\^~`]'; | ||
53 | 1 | 700ns | $extra = "[!*'(),]"; | ||
54 | 1 | 1µs | $safe = '[-$_.+]'; | ||
55 | |||||
56 | 1 | 1µs | $digit = '[0-9]'; | ||
57 | 1 | 1µs | $digits = '[0-9]+'; | ||
58 | 1 | 1µs | $hialpha = '[A-Z]'; | ||
59 | 1 | 800ns | $lowalpha = '[a-z]'; | ||
60 | 1 | 1µs | $alpha = '[a-zA-Z]'; # lowalpha | hialpha | ||
61 | 1 | 1µs | $alphadigit = '[a-zA-Z0-9]'; # alpha | digit | ||
62 | |||||
63 | 1 | 1µs | $hex = '[a-fA-F0-9]'; | ||
64 | 1 | 2µs | $escape = "(?:%$hex$hex)"; | ||
65 | |||||
66 | 1 | 1µs | $unreserved_range = q [-a-zA-Z0-9$_.+!*'(),]; # alphadigit | safe | extra | ||
67 | 1 | 2µs | $unreserved = "[$unreserved_range]"; | ||
68 | 1 | 2µs | $uchar = "(?:$unreserved|$escape)"; | ||
69 | 1 | 2µs | $uchars = "(?:(?:$unreserved+|$escape)*)"; | ||
70 | |||||
71 | 1 | 1µs | $pchar_range = qq [$unreserved_range:\@&=]; | ||
72 | 1 | 2µs | $pchar = "(?:[$pchar_range]|$escape)"; | ||
73 | 1 | 2µs | $pchars = "(?:(?:[$pchar_range]+|$escape)*)"; | ||
74 | |||||
75 | |||||
76 | # Parts | ||||
77 | 1 | 2µs | $fragment = "(?:(?:[$unreserved_range$reserved_range]+|$escape)*)"; | ||
78 | 1 | 2µs | $query = "(?:(?:[$unreserved_range$reserved_range]+|$escape)*)"; | ||
79 | |||||
80 | 1 | 2µs | $param = "(?:(?:[$pchar_range/]+|$escape)*)"; | ||
81 | 1 | 2µs | $params = "(?:$param(?:;$param)*)"; | ||
82 | |||||
83 | 1 | 2µs | $segment = "(?:(?:[$pchar_range]+|$escape)*)"; | ||
84 | 1 | 2µs | $fsegment = "(?:(?:[$pchar_range]+|$escape)+)"; | ||
85 | 1 | 2µs | $path = "(?:$fsegment(?:/$segment)*)"; | ||
86 | |||||
87 | 1 | 2µs | $net_loc = "(?:(?:[$pchar_range;?]+|$escape)*)"; | ||
88 | 1 | 2µs | $scheme = "(?:(?:[-a-zA-Z0-9+.]+|$escape)+)"; | ||
89 | |||||
90 | 1 | 2µs | $rel_path = "(?:$path?(?:;$params)?(?:?$query)?)"; | ||
91 | 1 | 2µs | $abs_path = "(?:/$rel_path)"; | ||
92 | 1 | 2µs | $net_path = "(?://$net_loc$abs_path?)"; | ||
93 | |||||
94 | 1 | 3µs | $relativeURL = "(?:$net_path|$abs_path|$rel_path)"; | ||
95 | 1 | 4µs | $generic_RL = "(?:$scheme:$relativeURL)"; | ||
96 | 1 | 5µs | $absoluteURL = "(?:$generic_RL|" . | ||
97 | "(?:$scheme:(?:[$unreserved_range$reserved_range]+|$escape)*))"; | ||||
98 | 1 | 6µs | $URL = "(?:(?:$absoluteURL|$relativeURL)(?:#$fragment)?)"; | ||
99 | |||||
100 | |||||
101 | 1 | 31µs | 1; | ||
102 | |||||
103 | __END__ |