← Index
NYTProf Performance Profile   « block view • line view • sub view »
For 01.HTTP.t
  Run on Tue May 4 14:17:45 2010
Reported on Tue May 4 14:18:09 2010

File /usr/local/lib/perl5/site_perl/5.10.1/darwin-2level/XML/LibXML/Boolean.pm
Statements Executed 17
Statement Execution Time 372µs
Subroutines — ordered by exclusive time
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
111401µs997µsXML::LibXML::Boolean::::BEGIN@12XML::LibXML::Boolean::BEGIN@12
11119µs43µsXML::LibXML::Boolean::::BEGIN@21XML::LibXML::Boolean::BEGIN@21
1117µs10µsXML::LibXML::Boolean::::BEGIN@14XML::LibXML::Boolean::BEGIN@14
1116µs24µsXML::LibXML::Boolean::::BEGIN@16XML::LibXML::Boolean::BEGIN@16
1114µs4µsXML::LibXML::Boolean::::BEGIN@13XML::LibXML::Boolean::BEGIN@13
0000s0sXML::LibXML::Boolean::::FalseXML::LibXML::Boolean::False
0000s0sXML::LibXML::Boolean::::TrueXML::LibXML::Boolean::True
0000s0sXML::LibXML::Boolean::::cmpXML::LibXML::Boolean::cmp
0000s0sXML::LibXML::Boolean::::newXML::LibXML::Boolean::new
0000s0sXML::LibXML::Boolean::::string_valueXML::LibXML::Boolean::string_value
0000s0sXML::LibXML::Boolean::::to_booleanXML::LibXML::Boolean::to_boolean
0000s0sXML::LibXML::Boolean::::to_literalXML::LibXML::Boolean::to_literal
0000s0sXML::LibXML::Boolean::::to_numberXML::LibXML::Boolean::to_number
0000s0sXML::LibXML::Boolean::::valueXML::LibXML::Boolean::value
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1# $Id: Boolean.pm 785 2009-07-16 14:17:46Z pajas $
2#
3#
4# This is free software, you may use it and distribute it under the same terms as
5# Perl itself.
6#
7# Copyright 2001-2003 AxKit.com Ltd., 2002-2006 Christian Glahn, 2006-2009 Petr Pajas
8#
9#
10
11package XML::LibXML::Boolean;
12394µs1997µs
# spent 997µs (401+596) within XML::LibXML::Boolean::BEGIN@12 which was called # once (401µs+596µs) by XML::LibXML::NodeList::BEGIN@12 at line 12
use XML::LibXML::Number;
# spent 997µs making 1 call to XML::LibXML::Boolean::BEGIN@12
13317µs14µs
# spent 4µs within XML::LibXML::Boolean::BEGIN@13 which was called # once (4µs+0s) by XML::LibXML::NodeList::BEGIN@12 at line 13
use XML::LibXML::Literal;
# spent 4µs making 1 call to XML::LibXML::Boolean::BEGIN@13
14320µs212µs
# spent 10µs (7+3) within XML::LibXML::Boolean::BEGIN@14 which was called # once (7µs+3µs) by XML::LibXML::NodeList::BEGIN@12 at line 14
use strict;
# spent 10µs making 1 call to XML::LibXML::Boolean::BEGIN@14 # spent 3µs making 1 call to strict::import
15
16335µs241µs
# spent 24µs (6+18) within XML::LibXML::Boolean::BEGIN@16 which was called # once (6µs+18µs) by XML::LibXML::NodeList::BEGIN@12 at line 16
use vars qw ($VERSION);
# spent 24µs making 1 call to XML::LibXML::Boolean::BEGIN@16 # spent 18µs making 1 call to vars::import
17
181500ns$VERSION = "1.70"; # VERSION TEMPLATE: DO NOT CHANGE
19
20use overload
21
# spent 43µs (19+24) within XML::LibXML::Boolean::BEGIN@21 which was called # once (19µs+24µs) by XML::LibXML::NodeList::BEGIN@12 at line 22
'""' => \&value,
# spent 24µs making 1 call to overload::import
223201µs143µs '<=>' => \&cmp;
# spent 43µs making 1 call to XML::LibXML::Boolean::BEGIN@21
23
24sub new {
25 my $class = shift;
26 my ($param) = @_;
27 my $val = $param ? 1 : 0;
28 bless \$val, $class;
29}
30
31sub True {
32 my $class = shift;
33 my $val = 1;
34 bless \$val, $class;
35}
36
37sub False {
38 my $class = shift;
39 my $val = 0;
40 bless \$val, $class;
41}
42
43sub value {
44 my $self = shift;
45 $$self;
46}
47
48sub cmp {
49 my $self = shift;
50 my ($other, $swap) = @_;
51 if ($swap) {
52 return $other <=> $$self;
53 }
54 return $$self <=> $other;
55}
56
57sub to_number { XML::LibXML::Number->new($_[0]->value); }
58sub to_boolean { $_[0]; }
59sub to_literal { XML::LibXML::Literal->new($_[0]->value ? "true" : "false"); }
60
61sub string_value { return $_[0]->to_literal->value; }
62
6313µs1;
64__END__
65
66=head1 NAME
67
68XML::LibXML::Boolean - Boolean true/false values
69
70=head1 DESCRIPTION
71
72XML::LibXML::Boolean objects implement simple boolean true/false objects.
73
74=head1 API
75
76=head2 XML::LibXML::Boolean->True
77
78Creates a new Boolean object with a true value.
79
80=head2 XML::LibXML::Boolean->False
81
82Creates a new Boolean object with a false value.
83
84=head2 value()
85
86Returns true or false.
87
88=head2 to_literal()
89
90Returns the string "true" or "false".
91
92=cut