| Filename | /usr/lib/perl5/XML/LibXML/Error.pm |
| Statements | Executed 104 statements in 3.49ms |
| Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
|---|---|---|---|---|---|
| 1 | 1 | 1 | 43µs | 53µs | XML::LibXML::Error::BEGIN@11 |
| 1 | 1 | 1 | 37µs | 190µs | XML::LibXML::Error::BEGIN@15 |
| 1 | 1 | 1 | 28µs | 160µs | XML::LibXML::Error::BEGIN@13 |
| 1 | 1 | 1 | 28µs | 107µs | XML::LibXML::Error::BEGIN@34 |
| 1 | 1 | 1 | 26µs | 125µs | XML::LibXML::Error::BEGIN@42 |
| 1 | 1 | 1 | 26µs | 130µs | XML::LibXML::Error::BEGIN@29 |
| 1 | 1 | 1 | 26µs | 125µs | XML::LibXML::Error::BEGIN@36 |
| 1 | 1 | 1 | 24µs | 101µs | XML::LibXML::Error::BEGIN@225 |
| 1 | 1 | 1 | 22µs | 132µs | XML::LibXML::Error::BEGIN@27 |
| 1 | 1 | 1 | 21µs | 117µs | XML::LibXML::Error::BEGIN@28 |
| 1 | 1 | 1 | 21µs | 102µs | XML::LibXML::Error::BEGIN@37 |
| 1 | 1 | 1 | 20µs | 78µs | XML::LibXML::Error::BEGIN@30 |
| 1 | 1 | 1 | 19µs | 117µs | XML::LibXML::Error::BEGIN@35 |
| 1 | 1 | 1 | 19µs | 76µs | XML::LibXML::Error::BEGIN@39 |
| 1 | 1 | 1 | 19µs | 73µs | XML::LibXML::Error::BEGIN@38 |
| 1 | 1 | 1 | 19µs | 134µs | XML::LibXML::Error::BEGIN@12 |
| 1 | 1 | 1 | 17µs | 75µs | XML::LibXML::Error::BEGIN@41 |
| 1 | 1 | 1 | 17µs | 77µs | XML::LibXML::Error::BEGIN@32 |
| 1 | 1 | 1 | 17µs | 87µs | XML::LibXML::Error::BEGIN@43 |
| 1 | 1 | 1 | 16µs | 87µs | XML::LibXML::Error::BEGIN@44 |
| 1 | 1 | 1 | 14µs | 84µs | XML::LibXML::Error::BEGIN@47 |
| 1 | 1 | 1 | 14µs | 90µs | XML::LibXML::Error::BEGIN@40 |
| 1 | 1 | 1 | 14µs | 69µs | XML::LibXML::Error::BEGIN@33 |
| 1 | 1 | 1 | 14µs | 45µs | XML::LibXML::Error::BEGIN@50 |
| 1 | 1 | 1 | 13µs | 59µs | XML::LibXML::Error::BEGIN@48 |
| 1 | 1 | 1 | 13µs | 56µs | XML::LibXML::Error::BEGIN@45 |
| 1 | 1 | 1 | 12µs | 78µs | XML::LibXML::Error::BEGIN@46 |
| 1 | 1 | 1 | 12µs | 55µs | XML::LibXML::Error::BEGIN@49 |
| 1 | 1 | 1 | 11µs | 46µs | XML::LibXML::Error::BEGIN@52 |
| 1 | 1 | 1 | 10µs | 46µs | XML::LibXML::Error::BEGIN@54 |
| 1 | 1 | 1 | 9µs | 41µs | XML::LibXML::Error::BEGIN@55 |
| 1 | 1 | 1 | 9µs | 40µs | XML::LibXML::Error::BEGIN@53 |
| 1 | 1 | 1 | 9µs | 45µs | XML::LibXML::Error::BEGIN@51 |
| 0 | 0 | 0 | 0s | 0s | XML::LibXML::Error::AUTOLOAD |
| 0 | 0 | 0 | 0s | 0s | XML::LibXML::Error::DESTROY |
| 0 | 0 | 0 | 0s | 0s | XML::LibXML::Error::__ANON__[:18] |
| 0 | 0 | 0 | 0s | 0s | XML::LibXML::Error::__ANON__[:21] |
| 0 | 0 | 0 | 0s | 0s | XML::LibXML::Error::_callback_error |
| 0 | 0 | 0 | 0s | 0s | XML::LibXML::Error::_instant_error_callback |
| 0 | 0 | 0 | 0s | 0s | XML::LibXML::Error::_report_error |
| 0 | 0 | 0 | 0s | 0s | XML::LibXML::Error::_report_warning |
| 0 | 0 | 0 | 0s | 0s | XML::LibXML::Error::as_string |
| 0 | 0 | 0 | 0s | 0s | XML::LibXML::Error::domain |
| 0 | 0 | 0 | 0s | 0s | XML::LibXML::Error::dump |
| 0 | 0 | 0 | 0s | 0s | XML::LibXML::Error::int1 |
| 0 | 0 | 0 | 0s | 0s | XML::LibXML::Error::int2 |
| 0 | 0 | 0 | 0s | 0s | XML::LibXML::Error::new |
| Line | State ments |
Time on line |
Calls | Time in subs |
Code |
|---|---|---|---|---|---|
| 1 | # $Id: Error.pm,v 1.1.2.1 2004/04/20 20:09:48 pajas Exp $ | ||||
| 2 | # | ||||
| 3 | # This is free software, you may use it and distribute it under the same terms as | ||||
| 4 | # Perl itself. | ||||
| 5 | # | ||||
| 6 | # Copyright 2001-2003 AxKit.com Ltd., 2002-2006 Christian Glahn, 2006-2009 Petr Pajas | ||||
| 7 | # | ||||
| 8 | # | ||||
| 9 | package XML::LibXML::Error; | ||||
| 10 | |||||
| 11 | 3 | 66µs | 2 | 63µs | # spent 53µs (43+10) within XML::LibXML::Error::BEGIN@11 which was called:
# once (43µs+10µs) by XML::LibXML::BEGIN@23 at line 11 # spent 53µs making 1 call to XML::LibXML::Error::BEGIN@11
# spent 10µs making 1 call to strict::import |
| 12 | 3 | 82µs | 2 | 248µs | # spent 134µs (19+115) within XML::LibXML::Error::BEGIN@12 which was called:
# once (19µs+115µs) by XML::LibXML::BEGIN@23 at line 12 # spent 134µs making 1 call to XML::LibXML::Error::BEGIN@12
# spent 115µs making 1 call to vars::import |
| 13 | 3 | 217µs | 2 | 292µs | # spent 160µs (28+132) within XML::LibXML::Error::BEGIN@13 which was called:
# once (28µs+132µs) by XML::LibXML::BEGIN@23 at line 13 # spent 160µs making 1 call to XML::LibXML::Error::BEGIN@13
# spent 132µs making 1 call to Exporter::import |
| 14 | use overload | ||||
| 15 | # spent 190µs (37+153) within XML::LibXML::Error::BEGIN@15 which was called:
# once (37µs+153µs) by XML::LibXML::BEGIN@23 at line 22 | ||||
| 16 | 'eq' => sub { | ||||
| 17 | ("$_[0]" eq "$_[1]") | ||||
| 18 | }, | ||||
| 19 | 'cmp' => sub { | ||||
| 20 | ("$_[0]" cmp "$_[1]") | ||||
| 21 | }, | ||||
| 22 | 3 | 137µs | 2 | 344µs | fallback => 1; # spent 190µs making 1 call to XML::LibXML::Error::BEGIN@15
# spent 153µs making 1 call to overload::import |
| 23 | |||||
| 24 | 1 | 700ns | $WARNINGS = 0; # 0: supress, 1: report via warn, 2: report via die | ||
| 25 | 1 | 600ns | $VERSION = "1.70"; # VERSION TEMPLATE: DO NOT CHANGE | ||
| 26 | |||||
| 27 | 3 | 57µs | 2 | 243µs | # spent 132µs (22+111) within XML::LibXML::Error::BEGIN@27 which was called:
# once (22µs+111µs) by XML::LibXML::BEGIN@23 at line 27 # spent 132µs making 1 call to XML::LibXML::Error::BEGIN@27
# spent 111µs making 1 call to constant::import |
| 28 | 3 | 84µs | 2 | 213µs | # spent 117µs (21+96) within XML::LibXML::Error::BEGIN@28 which was called:
# once (21µs+96µs) by XML::LibXML::BEGIN@23 at line 28 # spent 117µs making 1 call to XML::LibXML::Error::BEGIN@28
# spent 96µs making 1 call to constant::import |
| 29 | 3 | 80µs | 2 | 233µs | # spent 130µs (26+103) within XML::LibXML::Error::BEGIN@29 which was called:
# once (26µs+103µs) by XML::LibXML::BEGIN@23 at line 29 # spent 130µs making 1 call to XML::LibXML::Error::BEGIN@29
# spent 103µs making 1 call to constant::import |
| 30 | 3 | 57µs | 2 | 137µs | # spent 78µs (20+59) within XML::LibXML::Error::BEGIN@30 which was called:
# once (20µs+59µs) by XML::LibXML::BEGIN@23 at line 30 # spent 78µs making 1 call to XML::LibXML::Error::BEGIN@30
# spent 59µs making 1 call to constant::import |
| 31 | |||||
| 32 | 3 | 46µs | 2 | 136µs | # spent 77µs (17+60) within XML::LibXML::Error::BEGIN@32 which was called:
# once (17µs+60µs) by XML::LibXML::BEGIN@23 at line 32 # spent 77µs making 1 call to XML::LibXML::Error::BEGIN@32
# spent 60µs making 1 call to constant::import |
| 33 | 3 | 69µs | 2 | 124µs | # spent 69µs (14+55) within XML::LibXML::Error::BEGIN@33 which was called:
# once (14µs+55µs) by XML::LibXML::BEGIN@23 at line 33 # spent 69µs making 1 call to XML::LibXML::Error::BEGIN@33
# spent 55µs making 1 call to constant::import |
| 34 | 3 | 61µs | 2 | 187µs | # spent 107µs (28+80) within XML::LibXML::Error::BEGIN@34 which was called:
# once (28µs+80µs) by XML::LibXML::BEGIN@23 at line 34 # spent 107µs making 1 call to XML::LibXML::Error::BEGIN@34
# spent 80µs making 1 call to constant::import |
| 35 | 3 | 84µs | 2 | 214µs | # spent 117µs (19+97) within XML::LibXML::Error::BEGIN@35 which was called:
# once (19µs+97µs) by XML::LibXML::BEGIN@23 at line 35 # spent 117µs making 1 call to XML::LibXML::Error::BEGIN@35
# spent 97µs making 1 call to constant::import |
| 36 | 3 | 86µs | 2 | 224µs | # spent 125µs (26+99) within XML::LibXML::Error::BEGIN@36 which was called:
# once (26µs+99µs) by XML::LibXML::BEGIN@23 at line 36 # spent 125µs making 1 call to XML::LibXML::Error::BEGIN@36
# spent 99µs making 1 call to constant::import |
| 37 | 3 | 60µs | 2 | 184µs | # spent 102µs (21+81) within XML::LibXML::Error::BEGIN@37 which was called:
# once (21µs+81µs) by XML::LibXML::BEGIN@23 at line 37 # spent 102µs making 1 call to XML::LibXML::Error::BEGIN@37
# spent 81µs making 1 call to constant::import |
| 38 | 3 | 89µs | 2 | 126µs | # spent 73µs (19+53) within XML::LibXML::Error::BEGIN@38 which was called:
# once (19µs+53µs) by XML::LibXML::BEGIN@23 at line 38 # spent 73µs making 1 call to XML::LibXML::Error::BEGIN@38
# spent 53µs making 1 call to constant::import |
| 39 | 3 | 53µs | 2 | 134µs | # spent 76µs (19+57) within XML::LibXML::Error::BEGIN@39 which was called:
# once (19µs+57µs) by XML::LibXML::BEGIN@23 at line 39 # spent 76µs making 1 call to XML::LibXML::Error::BEGIN@39
# spent 57µs making 1 call to constant::import |
| 40 | 3 | 52µs | 2 | 166µs | # spent 90µs (14+76) within XML::LibXML::Error::BEGIN@40 which was called:
# once (14µs+76µs) by XML::LibXML::BEGIN@23 at line 40 # spent 90µs making 1 call to XML::LibXML::Error::BEGIN@40
# spent 76µs making 1 call to constant::import |
| 41 | 3 | 145µs | 2 | 132µs | # spent 75µs (17+58) within XML::LibXML::Error::BEGIN@41 which was called:
# once (17µs+58µs) by XML::LibXML::BEGIN@23 at line 41 # spent 75µs making 1 call to XML::LibXML::Error::BEGIN@41
# spent 58µs making 1 call to constant::import |
| 42 | 3 | 87µs | 2 | 224µs | # spent 125µs (26+99) within XML::LibXML::Error::BEGIN@42 which was called:
# once (26µs+99µs) by XML::LibXML::BEGIN@23 at line 42 # spent 125µs making 1 call to XML::LibXML::Error::BEGIN@42
# spent 99µs making 1 call to constant::import |
| 43 | 3 | 55µs | 2 | 158µs | # spent 87µs (17+71) within XML::LibXML::Error::BEGIN@43 which was called:
# once (17µs+71µs) by XML::LibXML::BEGIN@23 at line 43 # spent 87µs making 1 call to XML::LibXML::Error::BEGIN@43
# spent 71µs making 1 call to constant::import |
| 44 | 3 | 49µs | 2 | 157µs | # spent 87µs (16+71) within XML::LibXML::Error::BEGIN@44 which was called:
# once (16µs+71µs) by XML::LibXML::BEGIN@23 at line 44 # spent 87µs making 1 call to XML::LibXML::Error::BEGIN@44
# spent 71µs making 1 call to constant::import |
| 45 | 3 | 39µs | 2 | 100µs | # spent 56µs (13+43) within XML::LibXML::Error::BEGIN@45 which was called:
# once (13µs+43µs) by XML::LibXML::BEGIN@23 at line 45 # spent 56µs making 1 call to XML::LibXML::Error::BEGIN@45
# spent 44µs making 1 call to constant::import |
| 46 | 3 | 47µs | 2 | 144µs | # spent 78µs (12+66) within XML::LibXML::Error::BEGIN@46 which was called:
# once (12µs+66µs) by XML::LibXML::BEGIN@23 at line 46 # spent 78µs making 1 call to XML::LibXML::Error::BEGIN@46
# spent 66µs making 1 call to constant::import |
| 47 | 3 | 48µs | 2 | 154µs | # spent 84µs (14+70) within XML::LibXML::Error::BEGIN@47 which was called:
# once (14µs+70µs) by XML::LibXML::BEGIN@23 at line 47 # spent 84µs making 1 call to XML::LibXML::Error::BEGIN@47
# spent 70µs making 1 call to constant::import |
| 48 | 3 | 87µs | 2 | 104µs | # spent 59µs (13+45) within XML::LibXML::Error::BEGIN@48 which was called:
# once (13µs+45µs) by XML::LibXML::BEGIN@23 at line 48 # spent 59µs making 1 call to XML::LibXML::Error::BEGIN@48
# spent 45µs making 1 call to constant::import |
| 49 | 3 | 38µs | 2 | 99µs | # spent 55µs (12+43) within XML::LibXML::Error::BEGIN@49 which was called:
# once (12µs+43µs) by XML::LibXML::BEGIN@23 at line 49 # spent 55µs making 1 call to XML::LibXML::Error::BEGIN@49
# spent 44µs making 1 call to constant::import |
| 50 | 3 | 37µs | 2 | 77µs | # spent 45µs (14+32) within XML::LibXML::Error::BEGIN@50 which was called:
# once (14µs+32µs) by XML::LibXML::BEGIN@23 at line 50 # spent 45µs making 1 call to XML::LibXML::Error::BEGIN@50
# spent 32µs making 1 call to constant::import |
| 51 | 3 | 57µs | 2 | 80µs | # spent 45µs (9+36) within XML::LibXML::Error::BEGIN@51 which was called:
# once (9µs+36µs) by XML::LibXML::BEGIN@23 at line 51 # spent 45µs making 1 call to XML::LibXML::Error::BEGIN@51
# spent 35µs making 1 call to constant::import |
| 52 | 3 | 33µs | 2 | 81µs | # spent 46µs (11+35) within XML::LibXML::Error::BEGIN@52 which was called:
# once (11µs+35µs) by XML::LibXML::BEGIN@23 at line 52 # spent 46µs making 1 call to XML::LibXML::Error::BEGIN@52
# spent 35µs making 1 call to constant::import |
| 53 | 3 | 34µs | 2 | 71µs | # spent 40µs (9+31) within XML::LibXML::Error::BEGIN@53 which was called:
# once (9µs+31µs) by XML::LibXML::BEGIN@23 at line 53 # spent 40µs making 1 call to XML::LibXML::Error::BEGIN@53
# spent 31µs making 1 call to constant::import |
| 54 | 3 | 33µs | 2 | 83µs | # spent 46µs (10+36) within XML::LibXML::Error::BEGIN@54 which was called:
# once (10µs+36µs) by XML::LibXML::BEGIN@23 at line 54 # spent 46µs making 1 call to XML::LibXML::Error::BEGIN@54
# spent 36µs making 1 call to constant::import |
| 55 | 3 | 1.21ms | 2 | 73µs | # spent 41µs (9+32) within XML::LibXML::Error::BEGIN@55 which was called:
# once (9µs+32µs) by XML::LibXML::BEGIN@23 at line 55 # spent 41µs making 1 call to XML::LibXML::Error::BEGIN@55
# spent 32µs making 1 call to constant::import |
| 56 | |||||
| 57 | 1 | 4µs | @error_domains = ("", "parser", "tree", "namespace", "validity", | ||
| 58 | "HTML parser", "memory", "output", "I/O", "ftp", | ||||
| 59 | "http", "XInclude", "XPath", "xpointer", "regexp", | ||||
| 60 | "Schemas datatype", "Schemas parser", "Schemas validity", | ||||
| 61 | "Relax-NG parser", "Relax-NG validity", | ||||
| 62 | "Catalog", "C14N", "XSLT", "validity"); | ||||
| 63 | |||||
| 64 | { | ||||
| 65 | |||||
| 66 | 1 | 900ns | sub new { | ||
| 67 | my ($class,$xE) = @_; | ||||
| 68 | my $terr; | ||||
| 69 | if (ref($xE)) { | ||||
| 70 | my ($context,$column) = $xE->context_and_column(); | ||||
| 71 | $terr =bless { | ||||
| 72 | domain => $xE->domain(), | ||||
| 73 | level => $xE->level(), | ||||
| 74 | code => $xE->code(), | ||||
| 75 | message => $xE->message(), | ||||
| 76 | file => $xE->file(), | ||||
| 77 | line => $xE->line(), | ||||
| 78 | str1 => $xE->str1(), | ||||
| 79 | str2 => $xE->str2(), | ||||
| 80 | str3 => $xE->str3(), | ||||
| 81 | num1 => $xE->num1(), | ||||
| 82 | num2 => $xE->num2(), | ||||
| 83 | (defined($context) ? | ||||
| 84 | ( | ||||
| 85 | context => $context, | ||||
| 86 | column => $column, | ||||
| 87 | ) : ()), | ||||
| 88 | }, $class; | ||||
| 89 | } else { | ||||
| 90 | # !!!! problem : got a flat error | ||||
| 91 | # warn("PROBLEM: GOT A FLAT ERROR $xE\n"); | ||||
| 92 | $terr =bless { | ||||
| 93 | domain => 0, | ||||
| 94 | level => 2, | ||||
| 95 | code => -1, | ||||
| 96 | message => $xE, | ||||
| 97 | file => undef, | ||||
| 98 | line => undef, | ||||
| 99 | str1 => undef, | ||||
| 100 | str2 => undef, | ||||
| 101 | str3 => undef, | ||||
| 102 | num1 => undef, | ||||
| 103 | num2 => undef, | ||||
| 104 | }, $class; | ||||
| 105 | } | ||||
| 106 | return $terr; | ||||
| 107 | } | ||||
| 108 | |||||
| 109 | sub _callback_error { | ||||
| 110 | #print "CALLBACK\n"; | ||||
| 111 | my ($xE,$prev) = @_; | ||||
| 112 | my $terr; | ||||
| 113 | $terr=XML::LibXML::Error->new($xE); | ||||
| 114 | if ($terr->{level} == XML_ERR_WARNING and $WARNINGS!=2) { | ||||
| 115 | warn $terr if $WARNINGS; | ||||
| 116 | return $prev; | ||||
| 117 | } | ||||
| 118 | #unless ( defined $terr->{file} and length $terr->{file} ) { | ||||
| 119 | # this would make it easier to recognize parsed strings | ||||
| 120 | # but it breaks old implementations | ||||
| 121 | # [CG] $terr->{file} = 'string()'; | ||||
| 122 | #} | ||||
| 123 | #warn "Saving the error ",$terr->dump; | ||||
| 124 | $terr->{_prev} = ref($prev) ? $prev : | ||||
| 125 | defined($prev) && length($prev) ? XML::LibXML::Error->new($prev) : undef; | ||||
| 126 | return $terr; | ||||
| 127 | } | ||||
| 128 | sub _instant_error_callback { | ||||
| 129 | my $xE = shift; | ||||
| 130 | my $terr= XML::LibXML::Error->new($xE); | ||||
| 131 | print "Reporting an instanteous error ",$terr->dump; | ||||
| 132 | die $terr; | ||||
| 133 | } | ||||
| 134 | sub _report_warning { | ||||
| 135 | my ($saved_error) = @_; | ||||
| 136 | #print "CALLBACK WARN\n"; | ||||
| 137 | if ( defined $saved_error ) { | ||||
| 138 | #print "reporting a warning ",$saved_error->dump; | ||||
| 139 | warn $saved_error; | ||||
| 140 | } | ||||
| 141 | } | ||||
| 142 | sub _report_error { | ||||
| 143 | my ($saved_error) = @_; | ||||
| 144 | #print "CALLBACK ERROR: $saved_error\n"; | ||||
| 145 | if ( defined $saved_error ) { | ||||
| 146 | die $saved_error; | ||||
| 147 | } | ||||
| 148 | } | ||||
| 149 | } | ||||
| 150 | |||||
| 151 | |||||
| 152 | sub AUTOLOAD { | ||||
| 153 | my $self=shift; | ||||
| 154 | return undef unless ref($self); | ||||
| 155 | my $sub = $AUTOLOAD; | ||||
| 156 | $sub =~ s/.*:://; | ||||
| 157 | if ($sub=~/^(?:code|_prev|level|file|line|domain|nodename|message|column|context|str[123]|num[12])$/) { | ||||
| 158 | return $self->{$sub}; | ||||
| 159 | } else { | ||||
| 160 | croak("Unknown error field $sub"); | ||||
| 161 | } | ||||
| 162 | } | ||||
| 163 | |||||
| 164 | # backward compatibility | ||||
| 165 | sub int1 { $_[0]->num1 } | ||||
| 166 | sub int2 { $_[0]->num2 } | ||||
| 167 | |||||
| 168 | sub DESTROY {} | ||||
| 169 | |||||
| 170 | sub domain { | ||||
| 171 | my ($self)=@_; | ||||
| 172 | return undef unless ref($self); | ||||
| 173 | return $error_domains[$self->{domain}]; | ||||
| 174 | } | ||||
| 175 | |||||
| 176 | sub as_string { | ||||
| 177 | my ($self)=@_; | ||||
| 178 | my $msg = ""; | ||||
| 179 | my $level; | ||||
| 180 | |||||
| 181 | if (defined($self->{_prev})) { | ||||
| 182 | $msg = $self->{_prev}->as_string; | ||||
| 183 | } | ||||
| 184 | |||||
| 185 | if ($self->{level} == XML_ERR_NONE) { | ||||
| 186 | $level = ""; | ||||
| 187 | } elsif ($self->{level} == XML_ERR_WARNING) { | ||||
| 188 | $level = "warning"; | ||||
| 189 | } elsif ($self->{level} == XML_ERR_ERROR || | ||||
| 190 | $self->{level} == XML_ERR_FATAL) { | ||||
| 191 | $level = "error"; | ||||
| 192 | } | ||||
| 193 | my $where=""; | ||||
| 194 | if (defined($self->{file})) { | ||||
| 195 | $where="$self->{file}:$self->{line}"; | ||||
| 196 | } elsif (($self->{domain} == XML_ERR_FROM_PARSER) | ||||
| 197 | and | ||||
| 198 | $self->{line}) { | ||||
| 199 | $where="Entity: line $self->{line}"; | ||||
| 200 | } | ||||
| 201 | if ($self->{nodename}) { | ||||
| 202 | $where.=": element ".$self->{nodename}; | ||||
| 203 | } | ||||
| 204 | $msg.=$where.": " if $where ne ""; | ||||
| 205 | $msg.=$error_domains[$self->{domain}]." ".$level." :"; | ||||
| 206 | my $str=$self->{message}||""; | ||||
| 207 | chomp($str); | ||||
| 208 | $msg.=" ".$str."\n"; | ||||
| 209 | if (($self->{domain} == XML_ERR_FROM_XPATH) and | ||||
| 210 | defined($self->{str1})) { | ||||
| 211 | $msg.=$self->{str1}."\n"; | ||||
| 212 | $msg.=(" " x $self->{num1})."^\n"; | ||||
| 213 | } elsif (defined $self->{context}) { | ||||
| 214 | my $context = $self->{context}; | ||||
| 215 | $msg.=$context."\n"; | ||||
| 216 | $context = substr($context,0,$self->{column}); | ||||
| 217 | $context=~s/[^\t]/ /g; | ||||
| 218 | $msg.=$context."^\n"; | ||||
| 219 | } | ||||
| 220 | return $msg; | ||||
| 221 | } | ||||
| 222 | |||||
| 223 | sub dump { | ||||
| 224 | my ($self)=@_; | ||||
| 225 | 3 | 102µs | 2 | 179µs | # spent 101µs (24+78) within XML::LibXML::Error::BEGIN@225 which was called:
# once (24µs+78µs) by XML::LibXML::BEGIN@23 at line 225 # spent 101µs making 1 call to XML::LibXML::Error::BEGIN@225
# spent 78µs making 1 call to Exporter::import |
| 226 | return Data::Dumper->new([$self],['error'])->Dump; | ||||
| 227 | } | ||||
| 228 | |||||
| 229 | 1 | 7µs | 1; |