← Index
NYTProf Performance Profile   « line view »
For ./view
  Run on Fri Jul 31 18:42:36 2015
Reported on Fri Jul 31 18:48:15 2015

Filename/var/www/foswikidev/core/lib/Foswiki/Query/OP_div.pm
StatementsExecuted 14 statements in 240µs
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
31138µs51µsFoswiki::Query::OP_div::::newFoswiki::Query::OP_div::new
11115µs20µsFoswiki::Query::OP_div::::BEGIN@12Foswiki::Query::OP_div::BEGIN@12
11114µs26µsFoswiki::Query::OP_div::::BEGIN@11Foswiki::Query::OP_div::BEGIN@11
1114µs4µsFoswiki::Query::OP_div::::BEGIN@14Foswiki::Query::OP_div::BEGIN@14
0000s0sFoswiki::Query::OP_div::::evaluateFoswiki::Query::OP_div::evaluate
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1# See bottom of file for license and copyright information
2
3=begin TML
4
5---+ package Foswiki::Query::OP_div
6
7=cut
8
9package Foswiki::Query::OP_div;
10
11249µs238µs
# spent 26µs (14+12) within Foswiki::Query::OP_div::BEGIN@11 which was called: # once (14µs+12µs) by Foswiki::Query::Parser::BEGIN@56 at line 11
use strict;
# spent 26µs making 1 call to Foswiki::Query::OP_div::BEGIN@11 # spent 12µs making 1 call to strict::import
12227µs224µs
# spent 20µs (15+4) within Foswiki::Query::OP_div::BEGIN@12 which was called: # once (15µs+4µs) by Foswiki::Query::Parser::BEGIN@56 at line 12
use warnings;
# spent 20µs making 1 call to Foswiki::Query::OP_div::BEGIN@12 # spent 4µs making 1 call to warnings::import
13
142121µs14µs
# spent 4µs within Foswiki::Query::OP_div::BEGIN@14 which was called: # once (4µs+0s) by Foswiki::Query::Parser::BEGIN@56 at line 14
use Foswiki::Query::OP ();
# spent 4µs making 1 call to Foswiki::Query::OP_div::BEGIN@14
1516µsour @ISA = ('Foswiki::Query::OP');
16
17
# spent 51µs (38+13) within Foswiki::Query::OP_div::new which was called 3 times, avg 17µs/call: # 3 times (38µs+13µs) by Foswiki::Query::Parser::new at line 112 of /var/www/foswikidev/core/lib/Foswiki/Query/Parser.pm, avg 17µs/call
sub new {
1832µs my $class = shift;
19332µs313µs return $class->SUPER::new( arity => 2, name => 'div', prec => 700 );
# spent 13µs making 3 calls to Foswiki::Query::OP::new, avg 4µs/call
20}
21
22sub evaluate {
23 my $this = shift;
24 my $node = shift;
25
26 # Item10889: The short-circuit || 0 is probably okay, '/' is numeric anyway
27 my $a = $node->{params}[0]->evaluate(@_) || 0;
28 my $b = $node->{params}[1]->evaluate(@_) || 0;
29
30 return 0
31 unless ( Foswiki::Query::OP::isNumber($a)
32 && Foswiki::Query::OP::isNumber($b) );
33 return $a / $b;
34}
35
3613µs1;
37__END__