← Index
NYTProf Performance Profile   « block view • line view • sub view »
For /usr/share/koha/opac/cgi-bin/opac/opac-search.pl
  Run on Tue Oct 15 11:58:52 2013
Reported on Tue Oct 15 12:01:14 2013

Filename/usr/share/perl/5.10/FileHandle.pm
StatementsExecuted 84 statements in 692µs
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
22251µs1.30msFileHandle::::importFileHandle::import
11140µs40µsFileHandle::::BEGIN@3FileHandle::BEGIN@3
11112µs19µsFileHandle::::BEGIN@4FileHandle::BEGIN@4
11111µs33µsFileHandle::::BEGIN@46FileHandle::BEGIN@46
0000s0sFileHandle::::pipeFileHandle::pipe
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package FileHandle;
2
3355µs140µs
# spent 40µs within FileHandle::BEGIN@3 which was called: # once (40µs+0s) by Module::Load::Conditional::BEGIN@11 at line 3
use 5.006;
# spent 40µs making 1 call to FileHandle::BEGIN@3
43151µs226µs
# spent 19µs (12+7) within FileHandle::BEGIN@4 which was called: # once (12µs+7µs) by Module::Load::Conditional::BEGIN@11 at line 4
use strict;
# spent 19µs making 1 call to FileHandle::BEGIN@4 # spent 7µs making 1 call to strict::import
511µsour($VERSION, @ISA, @EXPORT, @EXPORT_OK);
6
71700ns$VERSION = "2.02";
8
912µsrequire IO::File;
10122µs@ISA = qw(IO::File);
11
1211µs@EXPORT = qw(_IOFBF _IOLBF _IONBF);
13
1413µs@EXPORT_OK = qw(
15 pipe
16
17 autoflush
18 output_field_separator
19 output_record_separator
20 input_record_separator
21 input_line_number
22 format_page_number
23 format_lines_per_page
24 format_lines_left
25 format_name
26 format_top_name
27 format_line_break_characters
28 format_formfeed
29
30 print
31 printf
32 getline
33 getlines
34);
35
36#
37# Everything we're willing to export, we must first import.
38#
39120µs1231µsimport IO::Handle grep { !defined(&$_) } @EXPORT, @EXPORT_OK;
# spent 231µs making 1 call to Exporter::import
40
41#
42# Some people call "FileHandle::function", so all the functions
43# that were in the old FileHandle class must be imported, too.
44#
45{
464271µs255µs
# spent 33µs (11+22) within FileHandle::BEGIN@46 which was called: # once (11µs+22µs) by Module::Load::Conditional::BEGIN@11 at line 46
no strict 'refs';
# spent 33µs making 1 call to FileHandle::BEGIN@46 # spent 22µs making 1 call to strict::unimport
47
48210µs my %import = (
49 'IO::Handle' =>
50 [qw(DESTROY new_from_fd fdopen close fileno getc ungetc gets
51 eof flush error clearerr setbuf setvbuf _open_mode_string)],
52 'IO::Seekable' =>
53 [qw(seek tell getpos setpos)],
54 'IO::File' =>
55 [qw(new new_tmpfile open)]
56 );
57 for my $pkg (keys %import) {
5834µs for my $func (@{$import{$pkg}}) {
594483µs my $c = *{"${pkg}::$func"}{CODE}
60 or die "${pkg}::$func missing";
61 *$func = $c;
62 }
63 }
64}
65
66#
67# Specialized importer for Fcntl magic.
68#
69
# spent 1.30ms (51µs+1.25) within FileHandle::import which was called 2 times, avg 651µs/call: # once (30µs+716µs) by Storable::BEGIN@23 at line 23 of Storable.pm # once (21µs+535µs) by MIME::Lite::BEGIN@331 at line 331 of MIME/Lite.pm
sub import {
701030µs my $pkg = shift;
71 my $callpkg = caller;
72 require Exporter;
73254µs Exporter::export($pkg, $callpkg, @_);
# spent 54µs making 2 calls to Exporter::export, avg 27µs/call
74
75 #
76 # If the Fcntl extension is available,
77 # export its constants.
78 #
7948µs eval {
80 require Fcntl;
81226µs Exporter::export('Fcntl', $callpkg);
# spent 26µs making 2 calls to Exporter::export, avg 13µs/call
82 };
83}
84
85################################################
86# This is the only exported function we define;
87# the rest come from other classes.
88#
89
90sub pipe {
91 my $r = new IO::Handle;
92 my $w = new IO::Handle;
93 CORE::pipe($r, $w) or return undef;
94 ($r, $w);
95}
96
97# Rebless standard file handles
9818µsbless *STDIN{IO}, "FileHandle" if ref *STDIN{IO} eq "IO::Handle";
9911µsbless *STDOUT{IO}, "FileHandle" if ref *STDOUT{IO} eq "IO::Handle";
10011µsbless *STDERR{IO}, "FileHandle" if ref *STDERR{IO} eq "IO::Handle";
101
102122µs1;
103
104__END__