← Index
NYTProf Performance Profile   « block view • line view • sub view »
For bin/hailo
  Run on Thu Oct 21 22:50:37 2010
Reported on Thu Oct 21 22:52:04 2010

Filename/home/hinrik/perl5/perlbrew/perls/perl-5.13.5/lib/5.13.5/x86_64-linux/Encode/Encoding.pm
StatementsExecuted 1018 statements in 6.62ms
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
95918344.49ms4.49msEncode::Encoding::::renewedEncode::Encoding::renewed
773110µs130µsEncode::Encoding::::renewEncode::Encoding::renew
11129µs34µsEncode::Encoding::::BEGIN@4Encode::Encoding::BEGIN@4
77320µs20µsEncode::Encoding::::needs_linesEncode::Encoding::needs_lines
71120µs20µsEncode::Encoding::::DEBUGEncode::Encoding::DEBUG
11111µs22µsEncode::Encoding::::BEGIN@5Encode::Encoding::BEGIN@5
1115µs5µsEncode::Encoding::::CORE:matchEncode::Encoding::CORE:match (opcode)
0000s0sEncode::Encoding::::DESTROYEncode::Encoding::DESTROY
0000s0sEncode::Encoding::::DefineEncode::Encoding::Define
0000s0sEncode::Encoding::::decodeEncode::Encoding::decode
0000s0sEncode::Encoding::::encodeEncode::Encoding::encode
0000s0sEncode::Encoding::::fromUnicodeEncode::Encoding::fromUnicode
0000s0sEncode::Encoding::::mime_nameEncode::Encoding::mime_name
0000s0sEncode::Encoding::::nameEncode::Encoding::name
0000s0sEncode::Encoding::::perlio_okEncode::Encoding::perlio_ok
0000s0sEncode::Encoding::::toUnicodeEncode::Encoding::toUnicode
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package Encode::Encoding;
2
3# Base class for classes which implement encodings
4228µs240µs
# spent 34µs (29+6) within Encode::Encoding::BEGIN@4 which was called: # once (29µs+6µs) by Encode::predefine_encodings at line 4
use strict;
# spent 34µs making 1 call to Encode::Encoding::BEGIN@4 # spent 6µs making 1 call to strict::import
52380µs232µs
# spent 22µs (11+11) within Encode::Encoding::BEGIN@5 which was called: # once (11µs+11µs) by Encode::predefine_encodings at line 5
use warnings;
# spent 22µs making 1 call to Encode::Encoding::BEGIN@5 # spent 11µs making 1 call to warnings::import
6320µs15µsour $VERSION = do { my @r = ( q$Revision: 2.5 $ =~ /\d+/g ); sprintf "%d." . "%02d" x $#r, @r };
# spent 5µs making 1 call to Encode::Encoding::CORE:match
7
811µsrequire Encode;
9
10727µs
# spent 20µs within Encode::Encoding::DEBUG which was called 7 times, avg 3µs/call: # 7 times (20µs+0s) by Encode::Encoding::renew at line 34, avg 3µs/call
sub DEBUG { 0 }
11
12sub Define {
13 my $obj = shift;
14 my $canonical = shift;
15 $obj = bless { Name => $canonical }, $obj unless ref $obj;
16
17 # warn "$canonical => $obj\n";
18 Encode::define_encoding( $obj, $canonical, @_ );
19}
20
21sub name { return shift->{'Name'} }
22
23sub mime_name{
24 require Encode::MIME::Name;
25 return Encode::MIME::Name::get_mime_name(shift->name);
26}
27
28# sub renew { return $_[0] }
29
30
# spent 130µs (110+20) within Encode::Encoding::renew which was called 7 times, avg 19µs/call: # once (21µs+3µs) by hailo::BEGIN@8 at line 8 of bin/hailo # once (18µs+3µs) by Hailo::CORE:open at line 109 of (eval 29)[Fatal.pm:1102] # once (17µs+3µs) by hailo::BEGIN@6 at line 6 of bin/hailo # once (16µs+3µs) by open::CORE:binmode at line 117 of open.pm # once (13µs+3µs) by hailo::BEGIN@5 at line 5 of bin/hailo # once (13µs+2µs) by open::CORE:binmode at line 128 of open.pm # once (12µs+3µs) by open::CORE:binmode at line 129 of open.pm
sub renew {
3135114µs my $self = shift;
32 my $clone = bless {%$self} => ref($self);
33 $clone->{renewed}++; # so the caller can see it
34720µs DEBUG and warn $clone->{renewed};
# spent 20µs making 7 calls to Encode::Encoding::DEBUG, avg 3µs/call
35 return $clone;
36}
37
389596.01ms
# spent 4.49ms within Encode::Encoding::renewed which was called 959 times, avg 5µs/call: # 773 times (3.88ms+0s) by Encode::utf8::decode_xs at line 331 of lib/Hailo/Command.pm, avg 5µs/call # 4 times (12µs+0s) by Encode::utf8::decode_xs at line 174 of Encode.pm, avg 3µs/call # 2 times (6µs+0s) by Encode::utf8::decode_xs at line 182 of Any/Moose.pm, avg 3µs/call # once (14µs+0s) by Encode::utf8::decode_xs at line 407 of lib/Hailo/Command.pm # once (6µs+0s) by Encode::utf8::decode_xs at line 420 of lib/Hailo/Command.pm # once (6µs+0s) by Encode::utf8::decode_xs at line 233 of lib/Hailo/Command.pm # once (6µs+0s) by Encode::utf8::decode_xs at line 267 of Any/Moose.pm # once (6µs+0s) by Encode::utf8::decode_xs at line 8 of Dir/Self.pm # once (5µs+0s) by Encode::utf8::decode_xs at line 1 of lib/Hailo/Command.pm # once (5µs+0s) by Encode::utf8::decode_xs at line 9 of lib/Hailo/Command.pm # once (4µs+0s) by Encode::utf8::decode_xs at line 1 of Dir/Self.pm # once (4µs+0s) by Encode::utf8::decode_xs at line 383 of lib/Hailo/Command.pm # once (4µs+0s) by Encode::utf8::decode_xs at line 1 of Any/Moose.pm # once (4µs+0s) by Encode::utf8::decode_xs at line 197 of Any/Moose.pm # once (4µs+0s) by Encode::utf8::decode_xs at line 6 of Dir/Self.pm # once (4µs+0s) by Encode::utf8::decode_xs at line 53 of Any/Moose.pm # once (4µs+0s) by Encode::utf8::decode_xs at line 73 of Any/Moose.pm # once (4µs+0s) by Encode::utf8::decode_xs at line 144 of lib/Hailo/Command.pm # once (4µs+0s) by Encode::utf8::decode_xs at line 305 of lib/Hailo/Command.pm # once (4µs+0s) by Encode::utf8::decode_xs at line 28 of Dir/Self.pm # once (4µs+0s) by Encode::utf8::decode_xs at line 118 of Any/Moose.pm # once (4µs+0s) by Encode::utf8::decode_xs at line 328 of lib/Hailo/Command.pm # once (4µs+0s) by Encode::utf8::decode_xs at line 300 of lib/Hailo/Command.pm # once (4µs+0s) by Encode::utf8::decode_xs at line 217 of lib/Hailo/Command.pm # once (4µs+0s) by Encode::utf8::decode_xs at line 17 of Dir/Self.pm # once (4µs+0s) by Encode::utf8::decode_xs at line 222 of Any/Moose.pm # once (4µs+0s) by Encode::utf8::decode_xs at line 216 of Any/Moose.pm # once (4µs+0s) by Encode::utf8::decode_xs at line 131 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 102 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 68 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 202 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 135 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 145 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 245 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 47 of Dir/Self.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 65 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 59 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 21 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 184 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 386 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 107 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 290 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 340 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 370 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 389 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 21 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 7 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 56 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 141 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 221 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 309 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 402 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 338 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 45 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 301 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 398 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 32 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 360 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 239 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 356 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 34 of Dir/Self.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 23 of Dir/Self.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 10 of Dir/Self.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 163 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 148 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 219 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 176 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 71 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 277 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 62 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 249 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 200 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 244 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 11 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 91 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 208 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 78 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 49 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 314 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 121 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 296 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 80 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 15 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 346 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 116 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 32 of Dir/Self.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 125 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 302 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 236 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 255 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 295 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 321 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 237 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 346 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 315 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 339 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 310 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 318 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 213 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 343 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 287 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 260 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 353 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 268 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 159 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 98 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 99 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 228 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 3 of Dir/Self.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 276 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 331 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 324 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 233 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 287 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 167 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 349 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 138 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 247 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 309 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 327 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 320 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 150 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 271 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 235 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 169 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 171 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 424 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 413 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 157 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 197 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 41 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 49 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 426 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 411 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 243 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 231 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 225 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 290 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 293 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 252 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 268 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 239 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 257 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 96 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 428 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 11 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 263 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 405 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 435 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 372 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 171 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 110 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 89 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 246 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 230 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 261 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 211 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 241 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 273 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 249 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 265 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 118 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 430 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 409 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 293 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 3 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 275 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 418 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 341 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 258 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 348 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 326 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 279 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 349 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 210 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 13 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 323 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 178 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 416 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 392 of lib/Hailo/Command.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 343 of Any/Moose.pm # once (3µs+0s) by Encode::utf8::decode_xs at line 333 of Any/Moose.pm # once (2µs+0s) by Encode::utf8::decode_xs at line 432 of lib/Hailo/Command.pm
sub renewed { return $_[0]->{renewed} || 0 }
39
4012µs*new_sequence = \&renew;
41
42732µs
# spent 20µs within Encode::Encoding::needs_lines which was called 7 times, avg 3µs/call: # once (3µs+0s) by hailo::BEGIN@8 at line 8 of bin/hailo # once (3µs+0s) by Hailo::CORE:open at line 109 of (eval 29)[Fatal.pm:1102] # once (3µs+0s) by open::CORE:binmode at line 117 of open.pm # once (3µs+0s) by hailo::BEGIN@6 at line 6 of bin/hailo # once (3µs+0s) by open::CORE:binmode at line 128 of open.pm # once (3µs+0s) by hailo::BEGIN@5 at line 5 of bin/hailo # once (3µs+0s) by open::CORE:binmode at line 129 of open.pm
sub needs_lines { 0 }
43
44sub perlio_ok {
45 eval { require PerlIO::encoding };
46 return $@ ? 0 : 1;
47}
48
49# (Temporary|legacy) methods
50
51sub toUnicode { shift->decode(@_) }
52sub fromUnicode { shift->encode(@_) }
53
54#
55# Needs to be overloaded or just croak
56#
57
58sub encode {
59 require Carp;
60 my $obj = shift;
61 my $class = ref($obj) ? ref($obj) : $obj;
62 Carp::croak( $class . "->encode() not defined!" );
63}
64
65sub decode {
66 require Carp;
67 my $obj = shift;
68 my $class = ref($obj) ? ref($obj) : $obj;
69 Carp::croak( $class . "->encode() not defined!" );
70}
71
72sub DESTROY { }
73
7416µs1;
75__END__
 
# spent 5µs within Encode::Encoding::CORE:match which was called: # once (5µs+0s) by Encode::predefine_encodings at line 6
sub Encode::Encoding::CORE:match; # opcode