line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
package SOAP::WSDL::XSD::Typelib::Builtin::anyType; |
2
|
83
|
|
|
83
|
|
1514
|
use strict; |
|
83
|
|
|
|
|
644
|
|
|
83
|
|
|
|
|
3400
|
|
3
|
83
|
|
|
83
|
|
459
|
use warnings; |
|
83
|
|
|
|
|
161
|
|
|
83
|
|
|
|
|
3816
|
|
4
|
83
|
|
|
83
|
|
1498
|
use Class::Std::Fast::Storable constructor => 'none'; |
|
83
|
|
|
|
|
28811
|
|
|
83
|
|
|
|
|
629
|
|
5
|
|
|
|
|
|
|
|
6
|
83
|
|
|
83
|
|
12532
|
use version; our $VERSION = qv('3.001'); |
|
83
|
|
|
|
|
166
|
|
|
83
|
|
|
|
|
681
|
|
7
|
|
|
|
|
|
|
|
8
|
3
|
|
|
3
|
0
|
2563
|
sub get_xmlns { 'http://www.w3.org/2001/XMLSchema' }; |
9
|
|
|
|
|
|
|
|
10
|
|
|
|
|
|
|
# start_tag creates a XML start tag either for a XML element or a attribute. |
11
|
|
|
|
|
|
|
# The method is highly optimized for performance: |
12
|
|
|
|
|
|
|
# - operates on @_ |
13
|
|
|
|
|
|
|
# - uses no private variables |
14
|
|
|
|
|
|
|
# - uses no blocks |
15
|
|
|
|
|
|
|
|
16
|
|
|
|
|
|
|
sub start_tag { |
17
|
|
|
|
|
|
|
# return empty string if no second argument ($opt) or no name |
18
|
32
|
100
|
|
32
|
0
|
101
|
return q{} if (! $#_); |
19
|
31
|
100
|
|
|
|
225
|
return q{} if (! exists $_[1]->{ name }); |
20
|
|
|
|
|
|
|
# return attribute start if it's an attribute |
21
|
6
|
50
|
|
|
|
31
|
return qq{ $_[1]->{name}="} if $_[1]->{ attr }; |
22
|
|
|
|
|
|
|
# return with xsi:nil="true" if it is nil |
23
|
|
|
|
|
|
|
return join |
24
|
|
|
|
|
|
|
q{} , |
25
|
|
|
|
|
|
|
"<$_[1]->{ name }" , |
26
|
|
|
|
|
|
|
(defined $_[1]->{ xmlns }) ? qq{ xmlns="$_[1]->{ xmlns }"} : (), |
27
|
|
|
|
|
|
|
$_[0]->serialize_attr($_[1]) , |
28
|
|
|
|
|
|
|
q{ xsi:nil="true"/>} |
29
|
6
|
50
|
|
|
|
35
|
if ($_[1]->{ nil }); |
|
|
100
|
|
|
|
|
|
30
|
|
|
|
|
|
|
# return "empty" start tag if it's empty |
31
|
|
|
|
|
|
|
return join |
32
|
|
|
|
|
|
|
q{}, |
33
|
|
|
|
|
|
|
"<$_[1]->{ name }", |
34
|
|
|
|
|
|
|
(defined $_[1]->{ xmlns }) ? qq{ xmlns="$_[1]->{ xmlns }"} : (), |
35
|
|
|
|
|
|
|
$_[0]->serialize_attr($_[1]) , |
36
|
|
|
|
|
|
|
'/>' |
37
|
5
|
0
|
|
|
|
40
|
if ($_[1]->{ empty }); |
|
|
50
|
|
|
|
|
|
38
|
|
|
|
|
|
|
# return XML element start tag |
39
|
|
|
|
|
|
|
return join |
40
|
|
|
|
|
|
|
q{}, |
41
|
|
|
|
|
|
|
"<$_[1]->{ name }", |
42
|
5
|
50
|
|
|
|
148
|
(defined $_[1]->{ xmlns }) ? qq{ xmlns="$_[1]->{ xmlns }"} : (), |
43
|
|
|
|
|
|
|
, $_[0]->serialize_attr($_[1]) |
44
|
|
|
|
|
|
|
, '>'; |
45
|
|
|
|
|
|
|
} |
46
|
|
|
|
|
|
|
|
47
|
|
|
|
|
|
|
# start_tag creates a XML end tag either for a XML element or a attribute. |
48
|
|
|
|
|
|
|
# The method is highly optimized for performance: |
49
|
|
|
|
|
|
|
# - operates on @_ |
50
|
|
|
|
|
|
|
# - uses no private variables |
51
|
|
|
|
|
|
|
# - uses no blocks |
52
|
|
|
|
|
|
|
sub end_tag { |
53
|
|
|
|
|
|
|
# return empty string if no second argument ($opt) or no name |
54
|
24
|
50
|
|
24
|
0
|
77
|
return q{} if (! $#_); |
55
|
24
|
100
|
|
|
|
304
|
return q{} if (! exists $_[1]->{ name }); |
56
|
4
|
50
|
|
|
|
20
|
return q{"} if $_[1]->{ attr }; |
57
|
4
|
|
|
|
|
28
|
return "$_[1]->{name}>"; |
58
|
|
|
|
|
|
|
}; |
59
|
|
|
|
|
|
|
|
60
|
11
|
|
|
11
|
0
|
49
|
sub serialize_attr {}; |
61
|
|
|
|
|
|
|
|
62
|
|
|
|
|
|
|
# sub serialize { q{} }; |
63
|
|
|
|
|
|
|
|
64
|
|
|
|
|
|
|
sub serialize_qualified :STRINGIFY { |
65
|
2
|
|
|
2
|
0
|
555
|
return $_[0]->serialize( { qualified => 1 } ); |
66
|
83
|
|
|
83
|
|
51725
|
} |
|
83
|
|
|
|
|
375
|
|
|
83
|
|
|
|
|
936
|
|
67
|
|
|
|
|
|
|
|
68
|
|
|
|
|
|
|
sub as_list :ARRAYIFY { |
69
|
1
|
|
|
1
|
0
|
39
|
return [ $_[0] ]; |
70
|
83
|
|
|
83
|
|
268133
|
} |
|
83
|
|
|
|
|
299
|
|
|
83
|
|
|
|
|
1257
|
|
71
|
|
|
|
|
|
|
|
72
|
|
|
|
|
|
|
Class::Std::initialize(); # make :STRINGIFY overloading work |
73
|
|
|
|
|
|
|
|
74
|
|
|
|
|
|
|
1; |
75
|
|
|
|
|
|
|
|