line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
# |
2
|
|
|
|
|
|
|
# This parser was generated with |
3
|
|
|
|
|
|
|
# Parse::RecDescent version 1.967015 |
4
|
|
|
|
|
|
|
# |
5
|
|
|
|
|
|
|
|
6
|
|
|
|
|
|
|
package Mail::IMAPClient::BodyStructure::Parse; |
7
|
1
|
|
|
1
|
|
1235
|
use Parse::RecDescent; |
|
1
|
|
|
|
|
45447
|
|
|
1
|
|
|
|
|
7
|
|
8
|
|
|
|
|
|
|
{ my $ERRORS; |
9
|
|
|
|
|
|
|
|
10
|
|
|
|
|
|
|
|
11
|
|
|
|
|
|
|
package Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse; |
12
|
1
|
|
|
1
|
|
82
|
use strict; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
26
|
|
13
|
1
|
|
|
1
|
|
5
|
use vars qw($skip $AUTOLOAD ); |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
232
|
|
14
|
|
|
|
|
|
|
@Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::ISA = (); |
15
|
|
|
|
|
|
|
$skip = '\\s*'; |
16
|
|
|
|
|
|
|
|
17
|
|
|
|
|
|
|
|
18
|
|
|
|
|
|
|
my $mibs = "Mail::IMAPClient::BodyStructure"; |
19
|
|
|
|
|
|
|
my $subpartCount = 0; |
20
|
|
|
|
|
|
|
my $partCount = 0; |
21
|
|
|
|
|
|
|
|
22
|
|
|
|
|
|
|
sub take_optional_items($$@) |
23
|
158
|
|
|
158
|
|
393
|
{ my ($r, $items) = (shift, shift); |
24
|
158
|
|
|
|
|
374
|
foreach (@_) |
25
|
820
|
|
|
|
|
1532
|
{ my $opt = $_ .'(?)'; |
26
|
820
|
50
|
|
|
|
1635
|
exists $items->{$opt} or next; |
27
|
|
|
|
|
|
|
$r->{$_} = UNIVERSAL::isa($items->{$opt}, 'ARRAY') |
28
|
820
|
50
|
|
|
|
2835
|
? $items->{$opt}[0] : $items->{$opt}; |
29
|
|
|
|
|
|
|
} |
30
|
|
|
|
|
|
|
} |
31
|
|
|
|
|
|
|
|
32
|
|
|
|
|
|
|
sub merge_hash($$) |
33
|
54
|
|
|
54
|
|
94
|
{ my $to = shift; |
34
|
54
|
100
|
|
|
|
157
|
my $from = shift or return; |
35
|
12
|
|
|
|
|
67
|
while( my($k,$v) = each %$from) { $to->{$k} = $v } |
|
72
|
|
|
|
|
252
|
|
36
|
|
|
|
|
|
|
} |
37
|
|
|
|
|
|
|
; |
38
|
|
|
|
|
|
|
|
39
|
|
|
|
|
|
|
|
40
|
|
|
|
|
|
|
{ |
41
|
|
|
|
|
|
|
local $SIG{__WARN__} = sub {0}; |
42
|
|
|
|
|
|
|
# PRETEND TO BE IN Parse::RecDescent NAMESPACE |
43
|
|
|
|
|
|
|
*Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::AUTOLOAD = sub |
44
|
|
|
|
|
|
|
{ |
45
|
1
|
|
|
1
|
|
8
|
no strict 'refs'; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
102
|
|
46
|
|
|
|
|
|
|
|
47
|
0
|
|
|
0
|
|
0
|
${"AUTOLOAD"} =~ s/^Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse/Parse::RecDescent/; |
|
0
|
|
|
|
|
0
|
|
48
|
0
|
|
|
|
|
0
|
goto &{${"AUTOLOAD"}}; |
|
0
|
|
|
|
|
0
|
|
|
0
|
|
|
|
|
0
|
|
49
|
|
|
|
|
|
|
} |
50
|
|
|
|
|
|
|
} |
51
|
|
|
|
|
|
|
|
52
|
|
|
|
|
|
|
push @Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::ISA, 'Parse::RecDescent'; |
53
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
54
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::ADDRESSES |
55
|
|
|
|
|
|
|
{ |
56
|
144
|
|
|
144
|
|
280
|
my $thisparser = $_[0]; |
57
|
1
|
|
|
1
|
|
7
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
328
|
|
58
|
144
|
|
50
|
|
|
322
|
local $tracelevel = ($tracelevel||0)+1; |
59
|
144
|
|
|
|
|
201
|
$ERRORS = 0; |
60
|
144
|
|
|
|
|
363
|
my $thisrule = $thisparser->{"rules"}{"ADDRESSES"}; |
61
|
|
|
|
|
|
|
|
62
|
144
|
50
|
|
|
|
339
|
Parse::RecDescent::_trace(q{Trying rule: [ADDRESSES]}, |
63
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
64
|
|
|
|
|
|
|
q{ADDRESSES}, |
65
|
|
|
|
|
|
|
$tracelevel) |
66
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
67
|
|
|
|
|
|
|
|
68
|
144
|
|
|
|
|
204
|
my $def_at = @{$thisparser->{deferred}}; |
|
144
|
|
|
|
|
267
|
|
69
|
144
|
|
|
|
|
223
|
my $err_at = @{$thisparser->{errors}}; |
|
144
|
|
|
|
|
257
|
|
70
|
|
|
|
|
|
|
|
71
|
144
|
|
|
|
|
359
|
my $score; |
72
|
|
|
|
|
|
|
my $score_return; |
73
|
144
|
|
|
|
|
0
|
my $_tok; |
74
|
144
|
|
|
|
|
230
|
my $return = undef; |
75
|
144
|
|
|
|
|
188
|
my $_matched=0; |
76
|
144
|
|
|
|
|
263
|
my $commit=0; |
77
|
144
|
|
|
|
|
217
|
my @item = (); |
78
|
144
|
|
|
|
|
226
|
my %item = (); |
79
|
144
|
|
|
|
|
210
|
my $repeating = $_[2]; |
80
|
144
|
|
|
|
|
221
|
my $_noactions = $_[3]; |
81
|
144
|
50
|
|
|
|
264
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
144
|
|
|
|
|
196
|
|
|
144
|
|
|
|
|
281
|
|
82
|
144
|
|
|
|
|
236
|
my $_itempos = $_[5]; |
83
|
144
|
50
|
|
|
|
301
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
84
|
144
|
|
|
|
|
334
|
my $text; |
85
|
|
|
|
|
|
|
my $lastsep; |
86
|
144
|
|
|
|
|
0
|
my $current_match; |
87
|
144
|
|
|
|
|
334
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or RFCNONCOMPLY, or '('}); |
88
|
144
|
|
|
|
|
901
|
$expectation->at($_[1]); |
89
|
|
|
|
|
|
|
|
90
|
144
|
|
|
|
|
577
|
my $thisline; |
91
|
144
|
|
|
|
|
427
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
92
|
|
|
|
|
|
|
|
93
|
|
|
|
|
|
|
|
94
|
|
|
|
|
|
|
|
95
|
144
|
|
33
|
|
|
1092
|
while (!$_matched && !$commit) |
96
|
|
|
|
|
|
|
{ |
97
|
|
|
|
|
|
|
|
98
|
144
|
50
|
|
|
|
291
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
99
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
100
|
|
|
|
|
|
|
q{ADDRESSES}, |
101
|
|
|
|
|
|
|
$tracelevel) |
102
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
103
|
144
|
|
|
|
|
322
|
my $thisprod = $thisrule->{"prods"}[0]; |
104
|
144
|
|
|
|
|
255
|
$text = $_[1]; |
105
|
144
|
|
|
|
|
240
|
my $_savetext; |
106
|
144
|
|
|
|
|
284
|
@item = (q{ADDRESSES}); |
107
|
144
|
|
|
|
|
307
|
%item = (__RULE__ => q{ADDRESSES}); |
108
|
144
|
|
|
|
|
205
|
my $repcount = 0; |
109
|
|
|
|
|
|
|
|
110
|
|
|
|
|
|
|
|
111
|
144
|
50
|
|
|
|
347
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
112
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
113
|
|
|
|
|
|
|
q{ADDRESSES}, |
114
|
|
|
|
|
|
|
$tracelevel) |
115
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
116
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
420
|
|
|
144
|
|
|
|
|
205
|
|
117
|
144
|
|
|
|
|
326
|
$expectation->is(q{})->at($text); |
118
|
144
|
100
|
|
144
|
|
1361
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
144
|
|
|
|
|
276
|
|
119
|
|
|
|
|
|
|
{ |
120
|
|
|
|
|
|
|
|
121
|
98
|
50
|
|
|
|
218
|
Parse::RecDescent::_trace(q{<>}, |
122
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
123
|
|
|
|
|
|
|
q{ADDRESSES}, |
124
|
|
|
|
|
|
|
$tracelevel) |
125
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
126
|
98
|
|
|
|
|
354
|
$expectation->failed(); |
127
|
98
|
|
|
|
|
364
|
last; |
128
|
|
|
|
|
|
|
} |
129
|
46
|
50
|
|
|
|
181
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
130
|
|
|
|
|
|
|
. $_tok . q{]}, |
131
|
|
|
|
|
|
|
|
132
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
133
|
|
|
|
|
|
|
q{ADDRESSES}, |
134
|
|
|
|
|
|
|
$tracelevel) |
135
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
136
|
46
|
|
|
|
|
119
|
$item{q{NIL}} = $_tok; |
137
|
46
|
|
|
|
|
91
|
push @item, $_tok; |
138
|
|
|
|
|
|
|
|
139
|
|
|
|
|
|
|
} |
140
|
|
|
|
|
|
|
|
141
|
46
|
50
|
|
|
|
102
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
142
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
143
|
|
|
|
|
|
|
q{ADDRESSES}, |
144
|
|
|
|
|
|
|
$tracelevel) |
145
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
146
|
|
|
|
|
|
|
|
147
|
|
|
|
|
|
|
|
148
|
|
|
|
|
|
|
|
149
|
46
|
|
|
|
|
88
|
$_matched = 1; |
150
|
46
|
|
|
|
|
81
|
last; |
151
|
|
|
|
|
|
|
} |
152
|
|
|
|
|
|
|
|
153
|
|
|
|
|
|
|
splice |
154
|
144
|
100
|
|
|
|
469
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
98
|
|
|
|
|
231
|
|
155
|
|
|
|
|
|
|
|
156
|
144
|
|
66
|
|
|
534
|
while (!$_matched && !$commit) |
157
|
|
|
|
|
|
|
{ |
158
|
|
|
|
|
|
|
|
159
|
98
|
50
|
|
|
|
195
|
Parse::RecDescent::_trace(q{Trying production: [RFCNONCOMPLY]}, |
160
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
161
|
|
|
|
|
|
|
q{ADDRESSES}, |
162
|
|
|
|
|
|
|
$tracelevel) |
163
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
164
|
98
|
|
|
|
|
238
|
my $thisprod = $thisrule->{"prods"}[1]; |
165
|
98
|
|
|
|
|
191
|
$text = $_[1]; |
166
|
98
|
|
|
|
|
145
|
my $_savetext; |
167
|
98
|
|
|
|
|
253
|
@item = (q{ADDRESSES}); |
168
|
98
|
|
|
|
|
253
|
%item = (__RULE__ => q{ADDRESSES}); |
169
|
98
|
|
|
|
|
162
|
my $repcount = 0; |
170
|
|
|
|
|
|
|
|
171
|
|
|
|
|
|
|
|
172
|
98
|
50
|
|
|
|
224
|
Parse::RecDescent::_trace(q{Trying subrule: [RFCNONCOMPLY]}, |
173
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
174
|
|
|
|
|
|
|
q{ADDRESSES}, |
175
|
|
|
|
|
|
|
$tracelevel) |
176
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
177
|
1
|
|
|
1
|
|
9
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
1
|
|
|
1
|
|
|
|
|
1202
|
|
|
98
|
|
|
|
|
167
|
|
178
|
98
|
|
|
|
|
231
|
$expectation->is(q{})->at($text); |
179
|
98
|
100
|
|
98
|
|
1019
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::RFCNONCOMPLY($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
98
|
|
|
|
|
180
|
|
180
|
|
|
|
|
|
|
{ |
181
|
|
|
|
|
|
|
|
182
|
94
|
50
|
|
|
|
194
|
Parse::RecDescent::_trace(q{<>}, |
183
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
184
|
|
|
|
|
|
|
q{ADDRESSES}, |
185
|
|
|
|
|
|
|
$tracelevel) |
186
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
187
|
94
|
|
|
|
|
263
|
$expectation->failed(); |
188
|
94
|
|
|
|
|
347
|
last; |
189
|
|
|
|
|
|
|
} |
190
|
4
|
50
|
|
|
|
21
|
Parse::RecDescent::_trace(q{>>Matched subrule: [RFCNONCOMPLY]<< (return value: [} |
191
|
|
|
|
|
|
|
. $_tok . q{]}, |
192
|
|
|
|
|
|
|
|
193
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
194
|
|
|
|
|
|
|
q{ADDRESSES}, |
195
|
|
|
|
|
|
|
$tracelevel) |
196
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
197
|
4
|
|
|
|
|
12
|
$item{q{RFCNONCOMPLY}} = $_tok; |
198
|
4
|
|
|
|
|
10
|
push @item, $_tok; |
199
|
|
|
|
|
|
|
|
200
|
|
|
|
|
|
|
} |
201
|
|
|
|
|
|
|
|
202
|
4
|
50
|
|
|
|
13
|
Parse::RecDescent::_trace(q{>>Matched production: [RFCNONCOMPLY]<<}, |
203
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
204
|
|
|
|
|
|
|
q{ADDRESSES}, |
205
|
|
|
|
|
|
|
$tracelevel) |
206
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
207
|
|
|
|
|
|
|
|
208
|
|
|
|
|
|
|
|
209
|
|
|
|
|
|
|
|
210
|
4
|
|
|
|
|
8
|
$_matched = 1; |
211
|
4
|
|
|
|
|
7
|
last; |
212
|
|
|
|
|
|
|
} |
213
|
|
|
|
|
|
|
|
214
|
|
|
|
|
|
|
splice |
215
|
144
|
100
|
|
|
|
440
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
94
|
|
|
|
|
190
|
|
216
|
|
|
|
|
|
|
|
217
|
144
|
|
66
|
|
|
457
|
while (!$_matched && !$commit) |
218
|
|
|
|
|
|
|
{ |
219
|
|
|
|
|
|
|
|
220
|
94
|
50
|
|
|
|
192
|
Parse::RecDescent::_trace(q{Trying production: ['(' addressstruct ')']}, |
221
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
222
|
|
|
|
|
|
|
q{ADDRESSES}, |
223
|
|
|
|
|
|
|
$tracelevel) |
224
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
225
|
94
|
|
|
|
|
206
|
my $thisprod = $thisrule->{"prods"}[2]; |
226
|
94
|
|
|
|
|
205
|
$text = $_[1]; |
227
|
94
|
|
|
|
|
143
|
my $_savetext; |
228
|
94
|
|
|
|
|
228
|
@item = (q{ADDRESSES}); |
229
|
94
|
|
|
|
|
214
|
%item = (__RULE__ => q{ADDRESSES}); |
230
|
94
|
|
|
|
|
140
|
my $repcount = 0; |
231
|
|
|
|
|
|
|
|
232
|
|
|
|
|
|
|
|
233
|
94
|
50
|
|
|
|
170
|
Parse::RecDescent::_trace(q{Trying terminal: ['(']}, |
234
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
235
|
|
|
|
|
|
|
q{ADDRESSES}, |
236
|
|
|
|
|
|
|
$tracelevel) |
237
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
238
|
94
|
|
|
|
|
166
|
undef $lastsep; |
239
|
94
|
|
|
|
|
212
|
$expectation->is(q{})->at($text); |
240
|
|
|
|
|
|
|
|
241
|
|
|
|
|
|
|
|
242
|
94
|
50
|
33
|
|
|
1013
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and do { $_tok = "("; 1 } and |
|
94
|
50
|
33
|
|
|
659
|
|
|
94
|
|
33
|
|
|
179
|
|
|
94
|
|
|
|
|
593
|
|
243
|
|
|
|
|
|
|
substr($text,0,length($_tok)) eq $_tok and |
244
|
94
|
|
|
|
|
223
|
do { substr($text,0,length($_tok)) = ""; 1; } |
|
94
|
|
|
|
|
252
|
|
245
|
|
|
|
|
|
|
) |
246
|
|
|
|
|
|
|
{ |
247
|
0
|
0
|
|
|
|
0
|
$text = $lastsep . $text if defined $lastsep; |
248
|
|
|
|
|
|
|
|
249
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
250
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
251
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
252
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
253
|
0
|
|
|
|
|
0
|
last; |
254
|
|
|
|
|
|
|
} |
255
|
94
|
50
|
|
|
|
277
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
256
|
|
|
|
|
|
|
. $_tok . q{])}, |
257
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
258
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
259
|
94
|
|
|
|
|
227
|
push @item, $item{__STRING1__}=$_tok; |
260
|
|
|
|
|
|
|
|
261
|
|
|
|
|
|
|
|
262
|
94
|
50
|
|
|
|
237
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [addressstruct]}, |
263
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
264
|
|
|
|
|
|
|
q{ADDRESSES}, |
265
|
|
|
|
|
|
|
$tracelevel) |
266
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
267
|
94
|
|
|
|
|
242
|
$expectation->is(q{addressstruct})->at($text); |
268
|
|
|
|
|
|
|
|
269
|
94
|
50
|
|
188
|
|
1096
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::addressstruct, 1, 100000000, $_noactions,$expectation,sub { \@arg },undef))) |
|
188
|
|
|
|
|
407
|
|
270
|
|
|
|
|
|
|
{ |
271
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
272
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
273
|
|
|
|
|
|
|
q{ADDRESSES}, |
274
|
|
|
|
|
|
|
$tracelevel) |
275
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
276
|
0
|
|
|
|
|
0
|
last; |
277
|
|
|
|
|
|
|
} |
278
|
94
|
50
|
|
|
|
1500
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [addressstruct]<< (} |
279
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
280
|
|
|
|
|
|
|
|
281
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
282
|
|
|
|
|
|
|
q{ADDRESSES}, |
283
|
|
|
|
|
|
|
$tracelevel) |
284
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
285
|
94
|
|
|
|
|
239
|
$item{q{addressstruct(s)}} = $_tok; |
286
|
94
|
|
|
|
|
196
|
push @item, $_tok; |
287
|
|
|
|
|
|
|
|
288
|
|
|
|
|
|
|
|
289
|
|
|
|
|
|
|
|
290
|
94
|
50
|
|
|
|
198
|
Parse::RecDescent::_trace(q{Trying terminal: [')']}, |
291
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
292
|
|
|
|
|
|
|
q{ADDRESSES}, |
293
|
|
|
|
|
|
|
$tracelevel) |
294
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
295
|
94
|
|
|
|
|
154
|
undef $lastsep; |
296
|
94
|
|
|
|
|
224
|
$expectation->is(q{')'})->at($text); |
297
|
|
|
|
|
|
|
|
298
|
|
|
|
|
|
|
|
299
|
94
|
50
|
33
|
|
|
999
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and do { $_tok = ")"; 1 } and |
|
94
|
50
|
33
|
|
|
596
|
|
|
94
|
|
33
|
|
|
171
|
|
|
94
|
|
|
|
|
453
|
|
300
|
|
|
|
|
|
|
substr($text,0,length($_tok)) eq $_tok and |
301
|
94
|
|
|
|
|
181
|
do { substr($text,0,length($_tok)) = ""; 1; } |
|
94
|
|
|
|
|
256
|
|
302
|
|
|
|
|
|
|
) |
303
|
|
|
|
|
|
|
{ |
304
|
0
|
0
|
|
|
|
0
|
$text = $lastsep . $text if defined $lastsep; |
305
|
|
|
|
|
|
|
|
306
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
307
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
308
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
309
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
310
|
0
|
|
|
|
|
0
|
last; |
311
|
|
|
|
|
|
|
} |
312
|
94
|
50
|
|
|
|
278
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
313
|
|
|
|
|
|
|
. $_tok . q{])}, |
314
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
315
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
316
|
94
|
|
|
|
|
230
|
push @item, $item{__STRING2__}=$_tok; |
317
|
|
|
|
|
|
|
|
318
|
|
|
|
|
|
|
|
319
|
94
|
50
|
|
|
|
189
|
Parse::RecDescent::_trace(q{Trying action}, |
320
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
321
|
|
|
|
|
|
|
q{ADDRESSES}, |
322
|
|
|
|
|
|
|
$tracelevel) |
323
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
324
|
|
|
|
|
|
|
|
325
|
|
|
|
|
|
|
|
326
|
94
|
50
|
|
|
|
193
|
$_tok = ($_noactions) ? 0 : do { $return = $item{'addressstruct(s)'} }; |
|
94
|
|
|
|
|
199
|
|
327
|
94
|
50
|
|
|
|
238
|
unless (defined $_tok) |
328
|
|
|
|
|
|
|
{ |
329
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
330
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
331
|
0
|
|
|
|
|
0
|
last; |
332
|
|
|
|
|
|
|
} |
333
|
94
|
50
|
|
|
|
179
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
334
|
|
|
|
|
|
|
. $_tok . q{])}, |
335
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
336
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
337
|
94
|
|
|
|
|
150
|
push @item, $_tok; |
338
|
94
|
|
|
|
|
185
|
$item{__ACTION1__}=$_tok; |
339
|
|
|
|
|
|
|
|
340
|
|
|
|
|
|
|
|
341
|
94
|
50
|
|
|
|
167
|
Parse::RecDescent::_trace(q{>>Matched production: ['(' addressstruct ')']<<}, |
342
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
343
|
|
|
|
|
|
|
q{ADDRESSES}, |
344
|
|
|
|
|
|
|
$tracelevel) |
345
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
346
|
|
|
|
|
|
|
|
347
|
|
|
|
|
|
|
|
348
|
|
|
|
|
|
|
|
349
|
94
|
|
|
|
|
151
|
$_matched = 1; |
350
|
94
|
|
|
|
|
181
|
last; |
351
|
|
|
|
|
|
|
} |
352
|
|
|
|
|
|
|
|
353
|
|
|
|
|
|
|
splice |
354
|
144
|
50
|
|
|
|
286
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
355
|
|
|
|
|
|
|
|
356
|
144
|
50
|
33
|
|
|
346
|
unless ( $_matched || defined($score) ) |
357
|
|
|
|
|
|
|
{ |
358
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
359
|
|
|
|
|
|
|
|
360
|
|
|
|
|
|
|
|
361
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
362
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
363
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
364
|
|
|
|
|
|
|
q{ADDRESSES}, |
365
|
|
|
|
|
|
|
$tracelevel) |
366
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
367
|
0
|
|
|
|
|
0
|
return undef; |
368
|
|
|
|
|
|
|
} |
369
|
144
|
50
|
66
|
|
|
458
|
if (!defined($return) && defined($score)) |
370
|
|
|
|
|
|
|
{ |
371
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
372
|
|
|
|
|
|
|
q{ADDRESSES}, |
373
|
|
|
|
|
|
|
$tracelevel) |
374
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
375
|
0
|
|
|
|
|
0
|
$return = $score_return; |
376
|
|
|
|
|
|
|
} |
377
|
144
|
|
|
|
|
213
|
splice @{$thisparser->{errors}}, $err_at; |
|
144
|
|
|
|
|
327
|
|
378
|
144
|
100
|
|
|
|
341
|
$return = $item[$#item] unless defined $return; |
379
|
144
|
50
|
|
|
|
279
|
if (defined $::RD_TRACE) |
380
|
|
|
|
|
|
|
{ |
381
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
382
|
|
|
|
|
|
|
$return . q{])}, "", |
383
|
|
|
|
|
|
|
q{ADDRESSES}, |
384
|
|
|
|
|
|
|
$tracelevel); |
385
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
386
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
387
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
388
|
|
|
|
|
|
|
, q{ADDRESSES}, |
389
|
|
|
|
|
|
|
$tracelevel) |
390
|
|
|
|
|
|
|
} |
391
|
144
|
|
|
|
|
355
|
$_[1] = $text; |
392
|
144
|
|
|
|
|
1015
|
return $return; |
393
|
|
|
|
|
|
|
} |
394
|
|
|
|
|
|
|
|
395
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
396
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::BARESTRING |
397
|
|
|
|
|
|
|
{ |
398
|
183
|
|
|
183
|
|
319
|
my $thisparser = $_[0]; |
399
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
1193
|
|
400
|
183
|
|
50
|
|
|
444
|
local $tracelevel = ($tracelevel||0)+1; |
401
|
183
|
|
|
|
|
263
|
$ERRORS = 0; |
402
|
183
|
|
|
|
|
368
|
my $thisrule = $thisparser->{"rules"}{"BARESTRING"}; |
403
|
|
|
|
|
|
|
|
404
|
183
|
50
|
|
|
|
439
|
Parse::RecDescent::_trace(q{Trying rule: [BARESTRING]}, |
405
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
406
|
|
|
|
|
|
|
q{BARESTRING}, |
407
|
|
|
|
|
|
|
$tracelevel) |
408
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
409
|
|
|
|
|
|
|
|
410
|
183
|
|
|
|
|
247
|
my $def_at = @{$thisparser->{deferred}}; |
|
183
|
|
|
|
|
333
|
|
411
|
183
|
|
|
|
|
323
|
my $err_at = @{$thisparser->{errors}}; |
|
183
|
|
|
|
|
304
|
|
412
|
|
|
|
|
|
|
|
413
|
183
|
|
|
|
|
436
|
my $score; |
414
|
|
|
|
|
|
|
my $score_return; |
415
|
183
|
|
|
|
|
0
|
my $_tok; |
416
|
183
|
|
|
|
|
271
|
my $return = undef; |
417
|
183
|
|
|
|
|
318
|
my $_matched=0; |
418
|
183
|
|
|
|
|
255
|
my $commit=0; |
419
|
183
|
|
|
|
|
301
|
my @item = (); |
420
|
183
|
|
|
|
|
275
|
my %item = (); |
421
|
183
|
|
|
|
|
267
|
my $repeating = $_[2]; |
422
|
183
|
|
|
|
|
273
|
my $_noactions = $_[3]; |
423
|
183
|
50
|
|
|
|
376
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
183
|
|
|
|
|
261
|
|
|
183
|
|
|
|
|
350
|
|
424
|
183
|
|
|
|
|
342
|
my $_itempos = $_[5]; |
425
|
183
|
50
|
|
|
|
388
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
426
|
183
|
|
|
|
|
414
|
my $text; |
427
|
|
|
|
|
|
|
my $lastsep; |
428
|
183
|
|
|
|
|
0
|
my $current_match; |
429
|
183
|
|
|
|
|
442
|
my $expectation = new Parse::RecDescent::Expectation(q{/^[)('"]/}); |
430
|
183
|
|
|
|
|
1230
|
$expectation->at($_[1]); |
431
|
|
|
|
|
|
|
|
432
|
183
|
|
|
|
|
1148
|
my $thisline; |
433
|
183
|
|
|
|
|
636
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
434
|
|
|
|
|
|
|
|
435
|
|
|
|
|
|
|
|
436
|
|
|
|
|
|
|
|
437
|
183
|
|
33
|
|
|
1449
|
while (!$_matched && !$commit) |
438
|
|
|
|
|
|
|
{ |
439
|
|
|
|
|
|
|
|
440
|
183
|
50
|
|
|
|
397
|
Parse::RecDescent::_trace(q{Trying production: [/^[)('"]/ /^(?!\\(|\\))(?:\\\\ |\\S)+/]}, |
441
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
442
|
|
|
|
|
|
|
q{BARESTRING}, |
443
|
|
|
|
|
|
|
$tracelevel) |
444
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
445
|
183
|
|
|
|
|
428
|
my $thisprod = $thisrule->{"prods"}[0]; |
446
|
183
|
|
|
|
|
357
|
$text = $_[1]; |
447
|
183
|
|
|
|
|
258
|
my $_savetext; |
448
|
183
|
|
|
|
|
343
|
@item = (q{BARESTRING}); |
449
|
183
|
|
|
|
|
343
|
%item = (__RULE__ => q{BARESTRING}); |
450
|
183
|
|
|
|
|
266
|
my $repcount = 0; |
451
|
|
|
|
|
|
|
|
452
|
|
|
|
|
|
|
|
453
|
183
|
50
|
|
|
|
324
|
Parse::RecDescent::_trace(q{Trying terminal: [/^[)('"]/]}, Parse::RecDescent::_tracefirst($text), |
454
|
|
|
|
|
|
|
q{BARESTRING}, |
455
|
|
|
|
|
|
|
$tracelevel) |
456
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
457
|
183
|
|
|
|
|
325
|
undef $lastsep; |
458
|
183
|
|
|
|
|
412
|
$expectation->is(q{})->at($text); |
459
|
183
|
|
|
|
|
1244
|
$_savetext = $text; |
460
|
|
|
|
|
|
|
|
461
|
183
|
100
|
33
|
|
|
1136
|
if ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:^[)('"])/) |
|
183
|
50
|
|
|
|
1424
|
|
462
|
|
|
|
|
|
|
{ |
463
|
183
|
|
|
|
|
405
|
$text = $_savetext; |
464
|
183
|
|
|
|
|
617
|
$expectation->failed(); |
465
|
183
|
50
|
|
|
|
699
|
Parse::RecDescent::_trace(q{<>}, |
466
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
467
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
468
|
|
|
|
|
|
|
|
469
|
183
|
|
|
|
|
428
|
last; |
470
|
|
|
|
|
|
|
} |
471
|
0
|
|
|
|
|
0
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
472
|
0
|
|
|
|
|
0
|
substr($text,0,length($current_match),q{}); |
473
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
474
|
|
|
|
|
|
|
. $current_match . q{])}, |
475
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
476
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
477
|
0
|
|
|
|
|
0
|
push @item, $item{__PATTERN1__}=$current_match; |
478
|
0
|
|
|
|
|
0
|
$text = $_savetext; |
479
|
|
|
|
|
|
|
|
480
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{Trying terminal: [/^(?!\\(|\\))(?:\\\\ |\\S)+/]}, Parse::RecDescent::_tracefirst($text), |
481
|
|
|
|
|
|
|
q{BARESTRING}, |
482
|
|
|
|
|
|
|
$tracelevel) |
483
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
484
|
0
|
|
|
|
|
0
|
undef $lastsep; |
485
|
0
|
|
|
|
|
0
|
$expectation->is(q{/^(?!\\(|\\))(?:\\\\ |\\S)+/})->at($text); |
486
|
|
|
|
|
|
|
|
487
|
|
|
|
|
|
|
|
488
|
0
|
0
|
0
|
|
|
0
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:^(?!\(|\))(?:\\ |\S)+)/) |
|
0
|
0
|
|
|
|
0
|
|
489
|
|
|
|
|
|
|
{ |
490
|
0
|
0
|
|
|
|
0
|
$text = $lastsep . $text if defined $lastsep; |
491
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
492
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
493
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
494
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
495
|
|
|
|
|
|
|
|
496
|
0
|
|
|
|
|
0
|
last; |
497
|
|
|
|
|
|
|
} |
498
|
0
|
|
|
|
|
0
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
499
|
0
|
|
|
|
|
0
|
substr($text,0,length($current_match),q{}); |
500
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
501
|
|
|
|
|
|
|
. $current_match . q{])}, |
502
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
503
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
504
|
0
|
|
|
|
|
0
|
push @item, $item{__PATTERN2__}=$current_match; |
505
|
|
|
|
|
|
|
|
506
|
|
|
|
|
|
|
|
507
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{Trying action}, |
508
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
509
|
|
|
|
|
|
|
q{BARESTRING}, |
510
|
|
|
|
|
|
|
$tracelevel) |
511
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
512
|
|
|
|
|
|
|
|
513
|
|
|
|
|
|
|
|
514
|
0
|
0
|
|
|
|
0
|
$_tok = ($_noactions) ? 0 : do { $return = $item{__PATTERN1__} }; |
|
0
|
|
|
|
|
0
|
|
515
|
0
|
0
|
|
|
|
0
|
unless (defined $_tok) |
516
|
|
|
|
|
|
|
{ |
517
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
518
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
519
|
0
|
|
|
|
|
0
|
last; |
520
|
|
|
|
|
|
|
} |
521
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
522
|
|
|
|
|
|
|
. $_tok . q{])}, |
523
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
524
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
525
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
526
|
0
|
|
|
|
|
0
|
$item{__ACTION1__}=$_tok; |
527
|
|
|
|
|
|
|
|
528
|
|
|
|
|
|
|
|
529
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [/^[)('"]/ /^(?!\\(|\\))(?:\\\\ |\\S)+/]<<}, |
530
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
531
|
|
|
|
|
|
|
q{BARESTRING}, |
532
|
|
|
|
|
|
|
$tracelevel) |
533
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
534
|
|
|
|
|
|
|
|
535
|
|
|
|
|
|
|
|
536
|
|
|
|
|
|
|
|
537
|
0
|
|
|
|
|
0
|
$_matched = 1; |
538
|
0
|
|
|
|
|
0
|
last; |
539
|
|
|
|
|
|
|
} |
540
|
|
|
|
|
|
|
|
541
|
|
|
|
|
|
|
splice |
542
|
183
|
50
|
|
|
|
382
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
183
|
|
|
|
|
403
|
|
543
|
|
|
|
|
|
|
|
544
|
183
|
50
|
33
|
|
|
613
|
unless ( $_matched || defined($score) ) |
545
|
|
|
|
|
|
|
{ |
546
|
183
|
|
|
|
|
251
|
splice @{$thisparser->{deferred}}, $def_at; |
|
183
|
|
|
|
|
310
|
|
547
|
|
|
|
|
|
|
|
548
|
|
|
|
|
|
|
|
549
|
183
|
|
|
|
|
358
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
550
|
183
|
50
|
|
|
|
375
|
Parse::RecDescent::_trace(q{<>}, |
551
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
552
|
|
|
|
|
|
|
q{BARESTRING}, |
553
|
|
|
|
|
|
|
$tracelevel) |
554
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
555
|
183
|
|
|
|
|
901
|
return undef; |
556
|
|
|
|
|
|
|
} |
557
|
0
|
0
|
0
|
|
|
0
|
if (!defined($return) && defined($score)) |
558
|
|
|
|
|
|
|
{ |
559
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
560
|
|
|
|
|
|
|
q{BARESTRING}, |
561
|
|
|
|
|
|
|
$tracelevel) |
562
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
563
|
0
|
|
|
|
|
0
|
$return = $score_return; |
564
|
|
|
|
|
|
|
} |
565
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{errors}}, $err_at; |
|
0
|
|
|
|
|
0
|
|
566
|
0
|
0
|
|
|
|
0
|
$return = $item[$#item] unless defined $return; |
567
|
0
|
0
|
|
|
|
0
|
if (defined $::RD_TRACE) |
568
|
|
|
|
|
|
|
{ |
569
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
570
|
|
|
|
|
|
|
$return . q{])}, "", |
571
|
|
|
|
|
|
|
q{BARESTRING}, |
572
|
|
|
|
|
|
|
$tracelevel); |
573
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
574
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
575
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
576
|
|
|
|
|
|
|
, q{BARESTRING}, |
577
|
|
|
|
|
|
|
$tracelevel) |
578
|
|
|
|
|
|
|
} |
579
|
0
|
|
|
|
|
0
|
$_[1] = $text; |
580
|
0
|
|
|
|
|
0
|
return $return; |
581
|
|
|
|
|
|
|
} |
582
|
|
|
|
|
|
|
|
583
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
584
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::DOUBLE_QUOTED_STRING |
585
|
|
|
|
|
|
|
{ |
586
|
905
|
|
|
905
|
|
1847
|
my $thisparser = $_[0]; |
587
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
1283
|
|
588
|
905
|
|
50
|
|
|
2057
|
local $tracelevel = ($tracelevel||0)+1; |
589
|
905
|
|
|
|
|
1320
|
$ERRORS = 0; |
590
|
905
|
|
|
|
|
1796
|
my $thisrule = $thisparser->{"rules"}{"DOUBLE_QUOTED_STRING"}; |
591
|
|
|
|
|
|
|
|
592
|
905
|
50
|
|
|
|
1775
|
Parse::RecDescent::_trace(q{Trying rule: [DOUBLE_QUOTED_STRING]}, |
593
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
594
|
|
|
|
|
|
|
q{DOUBLE_QUOTED_STRING}, |
595
|
|
|
|
|
|
|
$tracelevel) |
596
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
597
|
|
|
|
|
|
|
|
598
|
905
|
|
|
|
|
1322
|
my $def_at = @{$thisparser->{deferred}}; |
|
905
|
|
|
|
|
1560
|
|
599
|
905
|
|
|
|
|
1570
|
my $err_at = @{$thisparser->{errors}}; |
|
905
|
|
|
|
|
1535
|
|
600
|
|
|
|
|
|
|
|
601
|
905
|
|
|
|
|
2548
|
my $score; |
602
|
|
|
|
|
|
|
my $score_return; |
603
|
905
|
|
|
|
|
0
|
my $_tok; |
604
|
905
|
|
|
|
|
1403
|
my $return = undef; |
605
|
905
|
|
|
|
|
1321
|
my $_matched=0; |
606
|
905
|
|
|
|
|
1206
|
my $commit=0; |
607
|
905
|
|
|
|
|
1507
|
my @item = (); |
608
|
905
|
|
|
|
|
1510
|
my %item = (); |
609
|
905
|
|
|
|
|
1407
|
my $repeating = $_[2]; |
610
|
905
|
|
|
|
|
1295
|
my $_noactions = $_[3]; |
611
|
905
|
50
|
|
|
|
1848
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
905
|
|
|
|
|
1326
|
|
|
905
|
|
|
|
|
1484
|
|
612
|
905
|
|
|
|
|
1623
|
my $_itempos = $_[5]; |
613
|
905
|
50
|
|
|
|
1966
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
614
|
905
|
|
|
|
|
2121
|
my $text; |
615
|
|
|
|
|
|
|
my $lastsep; |
616
|
905
|
|
|
|
|
0
|
my $current_match; |
617
|
905
|
|
|
|
|
1989
|
my $expectation = new Parse::RecDescent::Expectation(q{'"'}); |
618
|
905
|
|
|
|
|
6001
|
$expectation->at($_[1]); |
619
|
|
|
|
|
|
|
|
620
|
905
|
|
|
|
|
3689
|
my $thisline; |
621
|
905
|
|
|
|
|
2703
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
622
|
|
|
|
|
|
|
|
623
|
|
|
|
|
|
|
|
624
|
|
|
|
|
|
|
|
625
|
905
|
|
33
|
|
|
6445
|
while (!$_matched && !$commit) |
626
|
|
|
|
|
|
|
{ |
627
|
|
|
|
|
|
|
|
628
|
905
|
50
|
|
|
|
2015
|
Parse::RecDescent::_trace(q{Trying production: ['"' /(?:\\\\["\\\\]|[^"])*/ '"']}, |
629
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
630
|
|
|
|
|
|
|
q{DOUBLE_QUOTED_STRING}, |
631
|
|
|
|
|
|
|
$tracelevel) |
632
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
633
|
905
|
|
|
|
|
1707
|
my $thisprod = $thisrule->{"prods"}[0]; |
634
|
905
|
|
|
|
|
1702
|
$text = $_[1]; |
635
|
905
|
|
|
|
|
1231
|
my $_savetext; |
636
|
905
|
|
|
|
|
1686
|
@item = (q{DOUBLE_QUOTED_STRING}); |
637
|
905
|
|
|
|
|
1795
|
%item = (__RULE__ => q{DOUBLE_QUOTED_STRING}); |
638
|
905
|
|
|
|
|
1471
|
my $repcount = 0; |
639
|
|
|
|
|
|
|
|
640
|
|
|
|
|
|
|
|
641
|
905
|
50
|
|
|
|
1798
|
Parse::RecDescent::_trace(q{Trying terminal: ['"']}, |
642
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
643
|
|
|
|
|
|
|
q{DOUBLE_QUOTED_STRING}, |
644
|
|
|
|
|
|
|
$tracelevel) |
645
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
646
|
905
|
|
|
|
|
1631
|
undef $lastsep; |
647
|
905
|
|
|
|
|
1965
|
$expectation->is(q{})->at($text); |
648
|
|
|
|
|
|
|
|
649
|
|
|
|
|
|
|
|
650
|
905
|
100
|
66
|
|
|
10372
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A\"/) |
|
905
|
100
|
|
|
|
8213
|
|
651
|
|
|
|
|
|
|
{ |
652
|
184
|
50
|
|
|
|
688
|
$text = $lastsep . $text if defined $lastsep; |
653
|
|
|
|
|
|
|
|
654
|
184
|
|
|
|
|
601
|
$expectation->failed(); |
655
|
184
|
50
|
|
|
|
730
|
Parse::RecDescent::_trace(qq{<>}, |
656
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
657
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
658
|
184
|
|
|
|
|
403
|
last; |
659
|
|
|
|
|
|
|
} |
660
|
721
|
|
|
|
|
3638
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
661
|
721
|
|
|
|
|
2590
|
substr($text,0,length($current_match),q{}); |
662
|
721
|
50
|
|
|
|
1717
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
663
|
|
|
|
|
|
|
. $current_match . q{])}, |
664
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
665
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
666
|
721
|
|
|
|
|
1969
|
push @item, $item{__STRING1__}=$current_match; |
667
|
|
|
|
|
|
|
|
668
|
|
|
|
|
|
|
|
669
|
721
|
50
|
|
|
|
1498
|
Parse::RecDescent::_trace(q{Trying terminal: [/(?:\\\\["\\\\]|[^"])*/]}, Parse::RecDescent::_tracefirst($text), |
670
|
|
|
|
|
|
|
q{DOUBLE_QUOTED_STRING}, |
671
|
|
|
|
|
|
|
$tracelevel) |
672
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
673
|
721
|
|
|
|
|
1093
|
undef $lastsep; |
674
|
721
|
|
|
|
|
1739
|
$expectation->is(q{/(?:\\\\["\\\\]|[^"])*/})->at($text); |
675
|
|
|
|
|
|
|
|
676
|
|
|
|
|
|
|
|
677
|
721
|
50
|
33
|
|
|
7513
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:(?:\\["\\]|[^"])*)/) |
|
721
|
50
|
|
|
|
8446
|
|
678
|
|
|
|
|
|
|
{ |
679
|
0
|
0
|
|
|
|
0
|
$text = $lastsep . $text if defined $lastsep; |
680
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
681
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
682
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
683
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
684
|
|
|
|
|
|
|
|
685
|
0
|
|
|
|
|
0
|
last; |
686
|
|
|
|
|
|
|
} |
687
|
721
|
|
|
|
|
3592
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
688
|
721
|
|
|
|
|
2318
|
substr($text,0,length($current_match),q{}); |
689
|
721
|
50
|
|
|
|
1542
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
690
|
|
|
|
|
|
|
. $current_match . q{])}, |
691
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
692
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
693
|
721
|
|
|
|
|
1773
|
push @item, $item{__PATTERN1__}=$current_match; |
694
|
|
|
|
|
|
|
|
695
|
|
|
|
|
|
|
|
696
|
721
|
50
|
|
|
|
1400
|
Parse::RecDescent::_trace(q{Trying terminal: ['"']}, |
697
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
698
|
|
|
|
|
|
|
q{DOUBLE_QUOTED_STRING}, |
699
|
|
|
|
|
|
|
$tracelevel) |
700
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
701
|
721
|
|
|
|
|
1093
|
undef $lastsep; |
702
|
721
|
|
|
|
|
1862
|
$expectation->is(q{'"'})->at($text); |
703
|
|
|
|
|
|
|
|
704
|
|
|
|
|
|
|
|
705
|
721
|
50
|
33
|
|
|
7126
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A\"/) |
|
721
|
50
|
|
|
|
5889
|
|
706
|
|
|
|
|
|
|
{ |
707
|
0
|
0
|
|
|
|
0
|
$text = $lastsep . $text if defined $lastsep; |
708
|
|
|
|
|
|
|
|
709
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
710
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(qq{<>}, |
711
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
712
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
713
|
0
|
|
|
|
|
0
|
last; |
714
|
|
|
|
|
|
|
} |
715
|
721
|
|
|
|
|
3060
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
716
|
721
|
|
|
|
|
2251
|
substr($text,0,length($current_match),q{}); |
717
|
721
|
50
|
|
|
|
1519
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
718
|
|
|
|
|
|
|
. $current_match . q{])}, |
719
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
720
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
721
|
721
|
|
|
|
|
1911
|
push @item, $item{__STRING2__}=$current_match; |
722
|
|
|
|
|
|
|
|
723
|
|
|
|
|
|
|
|
724
|
721
|
50
|
|
|
|
1642
|
Parse::RecDescent::_trace(q{Trying action}, |
725
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
726
|
|
|
|
|
|
|
q{DOUBLE_QUOTED_STRING}, |
727
|
|
|
|
|
|
|
$tracelevel) |
728
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
729
|
|
|
|
|
|
|
|
730
|
|
|
|
|
|
|
|
731
|
721
|
50
|
|
|
|
1446
|
$_tok = ($_noactions) ? 0 : do { $return = $item{__PATTERN1__} }; |
|
721
|
|
|
|
|
1597
|
|
732
|
721
|
50
|
|
|
|
1484
|
unless (defined $_tok) |
733
|
|
|
|
|
|
|
{ |
734
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
735
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
736
|
0
|
|
|
|
|
0
|
last; |
737
|
|
|
|
|
|
|
} |
738
|
721
|
50
|
|
|
|
1525
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
739
|
|
|
|
|
|
|
. $_tok . q{])}, |
740
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
741
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
742
|
721
|
|
|
|
|
1141
|
push @item, $_tok; |
743
|
721
|
|
|
|
|
1322
|
$item{__ACTION1__}=$_tok; |
744
|
|
|
|
|
|
|
|
745
|
|
|
|
|
|
|
|
746
|
721
|
50
|
|
|
|
1629
|
Parse::RecDescent::_trace(q{>>Matched production: ['"' /(?:\\\\["\\\\]|[^"])*/ '"']<<}, |
747
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
748
|
|
|
|
|
|
|
q{DOUBLE_QUOTED_STRING}, |
749
|
|
|
|
|
|
|
$tracelevel) |
750
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
751
|
|
|
|
|
|
|
|
752
|
|
|
|
|
|
|
|
753
|
|
|
|
|
|
|
|
754
|
721
|
|
|
|
|
1188
|
$_matched = 1; |
755
|
721
|
|
|
|
|
1496
|
last; |
756
|
|
|
|
|
|
|
} |
757
|
|
|
|
|
|
|
|
758
|
|
|
|
|
|
|
splice |
759
|
905
|
100
|
|
|
|
1830
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
184
|
|
|
|
|
411
|
|
760
|
|
|
|
|
|
|
|
761
|
905
|
100
|
66
|
|
|
2092
|
unless ( $_matched || defined($score) ) |
762
|
|
|
|
|
|
|
{ |
763
|
184
|
|
|
|
|
270
|
splice @{$thisparser->{deferred}}, $def_at; |
|
184
|
|
|
|
|
326
|
|
764
|
|
|
|
|
|
|
|
765
|
|
|
|
|
|
|
|
766
|
184
|
|
|
|
|
316
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
767
|
184
|
50
|
|
|
|
373
|
Parse::RecDescent::_trace(q{<>}, |
768
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
769
|
|
|
|
|
|
|
q{DOUBLE_QUOTED_STRING}, |
770
|
|
|
|
|
|
|
$tracelevel) |
771
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
772
|
184
|
|
|
|
|
929
|
return undef; |
773
|
|
|
|
|
|
|
} |
774
|
721
|
50
|
33
|
|
|
1622
|
if (!defined($return) && defined($score)) |
775
|
|
|
|
|
|
|
{ |
776
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
777
|
|
|
|
|
|
|
q{DOUBLE_QUOTED_STRING}, |
778
|
|
|
|
|
|
|
$tracelevel) |
779
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
780
|
0
|
|
|
|
|
0
|
$return = $score_return; |
781
|
|
|
|
|
|
|
} |
782
|
721
|
|
|
|
|
975
|
splice @{$thisparser->{errors}}, $err_at; |
|
721
|
|
|
|
|
1834
|
|
783
|
721
|
50
|
|
|
|
1437
|
$return = $item[$#item] unless defined $return; |
784
|
721
|
50
|
|
|
|
1441
|
if (defined $::RD_TRACE) |
785
|
|
|
|
|
|
|
{ |
786
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
787
|
|
|
|
|
|
|
$return . q{])}, "", |
788
|
|
|
|
|
|
|
q{DOUBLE_QUOTED_STRING}, |
789
|
|
|
|
|
|
|
$tracelevel); |
790
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
791
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
792
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
793
|
|
|
|
|
|
|
, q{DOUBLE_QUOTED_STRING}, |
794
|
|
|
|
|
|
|
$tracelevel) |
795
|
|
|
|
|
|
|
} |
796
|
721
|
|
|
|
|
1790
|
$_[1] = $text; |
797
|
721
|
|
|
|
|
4846
|
return $return; |
798
|
|
|
|
|
|
|
} |
799
|
|
|
|
|
|
|
|
800
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
801
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::HTML |
802
|
|
|
|
|
|
|
{ |
803
|
53
|
|
|
53
|
|
94
|
my $thisparser = $_[0]; |
804
|
1
|
|
|
1
|
|
10
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
901
|
|
805
|
53
|
|
50
|
|
|
251
|
local $tracelevel = ($tracelevel||0)+1; |
806
|
53
|
|
|
|
|
88
|
$ERRORS = 0; |
807
|
53
|
|
|
|
|
147
|
my $thisrule = $thisparser->{"rules"}{"HTML"}; |
808
|
|
|
|
|
|
|
|
809
|
53
|
50
|
|
|
|
105
|
Parse::RecDescent::_trace(q{Trying rule: [HTML]}, |
810
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
811
|
|
|
|
|
|
|
q{HTML}, |
812
|
|
|
|
|
|
|
$tracelevel) |
813
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
814
|
|
|
|
|
|
|
|
815
|
53
|
|
|
|
|
73
|
my $def_at = @{$thisparser->{deferred}}; |
|
53
|
|
|
|
|
108
|
|
816
|
53
|
|
|
|
|
96
|
my $err_at = @{$thisparser->{errors}}; |
|
53
|
|
|
|
|
94
|
|
817
|
|
|
|
|
|
|
|
818
|
53
|
|
|
|
|
137
|
my $score; |
819
|
|
|
|
|
|
|
my $score_return; |
820
|
53
|
|
|
|
|
0
|
my $_tok; |
821
|
53
|
|
|
|
|
95
|
my $return = undef; |
822
|
53
|
|
|
|
|
83
|
my $_matched=0; |
823
|
53
|
|
|
|
|
76
|
my $commit=0; |
824
|
53
|
|
|
|
|
94
|
my @item = (); |
825
|
53
|
|
|
|
|
92
|
my %item = (); |
826
|
53
|
|
|
|
|
78
|
my $repeating = $_[2]; |
827
|
53
|
|
|
|
|
89
|
my $_noactions = $_[3]; |
828
|
53
|
50
|
|
|
|
110
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
53
|
|
|
|
|
76
|
|
|
53
|
|
|
|
|
108
|
|
829
|
53
|
|
|
|
|
79
|
my $_itempos = $_[5]; |
830
|
53
|
50
|
|
|
|
148
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
831
|
53
|
|
|
|
|
129
|
my $text; |
832
|
|
|
|
|
|
|
my $lastsep; |
833
|
53
|
|
|
|
|
0
|
my $current_match; |
834
|
53
|
|
|
|
|
139
|
my $expectation = new Parse::RecDescent::Expectation(q{/"HTML"|HTML/i}); |
835
|
53
|
|
|
|
|
355
|
$expectation->at($_[1]); |
836
|
|
|
|
|
|
|
|
837
|
53
|
|
|
|
|
224
|
my $thisline; |
838
|
53
|
|
|
|
|
182
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
839
|
|
|
|
|
|
|
|
840
|
|
|
|
|
|
|
|
841
|
|
|
|
|
|
|
|
842
|
53
|
|
33
|
|
|
575
|
while (!$_matched && !$commit) |
843
|
|
|
|
|
|
|
{ |
844
|
|
|
|
|
|
|
|
845
|
53
|
50
|
|
|
|
115
|
Parse::RecDescent::_trace(q{Trying production: [/"HTML"|HTML/i]}, |
846
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
847
|
|
|
|
|
|
|
q{HTML}, |
848
|
|
|
|
|
|
|
$tracelevel) |
849
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
850
|
53
|
|
|
|
|
119
|
my $thisprod = $thisrule->{"prods"}[0]; |
851
|
53
|
|
|
|
|
99
|
$text = $_[1]; |
852
|
53
|
|
|
|
|
88
|
my $_savetext; |
853
|
53
|
|
|
|
|
107
|
@item = (q{HTML}); |
854
|
53
|
|
|
|
|
115
|
%item = (__RULE__ => q{HTML}); |
855
|
53
|
|
|
|
|
86
|
my $repcount = 0; |
856
|
|
|
|
|
|
|
|
857
|
|
|
|
|
|
|
|
858
|
53
|
50
|
|
|
|
101
|
Parse::RecDescent::_trace(q{Trying terminal: [/"HTML"|HTML/i]}, Parse::RecDescent::_tracefirst($text), |
859
|
|
|
|
|
|
|
q{HTML}, |
860
|
|
|
|
|
|
|
$tracelevel) |
861
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
862
|
53
|
|
|
|
|
102
|
undef $lastsep; |
863
|
53
|
|
|
|
|
124
|
$expectation->is(q{})->at($text); |
864
|
|
|
|
|
|
|
|
865
|
|
|
|
|
|
|
|
866
|
53
|
50
|
66
|
|
|
624
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:"HTML"|HTML)/i) |
|
53
|
100
|
|
|
|
566
|
|
867
|
|
|
|
|
|
|
{ |
868
|
44
|
50
|
|
|
|
178
|
$text = $lastsep . $text if defined $lastsep; |
869
|
44
|
|
|
|
|
142
|
$expectation->failed(); |
870
|
44
|
50
|
|
|
|
230
|
Parse::RecDescent::_trace(q{<>}, |
871
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
872
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
873
|
|
|
|
|
|
|
|
874
|
44
|
|
|
|
|
100
|
last; |
875
|
|
|
|
|
|
|
} |
876
|
9
|
|
|
|
|
62
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
877
|
9
|
|
|
|
|
38
|
substr($text,0,length($current_match),q{}); |
878
|
9
|
50
|
|
|
|
30
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
879
|
|
|
|
|
|
|
. $current_match . q{])}, |
880
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
881
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
882
|
9
|
|
|
|
|
32
|
push @item, $item{__PATTERN1__}=$current_match; |
883
|
|
|
|
|
|
|
|
884
|
|
|
|
|
|
|
|
885
|
9
|
50
|
|
|
|
24
|
Parse::RecDescent::_trace(q{Trying action}, |
886
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
887
|
|
|
|
|
|
|
q{HTML}, |
888
|
|
|
|
|
|
|
$tracelevel) |
889
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
890
|
|
|
|
|
|
|
|
891
|
|
|
|
|
|
|
|
892
|
9
|
50
|
|
|
|
22
|
$_tok = ($_noactions) ? 0 : do { $return = "HTML" }; |
|
9
|
|
|
|
|
23
|
|
893
|
9
|
50
|
|
|
|
25
|
unless (defined $_tok) |
894
|
|
|
|
|
|
|
{ |
895
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
896
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
897
|
0
|
|
|
|
|
0
|
last; |
898
|
|
|
|
|
|
|
} |
899
|
9
|
50
|
|
|
|
36
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
900
|
|
|
|
|
|
|
. $_tok . q{])}, |
901
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
902
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
903
|
9
|
|
|
|
|
19
|
push @item, $_tok; |
904
|
9
|
|
|
|
|
22
|
$item{__ACTION1__}=$_tok; |
905
|
|
|
|
|
|
|
|
906
|
|
|
|
|
|
|
|
907
|
9
|
50
|
|
|
|
20
|
Parse::RecDescent::_trace(q{>>Matched production: [/"HTML"|HTML/i]<<}, |
908
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
909
|
|
|
|
|
|
|
q{HTML}, |
910
|
|
|
|
|
|
|
$tracelevel) |
911
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
912
|
|
|
|
|
|
|
|
913
|
|
|
|
|
|
|
|
914
|
|
|
|
|
|
|
|
915
|
9
|
|
|
|
|
18
|
$_matched = 1; |
916
|
9
|
|
|
|
|
20
|
last; |
917
|
|
|
|
|
|
|
} |
918
|
|
|
|
|
|
|
|
919
|
|
|
|
|
|
|
splice |
920
|
53
|
100
|
|
|
|
126
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
44
|
|
|
|
|
104
|
|
921
|
|
|
|
|
|
|
|
922
|
53
|
100
|
66
|
|
|
198
|
unless ( $_matched || defined($score) ) |
923
|
|
|
|
|
|
|
{ |
924
|
44
|
|
|
|
|
74
|
splice @{$thisparser->{deferred}}, $def_at; |
|
44
|
|
|
|
|
81
|
|
925
|
|
|
|
|
|
|
|
926
|
|
|
|
|
|
|
|
927
|
44
|
|
|
|
|
88
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
928
|
44
|
50
|
|
|
|
96
|
Parse::RecDescent::_trace(q{<>}, |
929
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
930
|
|
|
|
|
|
|
q{HTML}, |
931
|
|
|
|
|
|
|
$tracelevel) |
932
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
933
|
44
|
|
|
|
|
227
|
return undef; |
934
|
|
|
|
|
|
|
} |
935
|
9
|
50
|
33
|
|
|
31
|
if (!defined($return) && defined($score)) |
936
|
|
|
|
|
|
|
{ |
937
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
938
|
|
|
|
|
|
|
q{HTML}, |
939
|
|
|
|
|
|
|
$tracelevel) |
940
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
941
|
0
|
|
|
|
|
0
|
$return = $score_return; |
942
|
|
|
|
|
|
|
} |
943
|
9
|
|
|
|
|
39
|
splice @{$thisparser->{errors}}, $err_at; |
|
9
|
|
|
|
|
22
|
|
944
|
9
|
50
|
|
|
|
32
|
$return = $item[$#item] unless defined $return; |
945
|
9
|
50
|
|
|
|
29
|
if (defined $::RD_TRACE) |
946
|
|
|
|
|
|
|
{ |
947
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
948
|
|
|
|
|
|
|
$return . q{])}, "", |
949
|
|
|
|
|
|
|
q{HTML}, |
950
|
|
|
|
|
|
|
$tracelevel); |
951
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
952
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
953
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
954
|
|
|
|
|
|
|
, q{HTML}, |
955
|
|
|
|
|
|
|
$tracelevel) |
956
|
|
|
|
|
|
|
} |
957
|
9
|
|
|
|
|
23
|
$_[1] = $text; |
958
|
9
|
|
|
|
|
61
|
return $return; |
959
|
|
|
|
|
|
|
} |
960
|
|
|
|
|
|
|
|
961
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
962
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::KVPAIRS |
963
|
|
|
|
|
|
|
{ |
964
|
136
|
|
|
136
|
|
302
|
my $thisparser = $_[0]; |
965
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
1
|
|
|
1
|
|
|
|
|
1201
|
|
966
|
136
|
|
50
|
|
|
339
|
local $tracelevel = ($tracelevel||0)+1; |
967
|
136
|
|
|
|
|
236
|
$ERRORS = 0; |
968
|
136
|
|
|
|
|
319
|
my $thisrule = $thisparser->{"rules"}{"KVPAIRS"}; |
969
|
|
|
|
|
|
|
|
970
|
136
|
50
|
|
|
|
277
|
Parse::RecDescent::_trace(q{Trying rule: [KVPAIRS]}, |
971
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
972
|
|
|
|
|
|
|
q{KVPAIRS}, |
973
|
|
|
|
|
|
|
$tracelevel) |
974
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
975
|
|
|
|
|
|
|
|
976
|
136
|
|
|
|
|
182
|
my $def_at = @{$thisparser->{deferred}}; |
|
136
|
|
|
|
|
233
|
|
977
|
136
|
|
|
|
|
272
|
my $err_at = @{$thisparser->{errors}}; |
|
136
|
|
|
|
|
228
|
|
978
|
|
|
|
|
|
|
|
979
|
136
|
|
|
|
|
527
|
my $score; |
980
|
|
|
|
|
|
|
my $score_return; |
981
|
136
|
|
|
|
|
0
|
my $_tok; |
982
|
136
|
|
|
|
|
186
|
my $return = undef; |
983
|
136
|
|
|
|
|
194
|
my $_matched=0; |
984
|
136
|
|
|
|
|
206
|
my $commit=0; |
985
|
136
|
|
|
|
|
219
|
my @item = (); |
986
|
136
|
|
|
|
|
199
|
my %item = (); |
987
|
136
|
|
|
|
|
257
|
my $repeating = $_[2]; |
988
|
136
|
|
|
|
|
214
|
my $_noactions = $_[3]; |
989
|
136
|
50
|
|
|
|
301
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
136
|
|
|
|
|
192
|
|
|
136
|
|
|
|
|
278
|
|
990
|
136
|
|
|
|
|
206
|
my $_itempos = $_[5]; |
991
|
136
|
50
|
|
|
|
314
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
992
|
136
|
|
|
|
|
309
|
my $text; |
993
|
|
|
|
|
|
|
my $lastsep; |
994
|
136
|
|
|
|
|
0
|
my $current_match; |
995
|
136
|
|
|
|
|
331
|
my $expectation = new Parse::RecDescent::Expectation(q{'('}); |
996
|
136
|
|
|
|
|
903
|
$expectation->at($_[1]); |
997
|
|
|
|
|
|
|
|
998
|
136
|
|
|
|
|
588
|
my $thisline; |
999
|
136
|
|
|
|
|
485
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
1000
|
|
|
|
|
|
|
|
1001
|
|
|
|
|
|
|
|
1002
|
|
|
|
|
|
|
|
1003
|
136
|
|
33
|
|
|
1065
|
while (!$_matched && !$commit) |
1004
|
|
|
|
|
|
|
{ |
1005
|
|
|
|
|
|
|
|
1006
|
136
|
50
|
|
|
|
280
|
Parse::RecDescent::_trace(q{Trying production: ['(' kvpair ')']}, |
1007
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
1008
|
|
|
|
|
|
|
q{KVPAIRS}, |
1009
|
|
|
|
|
|
|
$tracelevel) |
1010
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1011
|
136
|
|
|
|
|
294
|
my $thisprod = $thisrule->{"prods"}[0]; |
1012
|
136
|
|
|
|
|
266
|
$text = $_[1]; |
1013
|
136
|
|
|
|
|
190
|
my $_savetext; |
1014
|
136
|
|
|
|
|
263
|
@item = (q{KVPAIRS}); |
1015
|
136
|
|
|
|
|
257
|
%item = (__RULE__ => q{KVPAIRS}); |
1016
|
136
|
|
|
|
|
220
|
my $repcount = 0; |
1017
|
|
|
|
|
|
|
|
1018
|
|
|
|
|
|
|
|
1019
|
136
|
50
|
|
|
|
288
|
Parse::RecDescent::_trace(q{Trying terminal: ['(']}, |
1020
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1021
|
|
|
|
|
|
|
q{KVPAIRS}, |
1022
|
|
|
|
|
|
|
$tracelevel) |
1023
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1024
|
136
|
|
|
|
|
234
|
undef $lastsep; |
1025
|
136
|
|
|
|
|
303
|
$expectation->is(q{})->at($text); |
1026
|
|
|
|
|
|
|
|
1027
|
|
|
|
|
|
|
|
1028
|
136
|
100
|
33
|
|
|
1480
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and do { $_tok = "("; 1 } and |
|
136
|
100
|
66
|
|
|
977
|
|
|
136
|
|
66
|
|
|
238
|
|
|
136
|
|
|
|
|
691
|
|
1029
|
|
|
|
|
|
|
substr($text,0,length($_tok)) eq $_tok and |
1030
|
123
|
|
|
|
|
261
|
do { substr($text,0,length($_tok)) = ""; 1; } |
|
123
|
|
|
|
|
394
|
|
1031
|
|
|
|
|
|
|
) |
1032
|
|
|
|
|
|
|
{ |
1033
|
13
|
50
|
|
|
|
35
|
$text = $lastsep . $text if defined $lastsep; |
1034
|
|
|
|
|
|
|
|
1035
|
13
|
|
|
|
|
40
|
$expectation->failed(); |
1036
|
13
|
50
|
|
|
|
54
|
Parse::RecDescent::_trace(q{<>}, |
1037
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1038
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1039
|
13
|
|
|
|
|
27
|
last; |
1040
|
|
|
|
|
|
|
} |
1041
|
123
|
50
|
|
|
|
357
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
1042
|
|
|
|
|
|
|
. $_tok . q{])}, |
1043
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1044
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1045
|
123
|
|
|
|
|
300
|
push @item, $item{__STRING1__}=$_tok; |
1046
|
|
|
|
|
|
|
|
1047
|
|
|
|
|
|
|
|
1048
|
123
|
50
|
|
|
|
259
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [kvpair]}, |
1049
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1050
|
|
|
|
|
|
|
q{KVPAIRS}, |
1051
|
|
|
|
|
|
|
$tracelevel) |
1052
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1053
|
123
|
|
|
|
|
299
|
$expectation->is(q{kvpair})->at($text); |
1054
|
|
|
|
|
|
|
|
1055
|
123
|
50
|
|
255
|
|
1440
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::kvpair, 1, 100000000, $_noactions,$expectation,sub { \@arg },undef))) |
|
255
|
|
|
|
|
495
|
|
1056
|
|
|
|
|
|
|
{ |
1057
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
1058
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1059
|
|
|
|
|
|
|
q{KVPAIRS}, |
1060
|
|
|
|
|
|
|
$tracelevel) |
1061
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1062
|
0
|
|
|
|
|
0
|
last; |
1063
|
|
|
|
|
|
|
} |
1064
|
123
|
50
|
|
|
|
1844
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [kvpair]<< (} |
1065
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
1066
|
|
|
|
|
|
|
|
1067
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1068
|
|
|
|
|
|
|
q{KVPAIRS}, |
1069
|
|
|
|
|
|
|
$tracelevel) |
1070
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1071
|
123
|
|
|
|
|
285
|
$item{q{kvpair(s)}} = $_tok; |
1072
|
123
|
|
|
|
|
223
|
push @item, $_tok; |
1073
|
|
|
|
|
|
|
|
1074
|
|
|
|
|
|
|
|
1075
|
|
|
|
|
|
|
|
1076
|
123
|
50
|
|
|
|
247
|
Parse::RecDescent::_trace(q{Trying terminal: [')']}, |
1077
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1078
|
|
|
|
|
|
|
q{KVPAIRS}, |
1079
|
|
|
|
|
|
|
$tracelevel) |
1080
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1081
|
123
|
|
|
|
|
216
|
undef $lastsep; |
1082
|
123
|
|
|
|
|
298
|
$expectation->is(q{')'})->at($text); |
1083
|
|
|
|
|
|
|
|
1084
|
|
|
|
|
|
|
|
1085
|
123
|
50
|
33
|
|
|
1429
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and do { $_tok = ")"; 1 } and |
|
123
|
50
|
33
|
|
|
742
|
|
|
123
|
|
33
|
|
|
256
|
|
|
123
|
|
|
|
|
623
|
|
1086
|
|
|
|
|
|
|
substr($text,0,length($_tok)) eq $_tok and |
1087
|
123
|
|
|
|
|
239
|
do { substr($text,0,length($_tok)) = ""; 1; } |
|
123
|
|
|
|
|
359
|
|
1088
|
|
|
|
|
|
|
) |
1089
|
|
|
|
|
|
|
{ |
1090
|
0
|
0
|
|
|
|
0
|
$text = $lastsep . $text if defined $lastsep; |
1091
|
|
|
|
|
|
|
|
1092
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
1093
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
1094
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1095
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1096
|
0
|
|
|
|
|
0
|
last; |
1097
|
|
|
|
|
|
|
} |
1098
|
123
|
50
|
|
|
|
350
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
1099
|
|
|
|
|
|
|
. $_tok . q{])}, |
1100
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1101
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1102
|
123
|
|
|
|
|
314
|
push @item, $item{__STRING2__}=$_tok; |
1103
|
|
|
|
|
|
|
|
1104
|
|
|
|
|
|
|
|
1105
|
123
|
50
|
|
|
|
245
|
Parse::RecDescent::_trace(q{Trying action}, |
1106
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1107
|
|
|
|
|
|
|
q{KVPAIRS}, |
1108
|
|
|
|
|
|
|
$tracelevel) |
1109
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1110
|
|
|
|
|
|
|
|
1111
|
|
|
|
|
|
|
|
1112
|
123
|
50
|
|
|
|
223
|
$_tok = ($_noactions) ? 0 : do { $return = { map { (%$_) } @{$item{'kvpair(s)'}} } }; |
|
123
|
|
|
|
|
198
|
|
|
132
|
|
|
|
|
784
|
|
|
123
|
|
|
|
|
324
|
|
1113
|
123
|
50
|
|
|
|
317
|
unless (defined $_tok) |
1114
|
|
|
|
|
|
|
{ |
1115
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
1116
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1117
|
0
|
|
|
|
|
0
|
last; |
1118
|
|
|
|
|
|
|
} |
1119
|
123
|
50
|
|
|
|
248
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
1120
|
|
|
|
|
|
|
. $_tok . q{])}, |
1121
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1122
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1123
|
123
|
|
|
|
|
266
|
push @item, $_tok; |
1124
|
123
|
|
|
|
|
227
|
$item{__ACTION1__}=$_tok; |
1125
|
|
|
|
|
|
|
|
1126
|
|
|
|
|
|
|
|
1127
|
123
|
50
|
|
|
|
270
|
Parse::RecDescent::_trace(q{>>Matched production: ['(' kvpair ')']<<}, |
1128
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1129
|
|
|
|
|
|
|
q{KVPAIRS}, |
1130
|
|
|
|
|
|
|
$tracelevel) |
1131
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1132
|
|
|
|
|
|
|
|
1133
|
|
|
|
|
|
|
|
1134
|
|
|
|
|
|
|
|
1135
|
123
|
|
|
|
|
191
|
$_matched = 1; |
1136
|
123
|
|
|
|
|
290
|
last; |
1137
|
|
|
|
|
|
|
} |
1138
|
|
|
|
|
|
|
|
1139
|
|
|
|
|
|
|
splice |
1140
|
136
|
100
|
|
|
|
305
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
13
|
|
|
|
|
32
|
|
1141
|
|
|
|
|
|
|
|
1142
|
136
|
100
|
66
|
|
|
320
|
unless ( $_matched || defined($score) ) |
1143
|
|
|
|
|
|
|
{ |
1144
|
13
|
|
|
|
|
18
|
splice @{$thisparser->{deferred}}, $def_at; |
|
13
|
|
|
|
|
23
|
|
1145
|
|
|
|
|
|
|
|
1146
|
|
|
|
|
|
|
|
1147
|
13
|
|
|
|
|
26
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
1148
|
13
|
50
|
|
|
|
26
|
Parse::RecDescent::_trace(q{<>}, |
1149
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
1150
|
|
|
|
|
|
|
q{KVPAIRS}, |
1151
|
|
|
|
|
|
|
$tracelevel) |
1152
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1153
|
13
|
|
|
|
|
63
|
return undef; |
1154
|
|
|
|
|
|
|
} |
1155
|
123
|
50
|
33
|
|
|
311
|
if (!defined($return) && defined($score)) |
1156
|
|
|
|
|
|
|
{ |
1157
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
1158
|
|
|
|
|
|
|
q{KVPAIRS}, |
1159
|
|
|
|
|
|
|
$tracelevel) |
1160
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1161
|
0
|
|
|
|
|
0
|
$return = $score_return; |
1162
|
|
|
|
|
|
|
} |
1163
|
123
|
|
|
|
|
173
|
splice @{$thisparser->{errors}}, $err_at; |
|
123
|
|
|
|
|
329
|
|
1164
|
123
|
50
|
|
|
|
268
|
$return = $item[$#item] unless defined $return; |
1165
|
123
|
50
|
|
|
|
253
|
if (defined $::RD_TRACE) |
1166
|
|
|
|
|
|
|
{ |
1167
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
1168
|
|
|
|
|
|
|
$return . q{])}, "", |
1169
|
|
|
|
|
|
|
q{KVPAIRS}, |
1170
|
|
|
|
|
|
|
$tracelevel); |
1171
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
1172
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
1173
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1174
|
|
|
|
|
|
|
, q{KVPAIRS}, |
1175
|
|
|
|
|
|
|
$tracelevel) |
1176
|
|
|
|
|
|
|
} |
1177
|
123
|
|
|
|
|
318
|
$_[1] = $text; |
1178
|
123
|
|
|
|
|
909
|
return $return; |
1179
|
|
|
|
|
|
|
} |
1180
|
|
|
|
|
|
|
|
1181
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
1182
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::MESSAGE |
1183
|
|
|
|
|
|
|
{ |
1184
|
53
|
|
|
53
|
|
90
|
my $thisparser = $_[0]; |
1185
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
898
|
|
1186
|
53
|
|
50
|
|
|
142
|
local $tracelevel = ($tracelevel||0)+1; |
1187
|
53
|
|
|
|
|
98
|
$ERRORS = 0; |
1188
|
53
|
|
|
|
|
142
|
my $thisrule = $thisparser->{"rules"}{"MESSAGE"}; |
1189
|
|
|
|
|
|
|
|
1190
|
53
|
50
|
|
|
|
110
|
Parse::RecDescent::_trace(q{Trying rule: [MESSAGE]}, |
1191
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
1192
|
|
|
|
|
|
|
q{MESSAGE}, |
1193
|
|
|
|
|
|
|
$tracelevel) |
1194
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1195
|
|
|
|
|
|
|
|
1196
|
53
|
|
|
|
|
72
|
my $def_at = @{$thisparser->{deferred}}; |
|
53
|
|
|
|
|
112
|
|
1197
|
53
|
|
|
|
|
81
|
my $err_at = @{$thisparser->{errors}}; |
|
53
|
|
|
|
|
104
|
|
1198
|
|
|
|
|
|
|
|
1199
|
53
|
|
|
|
|
141
|
my $score; |
1200
|
|
|
|
|
|
|
my $score_return; |
1201
|
53
|
|
|
|
|
0
|
my $_tok; |
1202
|
53
|
|
|
|
|
102
|
my $return = undef; |
1203
|
53
|
|
|
|
|
89
|
my $_matched=0; |
1204
|
53
|
|
|
|
|
82
|
my $commit=0; |
1205
|
53
|
|
|
|
|
84
|
my @item = (); |
1206
|
53
|
|
|
|
|
80
|
my %item = (); |
1207
|
53
|
|
|
|
|
98
|
my $repeating = $_[2]; |
1208
|
53
|
|
|
|
|
90
|
my $_noactions = $_[3]; |
1209
|
53
|
50
|
|
|
|
115
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
53
|
|
|
|
|
75
|
|
|
53
|
|
|
|
|
96
|
|
1210
|
53
|
|
|
|
|
93
|
my $_itempos = $_[5]; |
1211
|
53
|
50
|
|
|
|
127
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
1212
|
53
|
|
|
|
|
127
|
my $text; |
1213
|
|
|
|
|
|
|
my $lastsep; |
1214
|
53
|
|
|
|
|
0
|
my $current_match; |
1215
|
53
|
|
|
|
|
137
|
my $expectation = new Parse::RecDescent::Expectation(q{/^"MESSAGE"|^MESSAGE/i}); |
1216
|
53
|
|
|
|
|
329
|
$expectation->at($_[1]); |
1217
|
|
|
|
|
|
|
|
1218
|
53
|
|
|
|
|
242
|
my $thisline; |
1219
|
53
|
|
|
|
|
159
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
1220
|
|
|
|
|
|
|
|
1221
|
|
|
|
|
|
|
|
1222
|
|
|
|
|
|
|
|
1223
|
53
|
|
33
|
|
|
371
|
while (!$_matched && !$commit) |
1224
|
|
|
|
|
|
|
{ |
1225
|
|
|
|
|
|
|
|
1226
|
53
|
50
|
|
|
|
120
|
Parse::RecDescent::_trace(q{Trying production: [/^"MESSAGE"|^MESSAGE/i]}, |
1227
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
1228
|
|
|
|
|
|
|
q{MESSAGE}, |
1229
|
|
|
|
|
|
|
$tracelevel) |
1230
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1231
|
53
|
|
|
|
|
134
|
my $thisprod = $thisrule->{"prods"}[0]; |
1232
|
53
|
|
|
|
|
112
|
$text = $_[1]; |
1233
|
53
|
|
|
|
|
88
|
my $_savetext; |
1234
|
53
|
|
|
|
|
111
|
@item = (q{MESSAGE}); |
1235
|
53
|
|
|
|
|
123
|
%item = (__RULE__ => q{MESSAGE}); |
1236
|
53
|
|
|
|
|
81
|
my $repcount = 0; |
1237
|
|
|
|
|
|
|
|
1238
|
|
|
|
|
|
|
|
1239
|
53
|
50
|
|
|
|
108
|
Parse::RecDescent::_trace(q{Trying terminal: [/^"MESSAGE"|^MESSAGE/i]}, Parse::RecDescent::_tracefirst($text), |
1240
|
|
|
|
|
|
|
q{MESSAGE}, |
1241
|
|
|
|
|
|
|
$tracelevel) |
1242
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1243
|
53
|
|
|
|
|
87
|
undef $lastsep; |
1244
|
53
|
|
|
|
|
116
|
$expectation->is(q{})->at($text); |
1245
|
|
|
|
|
|
|
|
1246
|
|
|
|
|
|
|
|
1247
|
53
|
50
|
66
|
|
|
645
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:^"MESSAGE"|^MESSAGE)/i) |
|
53
|
100
|
|
|
|
534
|
|
1248
|
|
|
|
|
|
|
{ |
1249
|
31
|
50
|
|
|
|
134
|
$text = $lastsep . $text if defined $lastsep; |
1250
|
31
|
|
|
|
|
124
|
$expectation->failed(); |
1251
|
31
|
50
|
|
|
|
141
|
Parse::RecDescent::_trace(q{<>}, |
1252
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1253
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1254
|
|
|
|
|
|
|
|
1255
|
31
|
|
|
|
|
77
|
last; |
1256
|
|
|
|
|
|
|
} |
1257
|
22
|
|
|
|
|
144
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
1258
|
22
|
|
|
|
|
106
|
substr($text,0,length($current_match),q{}); |
1259
|
22
|
50
|
|
|
|
68
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
1260
|
|
|
|
|
|
|
. $current_match . q{])}, |
1261
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1262
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1263
|
22
|
|
|
|
|
63
|
push @item, $item{__PATTERN1__}=$current_match; |
1264
|
|
|
|
|
|
|
|
1265
|
|
|
|
|
|
|
|
1266
|
22
|
50
|
|
|
|
49
|
Parse::RecDescent::_trace(q{Trying action}, |
1267
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1268
|
|
|
|
|
|
|
q{MESSAGE}, |
1269
|
|
|
|
|
|
|
$tracelevel) |
1270
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1271
|
|
|
|
|
|
|
|
1272
|
|
|
|
|
|
|
|
1273
|
22
|
50
|
|
|
|
63
|
$_tok = ($_noactions) ? 0 : do { $return = "MESSAGE"}; |
|
22
|
|
|
|
|
47
|
|
1274
|
22
|
50
|
|
|
|
62
|
unless (defined $_tok) |
1275
|
|
|
|
|
|
|
{ |
1276
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
1277
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1278
|
0
|
|
|
|
|
0
|
last; |
1279
|
|
|
|
|
|
|
} |
1280
|
22
|
50
|
|
|
|
54
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
1281
|
|
|
|
|
|
|
. $_tok . q{])}, |
1282
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1283
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1284
|
22
|
|
|
|
|
40
|
push @item, $_tok; |
1285
|
22
|
|
|
|
|
44
|
$item{__ACTION1__}=$_tok; |
1286
|
|
|
|
|
|
|
|
1287
|
|
|
|
|
|
|
|
1288
|
22
|
50
|
|
|
|
60
|
Parse::RecDescent::_trace(q{>>Matched production: [/^"MESSAGE"|^MESSAGE/i]<<}, |
1289
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1290
|
|
|
|
|
|
|
q{MESSAGE}, |
1291
|
|
|
|
|
|
|
$tracelevel) |
1292
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1293
|
|
|
|
|
|
|
|
1294
|
|
|
|
|
|
|
|
1295
|
|
|
|
|
|
|
|
1296
|
22
|
|
|
|
|
40
|
$_matched = 1; |
1297
|
22
|
|
|
|
|
45
|
last; |
1298
|
|
|
|
|
|
|
} |
1299
|
|
|
|
|
|
|
|
1300
|
|
|
|
|
|
|
splice |
1301
|
53
|
100
|
|
|
|
126
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
31
|
|
|
|
|
91
|
|
1302
|
|
|
|
|
|
|
|
1303
|
53
|
100
|
66
|
|
|
241
|
unless ( $_matched || defined($score) ) |
1304
|
|
|
|
|
|
|
{ |
1305
|
31
|
|
|
|
|
50
|
splice @{$thisparser->{deferred}}, $def_at; |
|
31
|
|
|
|
|
67
|
|
1306
|
|
|
|
|
|
|
|
1307
|
|
|
|
|
|
|
|
1308
|
31
|
|
|
|
|
72
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
1309
|
31
|
50
|
|
|
|
82
|
Parse::RecDescent::_trace(q{<>}, |
1310
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
1311
|
|
|
|
|
|
|
q{MESSAGE}, |
1312
|
|
|
|
|
|
|
$tracelevel) |
1313
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1314
|
31
|
|
|
|
|
184
|
return undef; |
1315
|
|
|
|
|
|
|
} |
1316
|
22
|
50
|
33
|
|
|
78
|
if (!defined($return) && defined($score)) |
1317
|
|
|
|
|
|
|
{ |
1318
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
1319
|
|
|
|
|
|
|
q{MESSAGE}, |
1320
|
|
|
|
|
|
|
$tracelevel) |
1321
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1322
|
0
|
|
|
|
|
0
|
$return = $score_return; |
1323
|
|
|
|
|
|
|
} |
1324
|
22
|
|
|
|
|
42
|
splice @{$thisparser->{errors}}, $err_at; |
|
22
|
|
|
|
|
75
|
|
1325
|
22
|
50
|
|
|
|
50
|
$return = $item[$#item] unless defined $return; |
1326
|
22
|
50
|
|
|
|
59
|
if (defined $::RD_TRACE) |
1327
|
|
|
|
|
|
|
{ |
1328
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
1329
|
|
|
|
|
|
|
$return . q{])}, "", |
1330
|
|
|
|
|
|
|
q{MESSAGE}, |
1331
|
|
|
|
|
|
|
$tracelevel); |
1332
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
1333
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
1334
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1335
|
|
|
|
|
|
|
, q{MESSAGE}, |
1336
|
|
|
|
|
|
|
$tracelevel) |
1337
|
|
|
|
|
|
|
} |
1338
|
22
|
|
|
|
|
108
|
$_[1] = $text; |
1339
|
22
|
|
|
|
|
165
|
return $return; |
1340
|
|
|
|
|
|
|
} |
1341
|
|
|
|
|
|
|
|
1342
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
1343
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL |
1344
|
|
|
|
|
|
|
{ |
1345
|
1752
|
|
|
1752
|
|
3134
|
my $thisparser = $_[0]; |
1346
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
899
|
|
1347
|
1752
|
|
50
|
|
|
4068
|
local $tracelevel = ($tracelevel||0)+1; |
1348
|
1752
|
|
|
|
|
2810
|
$ERRORS = 0; |
1349
|
1752
|
|
|
|
|
3472
|
my $thisrule = $thisparser->{"rules"}{"NIL"}; |
1350
|
|
|
|
|
|
|
|
1351
|
1752
|
50
|
|
|
|
3478
|
Parse::RecDescent::_trace(q{Trying rule: [NIL]}, |
1352
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
1353
|
|
|
|
|
|
|
q{NIL}, |
1354
|
|
|
|
|
|
|
$tracelevel) |
1355
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1356
|
|
|
|
|
|
|
|
1357
|
1752
|
|
|
|
|
2392
|
my $def_at = @{$thisparser->{deferred}}; |
|
1752
|
|
|
|
|
3100
|
|
1358
|
1752
|
|
|
|
|
2618
|
my $err_at = @{$thisparser->{errors}}; |
|
1752
|
|
|
|
|
3045
|
|
1359
|
|
|
|
|
|
|
|
1360
|
1752
|
|
|
|
|
3877
|
my $score; |
1361
|
|
|
|
|
|
|
my $score_return; |
1362
|
1752
|
|
|
|
|
0
|
my $_tok; |
1363
|
1752
|
|
|
|
|
2419
|
my $return = undef; |
1364
|
1752
|
|
|
|
|
2671
|
my $_matched=0; |
1365
|
1752
|
|
|
|
|
2426
|
my $commit=0; |
1366
|
1752
|
|
|
|
|
2748
|
my @item = (); |
1367
|
1752
|
|
|
|
|
2582
|
my %item = (); |
1368
|
1752
|
|
|
|
|
2510
|
my $repeating = $_[2]; |
1369
|
1752
|
|
|
|
|
2422
|
my $_noactions = $_[3]; |
1370
|
1752
|
50
|
|
|
|
3260
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
1752
|
|
|
|
|
2667
|
|
|
1752
|
|
|
|
|
3592
|
|
1371
|
1752
|
|
|
|
|
2731
|
my $_itempos = $_[5]; |
1372
|
1752
|
50
|
|
|
|
3644
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
1373
|
1752
|
|
|
|
|
4161
|
my $text; |
1374
|
|
|
|
|
|
|
my $lastsep; |
1375
|
1752
|
|
|
|
|
0
|
my $current_match; |
1376
|
1752
|
|
|
|
|
4050
|
my $expectation = new Parse::RecDescent::Expectation(q{/^NIL/i}); |
1377
|
1752
|
|
|
|
|
10714
|
$expectation->at($_[1]); |
1378
|
|
|
|
|
|
|
|
1379
|
1752
|
|
|
|
|
7243
|
my $thisline; |
1380
|
1752
|
|
|
|
|
4843
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
1381
|
|
|
|
|
|
|
|
1382
|
|
|
|
|
|
|
|
1383
|
|
|
|
|
|
|
|
1384
|
1752
|
|
33
|
|
|
12379
|
while (!$_matched && !$commit) |
1385
|
|
|
|
|
|
|
{ |
1386
|
|
|
|
|
|
|
|
1387
|
1752
|
50
|
|
|
|
3669
|
Parse::RecDescent::_trace(q{Trying production: [/^NIL/i]}, |
1388
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
1389
|
|
|
|
|
|
|
q{NIL}, |
1390
|
|
|
|
|
|
|
$tracelevel) |
1391
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1392
|
1752
|
|
|
|
|
3425
|
my $thisprod = $thisrule->{"prods"}[0]; |
1393
|
1752
|
|
|
|
|
3039
|
$text = $_[1]; |
1394
|
1752
|
|
|
|
|
2576
|
my $_savetext; |
1395
|
1752
|
|
|
|
|
3296
|
@item = (q{NIL}); |
1396
|
1752
|
|
|
|
|
3396
|
%item = (__RULE__ => q{NIL}); |
1397
|
1752
|
|
|
|
|
2693
|
my $repcount = 0; |
1398
|
|
|
|
|
|
|
|
1399
|
|
|
|
|
|
|
|
1400
|
1752
|
50
|
|
|
|
3529
|
Parse::RecDescent::_trace(q{Trying terminal: [/^NIL/i]}, Parse::RecDescent::_tracefirst($text), |
1401
|
|
|
|
|
|
|
q{NIL}, |
1402
|
|
|
|
|
|
|
$tracelevel) |
1403
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1404
|
1752
|
|
|
|
|
3075
|
undef $lastsep; |
1405
|
1752
|
|
|
|
|
3900
|
$expectation->is(q{})->at($text); |
1406
|
|
|
|
|
|
|
|
1407
|
|
|
|
|
|
|
|
1408
|
1752
|
100
|
66
|
|
|
19951
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:^NIL)/i) |
|
1752
|
100
|
|
|
|
16781
|
|
1409
|
|
|
|
|
|
|
{ |
1410
|
1093
|
50
|
|
|
|
4959
|
$text = $lastsep . $text if defined $lastsep; |
1411
|
1093
|
|
|
|
|
3973
|
$expectation->failed(); |
1412
|
1093
|
50
|
|
|
|
4667
|
Parse::RecDescent::_trace(q{<>}, |
1413
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1414
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1415
|
|
|
|
|
|
|
|
1416
|
1093
|
|
|
|
|
2437
|
last; |
1417
|
|
|
|
|
|
|
} |
1418
|
659
|
|
|
|
|
3146
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
1419
|
659
|
|
|
|
|
3259
|
substr($text,0,length($current_match),q{}); |
1420
|
659
|
50
|
|
|
|
1365
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
1421
|
|
|
|
|
|
|
. $current_match . q{])}, |
1422
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1423
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1424
|
659
|
|
|
|
|
1852
|
push @item, $item{__PATTERN1__}=$current_match; |
1425
|
|
|
|
|
|
|
|
1426
|
|
|
|
|
|
|
|
1427
|
659
|
50
|
|
|
|
1432
|
Parse::RecDescent::_trace(q{Trying action}, |
1428
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1429
|
|
|
|
|
|
|
q{NIL}, |
1430
|
|
|
|
|
|
|
$tracelevel) |
1431
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1432
|
|
|
|
|
|
|
|
1433
|
|
|
|
|
|
|
|
1434
|
659
|
50
|
|
|
|
1205
|
$_tok = ($_noactions) ? 0 : do { $return = "NIL" }; |
|
659
|
|
|
|
|
1134
|
|
1435
|
659
|
50
|
|
|
|
1305
|
unless (defined $_tok) |
1436
|
|
|
|
|
|
|
{ |
1437
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
1438
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1439
|
0
|
|
|
|
|
0
|
last; |
1440
|
|
|
|
|
|
|
} |
1441
|
659
|
50
|
|
|
|
1194
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
1442
|
|
|
|
|
|
|
. $_tok . q{])}, |
1443
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1444
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1445
|
659
|
|
|
|
|
1042
|
push @item, $_tok; |
1446
|
659
|
|
|
|
|
1087
|
$item{__ACTION1__}=$_tok; |
1447
|
|
|
|
|
|
|
|
1448
|
|
|
|
|
|
|
|
1449
|
659
|
50
|
|
|
|
1331
|
Parse::RecDescent::_trace(q{>>Matched production: [/^NIL/i]<<}, |
1450
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1451
|
|
|
|
|
|
|
q{NIL}, |
1452
|
|
|
|
|
|
|
$tracelevel) |
1453
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1454
|
|
|
|
|
|
|
|
1455
|
|
|
|
|
|
|
|
1456
|
|
|
|
|
|
|
|
1457
|
659
|
|
|
|
|
902
|
$_matched = 1; |
1458
|
659
|
|
|
|
|
1392
|
last; |
1459
|
|
|
|
|
|
|
} |
1460
|
|
|
|
|
|
|
|
1461
|
|
|
|
|
|
|
splice |
1462
|
1752
|
100
|
|
|
|
3720
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
1093
|
|
|
|
|
2545
|
|
1463
|
|
|
|
|
|
|
|
1464
|
1752
|
100
|
66
|
|
|
4992
|
unless ( $_matched || defined($score) ) |
1465
|
|
|
|
|
|
|
{ |
1466
|
1093
|
|
|
|
|
1880
|
splice @{$thisparser->{deferred}}, $def_at; |
|
1093
|
|
|
|
|
1841
|
|
1467
|
|
|
|
|
|
|
|
1468
|
|
|
|
|
|
|
|
1469
|
1093
|
|
|
|
|
1963
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
1470
|
1093
|
50
|
|
|
|
2440
|
Parse::RecDescent::_trace(q{<>}, |
1471
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
1472
|
|
|
|
|
|
|
q{NIL}, |
1473
|
|
|
|
|
|
|
$tracelevel) |
1474
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1475
|
1093
|
|
|
|
|
6204
|
return undef; |
1476
|
|
|
|
|
|
|
} |
1477
|
659
|
50
|
33
|
|
|
1415
|
if (!defined($return) && defined($score)) |
1478
|
|
|
|
|
|
|
{ |
1479
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
1480
|
|
|
|
|
|
|
q{NIL}, |
1481
|
|
|
|
|
|
|
$tracelevel) |
1482
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1483
|
0
|
|
|
|
|
0
|
$return = $score_return; |
1484
|
|
|
|
|
|
|
} |
1485
|
659
|
|
|
|
|
974
|
splice @{$thisparser->{errors}}, $err_at; |
|
659
|
|
|
|
|
1401
|
|
1486
|
659
|
50
|
|
|
|
1266
|
$return = $item[$#item] unless defined $return; |
1487
|
659
|
50
|
|
|
|
1332
|
if (defined $::RD_TRACE) |
1488
|
|
|
|
|
|
|
{ |
1489
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
1490
|
|
|
|
|
|
|
$return . q{])}, "", |
1491
|
|
|
|
|
|
|
q{NIL}, |
1492
|
|
|
|
|
|
|
$tracelevel); |
1493
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
1494
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
1495
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1496
|
|
|
|
|
|
|
, q{NIL}, |
1497
|
|
|
|
|
|
|
$tracelevel) |
1498
|
|
|
|
|
|
|
} |
1499
|
659
|
|
|
|
|
1836
|
$_[1] = $text; |
1500
|
659
|
|
|
|
|
4379
|
return $return; |
1501
|
|
|
|
|
|
|
} |
1502
|
|
|
|
|
|
|
|
1503
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
1504
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NUMBER |
1505
|
|
|
|
|
|
|
{ |
1506
|
256
|
|
|
256
|
|
490
|
my $thisparser = $_[0]; |
1507
|
1
|
|
|
1
|
|
10
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
892
|
|
1508
|
256
|
|
50
|
|
|
614
|
local $tracelevel = ($tracelevel||0)+1; |
1509
|
256
|
|
|
|
|
410
|
$ERRORS = 0; |
1510
|
256
|
|
|
|
|
548
|
my $thisrule = $thisparser->{"rules"}{"NUMBER"}; |
1511
|
|
|
|
|
|
|
|
1512
|
256
|
50
|
|
|
|
518
|
Parse::RecDescent::_trace(q{Trying rule: [NUMBER]}, |
1513
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
1514
|
|
|
|
|
|
|
q{NUMBER}, |
1515
|
|
|
|
|
|
|
$tracelevel) |
1516
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1517
|
|
|
|
|
|
|
|
1518
|
256
|
|
|
|
|
398
|
my $def_at = @{$thisparser->{deferred}}; |
|
256
|
|
|
|
|
449
|
|
1519
|
256
|
|
|
|
|
379
|
my $err_at = @{$thisparser->{errors}}; |
|
256
|
|
|
|
|
418
|
|
1520
|
|
|
|
|
|
|
|
1521
|
256
|
|
|
|
|
617
|
my $score; |
1522
|
|
|
|
|
|
|
my $score_return; |
1523
|
256
|
|
|
|
|
0
|
my $_tok; |
1524
|
256
|
|
|
|
|
374
|
my $return = undef; |
1525
|
256
|
|
|
|
|
345
|
my $_matched=0; |
1526
|
256
|
|
|
|
|
363
|
my $commit=0; |
1527
|
256
|
|
|
|
|
429
|
my @item = (); |
1528
|
256
|
|
|
|
|
485
|
my %item = (); |
1529
|
256
|
|
|
|
|
364
|
my $repeating = $_[2]; |
1530
|
256
|
|
|
|
|
394
|
my $_noactions = $_[3]; |
1531
|
256
|
50
|
|
|
|
542
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
256
|
|
|
|
|
354
|
|
|
256
|
|
|
|
|
463
|
|
1532
|
256
|
|
|
|
|
458
|
my $_itempos = $_[5]; |
1533
|
256
|
50
|
|
|
|
679
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
1534
|
256
|
|
|
|
|
602
|
my $text; |
1535
|
|
|
|
|
|
|
my $lastsep; |
1536
|
256
|
|
|
|
|
0
|
my $current_match; |
1537
|
256
|
|
|
|
|
668
|
my $expectation = new Parse::RecDescent::Expectation(q{/^(\\d+)/}); |
1538
|
256
|
|
|
|
|
1697
|
$expectation->at($_[1]); |
1539
|
|
|
|
|
|
|
|
1540
|
256
|
|
|
|
|
1039
|
my $thisline; |
1541
|
256
|
|
|
|
|
881
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
1542
|
|
|
|
|
|
|
|
1543
|
|
|
|
|
|
|
|
1544
|
|
|
|
|
|
|
|
1545
|
256
|
|
33
|
|
|
1952
|
while (!$_matched && !$commit) |
1546
|
|
|
|
|
|
|
{ |
1547
|
|
|
|
|
|
|
|
1548
|
256
|
50
|
|
|
|
519
|
Parse::RecDescent::_trace(q{Trying production: [/^(\\d+)/]}, |
1549
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
1550
|
|
|
|
|
|
|
q{NUMBER}, |
1551
|
|
|
|
|
|
|
$tracelevel) |
1552
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1553
|
256
|
|
|
|
|
552
|
my $thisprod = $thisrule->{"prods"}[0]; |
1554
|
256
|
|
|
|
|
470
|
$text = $_[1]; |
1555
|
256
|
|
|
|
|
346
|
my $_savetext; |
1556
|
256
|
|
|
|
|
492
|
@item = (q{NUMBER}); |
1557
|
256
|
|
|
|
|
475
|
%item = (__RULE__ => q{NUMBER}); |
1558
|
256
|
|
|
|
|
368
|
my $repcount = 0; |
1559
|
|
|
|
|
|
|
|
1560
|
|
|
|
|
|
|
|
1561
|
256
|
50
|
|
|
|
472
|
Parse::RecDescent::_trace(q{Trying terminal: [/^(\\d+)/]}, Parse::RecDescent::_tracefirst($text), |
1562
|
|
|
|
|
|
|
q{NUMBER}, |
1563
|
|
|
|
|
|
|
$tracelevel) |
1564
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1565
|
256
|
|
|
|
|
494
|
undef $lastsep; |
1566
|
256
|
|
|
|
|
614
|
$expectation->is(q{})->at($text); |
1567
|
|
|
|
|
|
|
|
1568
|
|
|
|
|
|
|
|
1569
|
256
|
100
|
66
|
|
|
2833
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:^(\d+))/) |
|
256
|
100
|
|
|
|
2406
|
|
1570
|
|
|
|
|
|
|
{ |
1571
|
122
|
50
|
|
|
|
547
|
$text = $lastsep . $text if defined $lastsep; |
1572
|
122
|
|
|
|
|
545
|
$expectation->failed(); |
1573
|
122
|
50
|
|
|
|
538
|
Parse::RecDescent::_trace(q{<>}, |
1574
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1575
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1576
|
|
|
|
|
|
|
|
1577
|
122
|
|
|
|
|
273
|
last; |
1578
|
|
|
|
|
|
|
} |
1579
|
134
|
|
|
|
|
704
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
1580
|
134
|
|
|
|
|
477
|
substr($text,0,length($current_match),q{}); |
1581
|
134
|
50
|
|
|
|
313
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
1582
|
|
|
|
|
|
|
. $current_match . q{])}, |
1583
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1584
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1585
|
134
|
|
|
|
|
349
|
push @item, $item{__PATTERN1__}=$current_match; |
1586
|
|
|
|
|
|
|
|
1587
|
|
|
|
|
|
|
|
1588
|
134
|
50
|
|
|
|
262
|
Parse::RecDescent::_trace(q{Trying action}, |
1589
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1590
|
|
|
|
|
|
|
q{NUMBER}, |
1591
|
|
|
|
|
|
|
$tracelevel) |
1592
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1593
|
|
|
|
|
|
|
|
1594
|
|
|
|
|
|
|
|
1595
|
134
|
50
|
|
|
|
258
|
$_tok = ($_noactions) ? 0 : do { $return = $item[1] }; |
|
134
|
|
|
|
|
324
|
|
1596
|
134
|
50
|
|
|
|
337
|
unless (defined $_tok) |
1597
|
|
|
|
|
|
|
{ |
1598
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
1599
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1600
|
0
|
|
|
|
|
0
|
last; |
1601
|
|
|
|
|
|
|
} |
1602
|
134
|
50
|
|
|
|
262
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
1603
|
|
|
|
|
|
|
. $_tok . q{])}, |
1604
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1605
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1606
|
134
|
|
|
|
|
218
|
push @item, $_tok; |
1607
|
134
|
|
|
|
|
246
|
$item{__ACTION1__}=$_tok; |
1608
|
|
|
|
|
|
|
|
1609
|
|
|
|
|
|
|
|
1610
|
134
|
50
|
|
|
|
262
|
Parse::RecDescent::_trace(q{>>Matched production: [/^(\\d+)/]<<}, |
1611
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1612
|
|
|
|
|
|
|
q{NUMBER}, |
1613
|
|
|
|
|
|
|
$tracelevel) |
1614
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1615
|
|
|
|
|
|
|
|
1616
|
|
|
|
|
|
|
|
1617
|
|
|
|
|
|
|
|
1618
|
134
|
|
|
|
|
246
|
$_matched = 1; |
1619
|
134
|
|
|
|
|
253
|
last; |
1620
|
|
|
|
|
|
|
} |
1621
|
|
|
|
|
|
|
|
1622
|
|
|
|
|
|
|
splice |
1623
|
256
|
100
|
|
|
|
613
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
122
|
|
|
|
|
270
|
|
1624
|
|
|
|
|
|
|
|
1625
|
256
|
100
|
66
|
|
|
762
|
unless ( $_matched || defined($score) ) |
1626
|
|
|
|
|
|
|
{ |
1627
|
122
|
|
|
|
|
185
|
splice @{$thisparser->{deferred}}, $def_at; |
|
122
|
|
|
|
|
234
|
|
1628
|
|
|
|
|
|
|
|
1629
|
|
|
|
|
|
|
|
1630
|
122
|
|
|
|
|
234
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
1631
|
122
|
50
|
|
|
|
248
|
Parse::RecDescent::_trace(q{<>}, |
1632
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
1633
|
|
|
|
|
|
|
q{NUMBER}, |
1634
|
|
|
|
|
|
|
$tracelevel) |
1635
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1636
|
122
|
|
|
|
|
617
|
return undef; |
1637
|
|
|
|
|
|
|
} |
1638
|
134
|
50
|
33
|
|
|
312
|
if (!defined($return) && defined($score)) |
1639
|
|
|
|
|
|
|
{ |
1640
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
1641
|
|
|
|
|
|
|
q{NUMBER}, |
1642
|
|
|
|
|
|
|
$tracelevel) |
1643
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1644
|
0
|
|
|
|
|
0
|
$return = $score_return; |
1645
|
|
|
|
|
|
|
} |
1646
|
134
|
|
|
|
|
228
|
splice @{$thisparser->{errors}}, $err_at; |
|
134
|
|
|
|
|
314
|
|
1647
|
134
|
50
|
|
|
|
282
|
$return = $item[$#item] unless defined $return; |
1648
|
134
|
50
|
|
|
|
269
|
if (defined $::RD_TRACE) |
1649
|
|
|
|
|
|
|
{ |
1650
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
1651
|
|
|
|
|
|
|
$return . q{])}, "", |
1652
|
|
|
|
|
|
|
q{NUMBER}, |
1653
|
|
|
|
|
|
|
$tracelevel); |
1654
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
1655
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
1656
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1657
|
|
|
|
|
|
|
, q{NUMBER}, |
1658
|
|
|
|
|
|
|
$tracelevel) |
1659
|
|
|
|
|
|
|
} |
1660
|
134
|
|
|
|
|
386
|
$_[1] = $text; |
1661
|
134
|
|
|
|
|
845
|
return $return; |
1662
|
|
|
|
|
|
|
} |
1663
|
|
|
|
|
|
|
|
1664
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
1665
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::PLAIN |
1666
|
|
|
|
|
|
|
{ |
1667
|
84
|
|
|
84
|
|
153
|
my $thisparser = $_[0]; |
1668
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
881
|
|
1669
|
84
|
|
50
|
|
|
196
|
local $tracelevel = ($tracelevel||0)+1; |
1670
|
84
|
|
|
|
|
138
|
$ERRORS = 0; |
1671
|
84
|
|
|
|
|
183
|
my $thisrule = $thisparser->{"rules"}{"PLAIN"}; |
1672
|
|
|
|
|
|
|
|
1673
|
84
|
50
|
|
|
|
212
|
Parse::RecDescent::_trace(q{Trying rule: [PLAIN]}, |
1674
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
1675
|
|
|
|
|
|
|
q{PLAIN}, |
1676
|
|
|
|
|
|
|
$tracelevel) |
1677
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1678
|
|
|
|
|
|
|
|
1679
|
84
|
|
|
|
|
134
|
my $def_at = @{$thisparser->{deferred}}; |
|
84
|
|
|
|
|
181
|
|
1680
|
84
|
|
|
|
|
135
|
my $err_at = @{$thisparser->{errors}}; |
|
84
|
|
|
|
|
154
|
|
1681
|
|
|
|
|
|
|
|
1682
|
84
|
|
|
|
|
209
|
my $score; |
1683
|
|
|
|
|
|
|
my $score_return; |
1684
|
84
|
|
|
|
|
0
|
my $_tok; |
1685
|
84
|
|
|
|
|
124
|
my $return = undef; |
1686
|
84
|
|
|
|
|
128
|
my $_matched=0; |
1687
|
84
|
|
|
|
|
127
|
my $commit=0; |
1688
|
84
|
|
|
|
|
154
|
my @item = (); |
1689
|
84
|
|
|
|
|
155
|
my %item = (); |
1690
|
84
|
|
|
|
|
132
|
my $repeating = $_[2]; |
1691
|
84
|
|
|
|
|
128
|
my $_noactions = $_[3]; |
1692
|
84
|
50
|
|
|
|
210
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
84
|
|
|
|
|
126
|
|
|
84
|
|
|
|
|
175
|
|
1693
|
84
|
|
|
|
|
133
|
my $_itempos = $_[5]; |
1694
|
84
|
50
|
|
|
|
230
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
1695
|
84
|
|
|
|
|
198
|
my $text; |
1696
|
|
|
|
|
|
|
my $lastsep; |
1697
|
84
|
|
|
|
|
0
|
my $current_match; |
1698
|
84
|
|
|
|
|
194
|
my $expectation = new Parse::RecDescent::Expectation(q{/^"PLAIN"|^PLAIN/i}); |
1699
|
84
|
|
|
|
|
550
|
$expectation->at($_[1]); |
1700
|
|
|
|
|
|
|
|
1701
|
84
|
|
|
|
|
347
|
my $thisline; |
1702
|
84
|
|
|
|
|
244
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
1703
|
|
|
|
|
|
|
|
1704
|
|
|
|
|
|
|
|
1705
|
|
|
|
|
|
|
|
1706
|
84
|
|
33
|
|
|
678
|
while (!$_matched && !$commit) |
1707
|
|
|
|
|
|
|
{ |
1708
|
|
|
|
|
|
|
|
1709
|
84
|
50
|
|
|
|
193
|
Parse::RecDescent::_trace(q{Trying production: [/^"PLAIN"|^PLAIN/i]}, |
1710
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
1711
|
|
|
|
|
|
|
q{PLAIN}, |
1712
|
|
|
|
|
|
|
$tracelevel) |
1713
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1714
|
84
|
|
|
|
|
178
|
my $thisprod = $thisrule->{"prods"}[0]; |
1715
|
84
|
|
|
|
|
145
|
$text = $_[1]; |
1716
|
84
|
|
|
|
|
125
|
my $_savetext; |
1717
|
84
|
|
|
|
|
152
|
@item = (q{PLAIN}); |
1718
|
84
|
|
|
|
|
195
|
%item = (__RULE__ => q{PLAIN}); |
1719
|
84
|
|
|
|
|
128
|
my $repcount = 0; |
1720
|
|
|
|
|
|
|
|
1721
|
|
|
|
|
|
|
|
1722
|
84
|
50
|
|
|
|
181
|
Parse::RecDescent::_trace(q{Trying terminal: [/^"PLAIN"|^PLAIN/i]}, Parse::RecDescent::_tracefirst($text), |
1723
|
|
|
|
|
|
|
q{PLAIN}, |
1724
|
|
|
|
|
|
|
$tracelevel) |
1725
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1726
|
84
|
|
|
|
|
165
|
undef $lastsep; |
1727
|
84
|
|
|
|
|
231
|
$expectation->is(q{})->at($text); |
1728
|
|
|
|
|
|
|
|
1729
|
|
|
|
|
|
|
|
1730
|
84
|
50
|
66
|
|
|
1076
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:^"PLAIN"|^PLAIN)/i) |
|
84
|
100
|
|
|
|
900
|
|
1731
|
|
|
|
|
|
|
{ |
1732
|
53
|
50
|
|
|
|
227
|
$text = $lastsep . $text if defined $lastsep; |
1733
|
53
|
|
|
|
|
216
|
$expectation->failed(); |
1734
|
53
|
50
|
|
|
|
228
|
Parse::RecDescent::_trace(q{<>}, |
1735
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1736
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1737
|
|
|
|
|
|
|
|
1738
|
53
|
|
|
|
|
127
|
last; |
1739
|
|
|
|
|
|
|
} |
1740
|
31
|
|
|
|
|
178
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
1741
|
31
|
|
|
|
|
154
|
substr($text,0,length($current_match),q{}); |
1742
|
31
|
50
|
|
|
|
80
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
1743
|
|
|
|
|
|
|
. $current_match . q{])}, |
1744
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1745
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1746
|
31
|
|
|
|
|
92
|
push @item, $item{__PATTERN1__}=$current_match; |
1747
|
|
|
|
|
|
|
|
1748
|
|
|
|
|
|
|
|
1749
|
31
|
50
|
|
|
|
77
|
Parse::RecDescent::_trace(q{Trying action}, |
1750
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1751
|
|
|
|
|
|
|
q{PLAIN}, |
1752
|
|
|
|
|
|
|
$tracelevel) |
1753
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1754
|
|
|
|
|
|
|
|
1755
|
|
|
|
|
|
|
|
1756
|
31
|
50
|
|
|
|
62
|
$_tok = ($_noactions) ? 0 : do { $return = "PLAIN" }; |
|
31
|
|
|
|
|
67
|
|
1757
|
31
|
50
|
|
|
|
86
|
unless (defined $_tok) |
1758
|
|
|
|
|
|
|
{ |
1759
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
1760
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1761
|
0
|
|
|
|
|
0
|
last; |
1762
|
|
|
|
|
|
|
} |
1763
|
31
|
50
|
|
|
|
76
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
1764
|
|
|
|
|
|
|
. $_tok . q{])}, |
1765
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1766
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1767
|
31
|
|
|
|
|
56
|
push @item, $_tok; |
1768
|
31
|
|
|
|
|
69
|
$item{__ACTION1__}=$_tok; |
1769
|
|
|
|
|
|
|
|
1770
|
|
|
|
|
|
|
|
1771
|
31
|
50
|
|
|
|
67
|
Parse::RecDescent::_trace(q{>>Matched production: [/^"PLAIN"|^PLAIN/i]<<}, |
1772
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1773
|
|
|
|
|
|
|
q{PLAIN}, |
1774
|
|
|
|
|
|
|
$tracelevel) |
1775
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1776
|
|
|
|
|
|
|
|
1777
|
|
|
|
|
|
|
|
1778
|
|
|
|
|
|
|
|
1779
|
31
|
|
|
|
|
48
|
$_matched = 1; |
1780
|
31
|
|
|
|
|
71
|
last; |
1781
|
|
|
|
|
|
|
} |
1782
|
|
|
|
|
|
|
|
1783
|
|
|
|
|
|
|
splice |
1784
|
84
|
100
|
|
|
|
207
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
53
|
|
|
|
|
126
|
|
1785
|
|
|
|
|
|
|
|
1786
|
84
|
100
|
66
|
|
|
298
|
unless ( $_matched || defined($score) ) |
1787
|
|
|
|
|
|
|
{ |
1788
|
53
|
|
|
|
|
84
|
splice @{$thisparser->{deferred}}, $def_at; |
|
53
|
|
|
|
|
92
|
|
1789
|
|
|
|
|
|
|
|
1790
|
|
|
|
|
|
|
|
1791
|
53
|
|
|
|
|
109
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
1792
|
53
|
50
|
|
|
|
115
|
Parse::RecDescent::_trace(q{<>}, |
1793
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
1794
|
|
|
|
|
|
|
q{PLAIN}, |
1795
|
|
|
|
|
|
|
$tracelevel) |
1796
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1797
|
53
|
|
|
|
|
280
|
return undef; |
1798
|
|
|
|
|
|
|
} |
1799
|
31
|
50
|
33
|
|
|
111
|
if (!defined($return) && defined($score)) |
1800
|
|
|
|
|
|
|
{ |
1801
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
1802
|
|
|
|
|
|
|
q{PLAIN}, |
1803
|
|
|
|
|
|
|
$tracelevel) |
1804
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1805
|
0
|
|
|
|
|
0
|
$return = $score_return; |
1806
|
|
|
|
|
|
|
} |
1807
|
31
|
|
|
|
|
83
|
splice @{$thisparser->{errors}}, $err_at; |
|
31
|
|
|
|
|
110
|
|
1808
|
31
|
50
|
|
|
|
101
|
$return = $item[$#item] unless defined $return; |
1809
|
31
|
50
|
|
|
|
87
|
if (defined $::RD_TRACE) |
1810
|
|
|
|
|
|
|
{ |
1811
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
1812
|
|
|
|
|
|
|
$return . q{])}, "", |
1813
|
|
|
|
|
|
|
q{PLAIN}, |
1814
|
|
|
|
|
|
|
$tracelevel); |
1815
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
1816
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
1817
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1818
|
|
|
|
|
|
|
, q{PLAIN}, |
1819
|
|
|
|
|
|
|
$tracelevel) |
1820
|
|
|
|
|
|
|
} |
1821
|
31
|
|
|
|
|
132
|
$_[1] = $text; |
1822
|
31
|
|
|
|
|
220
|
return $return; |
1823
|
|
|
|
|
|
|
} |
1824
|
|
|
|
|
|
|
|
1825
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
1826
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::RFC822 |
1827
|
|
|
|
|
|
|
{ |
1828
|
22
|
|
|
22
|
|
52
|
my $thisparser = $_[0]; |
1829
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
936
|
|
1830
|
22
|
|
50
|
|
|
61
|
local $tracelevel = ($tracelevel||0)+1; |
1831
|
22
|
|
|
|
|
42
|
$ERRORS = 0; |
1832
|
22
|
|
|
|
|
58
|
my $thisrule = $thisparser->{"rules"}{"RFC822"}; |
1833
|
|
|
|
|
|
|
|
1834
|
22
|
50
|
|
|
|
53
|
Parse::RecDescent::_trace(q{Trying rule: [RFC822]}, |
1835
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
1836
|
|
|
|
|
|
|
q{RFC822}, |
1837
|
|
|
|
|
|
|
$tracelevel) |
1838
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1839
|
|
|
|
|
|
|
|
1840
|
22
|
|
|
|
|
32
|
my $def_at = @{$thisparser->{deferred}}; |
|
22
|
|
|
|
|
51
|
|
1841
|
22
|
|
|
|
|
43
|
my $err_at = @{$thisparser->{errors}}; |
|
22
|
|
|
|
|
39
|
|
1842
|
|
|
|
|
|
|
|
1843
|
22
|
|
|
|
|
62
|
my $score; |
1844
|
|
|
|
|
|
|
my $score_return; |
1845
|
22
|
|
|
|
|
0
|
my $_tok; |
1846
|
22
|
|
|
|
|
41
|
my $return = undef; |
1847
|
22
|
|
|
|
|
41
|
my $_matched=0; |
1848
|
22
|
|
|
|
|
39
|
my $commit=0; |
1849
|
22
|
|
|
|
|
46
|
my @item = (); |
1850
|
22
|
|
|
|
|
41
|
my %item = (); |
1851
|
22
|
|
|
|
|
36
|
my $repeating = $_[2]; |
1852
|
22
|
|
|
|
|
41
|
my $_noactions = $_[3]; |
1853
|
22
|
50
|
|
|
|
53
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
22
|
|
|
|
|
38
|
|
|
22
|
|
|
|
|
45
|
|
1854
|
22
|
|
|
|
|
45
|
my $_itempos = $_[5]; |
1855
|
22
|
50
|
|
|
|
89
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
1856
|
22
|
|
|
|
|
70
|
my $text; |
1857
|
|
|
|
|
|
|
my $lastsep; |
1858
|
22
|
|
|
|
|
0
|
my $current_match; |
1859
|
22
|
|
|
|
|
65
|
my $expectation = new Parse::RecDescent::Expectation(q{/^"RFC822"|^RFC822/i}); |
1860
|
22
|
|
|
|
|
160
|
$expectation->at($_[1]); |
1861
|
|
|
|
|
|
|
|
1862
|
22
|
|
|
|
|
94
|
my $thisline; |
1863
|
22
|
|
|
|
|
80
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
1864
|
|
|
|
|
|
|
|
1865
|
|
|
|
|
|
|
|
1866
|
|
|
|
|
|
|
|
1867
|
22
|
|
33
|
|
|
241
|
while (!$_matched && !$commit) |
1868
|
|
|
|
|
|
|
{ |
1869
|
|
|
|
|
|
|
|
1870
|
22
|
50
|
|
|
|
57
|
Parse::RecDescent::_trace(q{Trying production: [/^"RFC822"|^RFC822/i]}, |
1871
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
1872
|
|
|
|
|
|
|
q{RFC822}, |
1873
|
|
|
|
|
|
|
$tracelevel) |
1874
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1875
|
22
|
|
|
|
|
62
|
my $thisprod = $thisrule->{"prods"}[0]; |
1876
|
22
|
|
|
|
|
47
|
$text = $_[1]; |
1877
|
22
|
|
|
|
|
38
|
my $_savetext; |
1878
|
22
|
|
|
|
|
43
|
@item = (q{RFC822}); |
1879
|
22
|
|
|
|
|
48
|
%item = (__RULE__ => q{RFC822}); |
1880
|
22
|
|
|
|
|
35
|
my $repcount = 0; |
1881
|
|
|
|
|
|
|
|
1882
|
|
|
|
|
|
|
|
1883
|
22
|
50
|
|
|
|
43
|
Parse::RecDescent::_trace(q{Trying terminal: [/^"RFC822"|^RFC822/i]}, Parse::RecDescent::_tracefirst($text), |
1884
|
|
|
|
|
|
|
q{RFC822}, |
1885
|
|
|
|
|
|
|
$tracelevel) |
1886
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1887
|
22
|
|
|
|
|
50
|
undef $lastsep; |
1888
|
22
|
|
|
|
|
55
|
$expectation->is(q{})->at($text); |
1889
|
|
|
|
|
|
|
|
1890
|
|
|
|
|
|
|
|
1891
|
22
|
50
|
66
|
|
|
290
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:^"RFC822"|^RFC822)/i) |
|
22
|
100
|
|
|
|
294
|
|
1892
|
|
|
|
|
|
|
{ |
1893
|
1
|
50
|
|
|
|
7
|
$text = $lastsep . $text if defined $lastsep; |
1894
|
1
|
|
|
|
|
4
|
$expectation->failed(); |
1895
|
1
|
50
|
|
|
|
7
|
Parse::RecDescent::_trace(q{<>}, |
1896
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1897
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1898
|
|
|
|
|
|
|
|
1899
|
1
|
|
|
|
|
4
|
last; |
1900
|
|
|
|
|
|
|
} |
1901
|
21
|
|
|
|
|
132
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
1902
|
21
|
|
|
|
|
125
|
substr($text,0,length($current_match),q{}); |
1903
|
21
|
50
|
|
|
|
55
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
1904
|
|
|
|
|
|
|
. $current_match . q{])}, |
1905
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1906
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1907
|
21
|
|
|
|
|
74
|
push @item, $item{__PATTERN1__}=$current_match; |
1908
|
|
|
|
|
|
|
|
1909
|
|
|
|
|
|
|
|
1910
|
21
|
50
|
|
|
|
61
|
Parse::RecDescent::_trace(q{Trying action}, |
1911
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1912
|
|
|
|
|
|
|
q{RFC822}, |
1913
|
|
|
|
|
|
|
$tracelevel) |
1914
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1915
|
|
|
|
|
|
|
|
1916
|
|
|
|
|
|
|
|
1917
|
21
|
50
|
|
|
|
63
|
$_tok = ($_noactions) ? 0 : do { $return = "RFC822" }; |
|
21
|
|
|
|
|
47
|
|
1918
|
21
|
50
|
|
|
|
63
|
unless (defined $_tok) |
1919
|
|
|
|
|
|
|
{ |
1920
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
1921
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1922
|
0
|
|
|
|
|
0
|
last; |
1923
|
|
|
|
|
|
|
} |
1924
|
21
|
50
|
|
|
|
55
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
1925
|
|
|
|
|
|
|
. $_tok . q{])}, |
1926
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
1927
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1928
|
21
|
|
|
|
|
41
|
push @item, $_tok; |
1929
|
21
|
|
|
|
|
42
|
$item{__ACTION1__}=$_tok; |
1930
|
|
|
|
|
|
|
|
1931
|
|
|
|
|
|
|
|
1932
|
21
|
50
|
|
|
|
49
|
Parse::RecDescent::_trace(q{>>Matched production: [/^"RFC822"|^RFC822/i]<<}, |
1933
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1934
|
|
|
|
|
|
|
q{RFC822}, |
1935
|
|
|
|
|
|
|
$tracelevel) |
1936
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1937
|
|
|
|
|
|
|
|
1938
|
|
|
|
|
|
|
|
1939
|
|
|
|
|
|
|
|
1940
|
21
|
|
|
|
|
31
|
$_matched = 1; |
1941
|
21
|
|
|
|
|
51
|
last; |
1942
|
|
|
|
|
|
|
} |
1943
|
|
|
|
|
|
|
|
1944
|
|
|
|
|
|
|
splice |
1945
|
22
|
100
|
|
|
|
51
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
1
|
|
|
|
|
3
|
|
1946
|
|
|
|
|
|
|
|
1947
|
22
|
100
|
66
|
|
|
70
|
unless ( $_matched || defined($score) ) |
1948
|
|
|
|
|
|
|
{ |
1949
|
1
|
|
|
|
|
2
|
splice @{$thisparser->{deferred}}, $def_at; |
|
1
|
|
|
|
|
3
|
|
1950
|
|
|
|
|
|
|
|
1951
|
|
|
|
|
|
|
|
1952
|
1
|
|
|
|
|
3
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
1953
|
1
|
50
|
|
|
|
3
|
Parse::RecDescent::_trace(q{<>}, |
1954
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
1955
|
|
|
|
|
|
|
q{RFC822}, |
1956
|
|
|
|
|
|
|
$tracelevel) |
1957
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1958
|
1
|
|
|
|
|
6
|
return undef; |
1959
|
|
|
|
|
|
|
} |
1960
|
21
|
50
|
33
|
|
|
61
|
if (!defined($return) && defined($score)) |
1961
|
|
|
|
|
|
|
{ |
1962
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
1963
|
|
|
|
|
|
|
q{RFC822}, |
1964
|
|
|
|
|
|
|
$tracelevel) |
1965
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
1966
|
0
|
|
|
|
|
0
|
$return = $score_return; |
1967
|
|
|
|
|
|
|
} |
1968
|
21
|
|
|
|
|
44
|
splice @{$thisparser->{errors}}, $err_at; |
|
21
|
|
|
|
|
52
|
|
1969
|
21
|
50
|
|
|
|
66
|
$return = $item[$#item] unless defined $return; |
1970
|
21
|
50
|
|
|
|
70
|
if (defined $::RD_TRACE) |
1971
|
|
|
|
|
|
|
{ |
1972
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
1973
|
|
|
|
|
|
|
$return . q{])}, "", |
1974
|
|
|
|
|
|
|
q{RFC822}, |
1975
|
|
|
|
|
|
|
$tracelevel); |
1976
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
1977
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
1978
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
1979
|
|
|
|
|
|
|
, q{RFC822}, |
1980
|
|
|
|
|
|
|
$tracelevel) |
1981
|
|
|
|
|
|
|
} |
1982
|
21
|
|
|
|
|
85
|
$_[1] = $text; |
1983
|
21
|
|
|
|
|
145
|
return $return; |
1984
|
|
|
|
|
|
|
} |
1985
|
|
|
|
|
|
|
|
1986
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
1987
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::RFCNONCOMPLY |
1988
|
|
|
|
|
|
|
{ |
1989
|
98
|
|
|
98
|
|
171
|
my $thisparser = $_[0]; |
1990
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
906
|
|
1991
|
98
|
|
50
|
|
|
298
|
local $tracelevel = ($tracelevel||0)+1; |
1992
|
98
|
|
|
|
|
146
|
$ERRORS = 0; |
1993
|
98
|
|
|
|
|
197
|
my $thisrule = $thisparser->{"rules"}{"RFCNONCOMPLY"}; |
1994
|
|
|
|
|
|
|
|
1995
|
98
|
50
|
|
|
|
236
|
Parse::RecDescent::_trace(q{Trying rule: [RFCNONCOMPLY]}, |
1996
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
1997
|
|
|
|
|
|
|
q{RFCNONCOMPLY}, |
1998
|
|
|
|
|
|
|
$tracelevel) |
1999
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2000
|
|
|
|
|
|
|
|
2001
|
98
|
|
|
|
|
145
|
my $def_at = @{$thisparser->{deferred}}; |
|
98
|
|
|
|
|
183
|
|
2002
|
98
|
|
|
|
|
176
|
my $err_at = @{$thisparser->{errors}}; |
|
98
|
|
|
|
|
180
|
|
2003
|
|
|
|
|
|
|
|
2004
|
98
|
|
|
|
|
247
|
my $score; |
2005
|
|
|
|
|
|
|
my $score_return; |
2006
|
98
|
|
|
|
|
0
|
my $_tok; |
2007
|
98
|
|
|
|
|
150
|
my $return = undef; |
2008
|
98
|
|
|
|
|
143
|
my $_matched=0; |
2009
|
98
|
|
|
|
|
164
|
my $commit=0; |
2010
|
98
|
|
|
|
|
157
|
my @item = (); |
2011
|
98
|
|
|
|
|
202
|
my %item = (); |
2012
|
98
|
|
|
|
|
139
|
my $repeating = $_[2]; |
2013
|
98
|
|
|
|
|
197
|
my $_noactions = $_[3]; |
2014
|
98
|
50
|
|
|
|
207
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
98
|
|
|
|
|
128
|
|
|
98
|
|
|
|
|
164
|
|
2015
|
98
|
|
|
|
|
204
|
my $_itempos = $_[5]; |
2016
|
98
|
50
|
|
|
|
267
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
2017
|
98
|
|
|
|
|
225
|
my $text; |
2018
|
|
|
|
|
|
|
my $lastsep; |
2019
|
98
|
|
|
|
|
0
|
my $current_match; |
2020
|
98
|
|
|
|
|
288
|
my $expectation = new Parse::RecDescent::Expectation(q{/^\\(\\)/i}); |
2021
|
98
|
|
|
|
|
757
|
$expectation->at($_[1]); |
2022
|
|
|
|
|
|
|
|
2023
|
98
|
|
|
|
|
389
|
my $thisline; |
2024
|
98
|
|
|
|
|
333
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
2025
|
|
|
|
|
|
|
|
2026
|
|
|
|
|
|
|
|
2027
|
|
|
|
|
|
|
|
2028
|
98
|
|
33
|
|
|
783
|
while (!$_matched && !$commit) |
2029
|
|
|
|
|
|
|
{ |
2030
|
|
|
|
|
|
|
|
2031
|
98
|
50
|
|
|
|
226
|
Parse::RecDescent::_trace(q{Trying production: [/^\\(\\)/i]}, |
2032
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
2033
|
|
|
|
|
|
|
q{RFCNONCOMPLY}, |
2034
|
|
|
|
|
|
|
$tracelevel) |
2035
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2036
|
98
|
|
|
|
|
210
|
my $thisprod = $thisrule->{"prods"}[0]; |
2037
|
98
|
|
|
|
|
166
|
$text = $_[1]; |
2038
|
98
|
|
|
|
|
149
|
my $_savetext; |
2039
|
98
|
|
|
|
|
204
|
@item = (q{RFCNONCOMPLY}); |
2040
|
98
|
|
|
|
|
202
|
%item = (__RULE__ => q{RFCNONCOMPLY}); |
2041
|
98
|
|
|
|
|
158
|
my $repcount = 0; |
2042
|
|
|
|
|
|
|
|
2043
|
|
|
|
|
|
|
|
2044
|
98
|
50
|
|
|
|
189
|
Parse::RecDescent::_trace(q{Trying terminal: [/^\\(\\)/i]}, Parse::RecDescent::_tracefirst($text), |
2045
|
|
|
|
|
|
|
q{RFCNONCOMPLY}, |
2046
|
|
|
|
|
|
|
$tracelevel) |
2047
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2048
|
98
|
|
|
|
|
188
|
undef $lastsep; |
2049
|
98
|
|
|
|
|
208
|
$expectation->is(q{})->at($text); |
2050
|
|
|
|
|
|
|
|
2051
|
|
|
|
|
|
|
|
2052
|
98
|
50
|
66
|
|
|
1143
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:^\(\))/i) |
|
98
|
100
|
|
|
|
902
|
|
2053
|
|
|
|
|
|
|
{ |
2054
|
94
|
50
|
|
|
|
386
|
$text = $lastsep . $text if defined $lastsep; |
2055
|
94
|
|
|
|
|
302
|
$expectation->failed(); |
2056
|
94
|
50
|
|
|
|
380
|
Parse::RecDescent::_trace(q{<>}, |
2057
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
2058
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2059
|
|
|
|
|
|
|
|
2060
|
94
|
|
|
|
|
223
|
last; |
2061
|
|
|
|
|
|
|
} |
2062
|
4
|
|
|
|
|
24
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
2063
|
4
|
|
|
|
|
15
|
substr($text,0,length($current_match),q{}); |
2064
|
4
|
50
|
|
|
|
15
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
2065
|
|
|
|
|
|
|
. $current_match . q{])}, |
2066
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
2067
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2068
|
4
|
|
|
|
|
13
|
push @item, $item{__PATTERN1__}=$current_match; |
2069
|
|
|
|
|
|
|
|
2070
|
|
|
|
|
|
|
|
2071
|
4
|
50
|
|
|
|
14
|
Parse::RecDescent::_trace(q{Trying action}, |
2072
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2073
|
|
|
|
|
|
|
q{RFCNONCOMPLY}, |
2074
|
|
|
|
|
|
|
$tracelevel) |
2075
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2076
|
|
|
|
|
|
|
|
2077
|
|
|
|
|
|
|
|
2078
|
4
|
50
|
|
|
|
11
|
$_tok = ($_noactions) ? 0 : do { $return = "NIL" }; |
|
4
|
|
|
|
|
12
|
|
2079
|
4
|
50
|
|
|
|
15
|
unless (defined $_tok) |
2080
|
|
|
|
|
|
|
{ |
2081
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
2082
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2083
|
0
|
|
|
|
|
0
|
last; |
2084
|
|
|
|
|
|
|
} |
2085
|
4
|
50
|
|
|
|
13
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
2086
|
|
|
|
|
|
|
. $_tok . q{])}, |
2087
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
2088
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2089
|
4
|
|
|
|
|
9
|
push @item, $_tok; |
2090
|
4
|
|
|
|
|
10
|
$item{__ACTION1__}=$_tok; |
2091
|
|
|
|
|
|
|
|
2092
|
|
|
|
|
|
|
|
2093
|
4
|
50
|
|
|
|
12
|
Parse::RecDescent::_trace(q{>>Matched production: [/^\\(\\)/i]<<}, |
2094
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2095
|
|
|
|
|
|
|
q{RFCNONCOMPLY}, |
2096
|
|
|
|
|
|
|
$tracelevel) |
2097
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2098
|
|
|
|
|
|
|
|
2099
|
|
|
|
|
|
|
|
2100
|
|
|
|
|
|
|
|
2101
|
4
|
|
|
|
|
10
|
$_matched = 1; |
2102
|
4
|
|
|
|
|
11
|
last; |
2103
|
|
|
|
|
|
|
} |
2104
|
|
|
|
|
|
|
|
2105
|
|
|
|
|
|
|
splice |
2106
|
98
|
100
|
|
|
|
231
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
94
|
|
|
|
|
212
|
|
2107
|
|
|
|
|
|
|
|
2108
|
98
|
100
|
66
|
|
|
361
|
unless ( $_matched || defined($score) ) |
2109
|
|
|
|
|
|
|
{ |
2110
|
94
|
|
|
|
|
135
|
splice @{$thisparser->{deferred}}, $def_at; |
|
94
|
|
|
|
|
217
|
|
2111
|
|
|
|
|
|
|
|
2112
|
|
|
|
|
|
|
|
2113
|
94
|
|
|
|
|
175
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
2114
|
94
|
50
|
|
|
|
198
|
Parse::RecDescent::_trace(q{<>}, |
2115
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
2116
|
|
|
|
|
|
|
q{RFCNONCOMPLY}, |
2117
|
|
|
|
|
|
|
$tracelevel) |
2118
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2119
|
94
|
|
|
|
|
518
|
return undef; |
2120
|
|
|
|
|
|
|
} |
2121
|
4
|
50
|
33
|
|
|
18
|
if (!defined($return) && defined($score)) |
2122
|
|
|
|
|
|
|
{ |
2123
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
2124
|
|
|
|
|
|
|
q{RFCNONCOMPLY}, |
2125
|
|
|
|
|
|
|
$tracelevel) |
2126
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2127
|
0
|
|
|
|
|
0
|
$return = $score_return; |
2128
|
|
|
|
|
|
|
} |
2129
|
4
|
|
|
|
|
8
|
splice @{$thisparser->{errors}}, $err_at; |
|
4
|
|
|
|
|
11
|
|
2130
|
4
|
50
|
|
|
|
13
|
$return = $item[$#item] unless defined $return; |
2131
|
4
|
50
|
|
|
|
13
|
if (defined $::RD_TRACE) |
2132
|
|
|
|
|
|
|
{ |
2133
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
2134
|
|
|
|
|
|
|
$return . q{])}, "", |
2135
|
|
|
|
|
|
|
q{RFCNONCOMPLY}, |
2136
|
|
|
|
|
|
|
$tracelevel); |
2137
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
2138
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
2139
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2140
|
|
|
|
|
|
|
, q{RFCNONCOMPLY}, |
2141
|
|
|
|
|
|
|
$tracelevel) |
2142
|
|
|
|
|
|
|
} |
2143
|
4
|
|
|
|
|
13
|
$_[1] = $text; |
2144
|
4
|
|
|
|
|
25
|
return $return; |
2145
|
|
|
|
|
|
|
} |
2146
|
|
|
|
|
|
|
|
2147
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
2148
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::SINGLE_QUOTED_STRING |
2149
|
|
|
|
|
|
|
{ |
2150
|
184
|
|
|
184
|
|
295
|
my $thisparser = $_[0]; |
2151
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
1182
|
|
2152
|
184
|
|
50
|
|
|
419
|
local $tracelevel = ($tracelevel||0)+1; |
2153
|
184
|
|
|
|
|
275
|
$ERRORS = 0; |
2154
|
184
|
|
|
|
|
339
|
my $thisrule = $thisparser->{"rules"}{"SINGLE_QUOTED_STRING"}; |
2155
|
|
|
|
|
|
|
|
2156
|
184
|
50
|
|
|
|
347
|
Parse::RecDescent::_trace(q{Trying rule: [SINGLE_QUOTED_STRING]}, |
2157
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
2158
|
|
|
|
|
|
|
q{SINGLE_QUOTED_STRING}, |
2159
|
|
|
|
|
|
|
$tracelevel) |
2160
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2161
|
|
|
|
|
|
|
|
2162
|
184
|
|
|
|
|
253
|
my $def_at = @{$thisparser->{deferred}}; |
|
184
|
|
|
|
|
362
|
|
2163
|
184
|
|
|
|
|
348
|
my $err_at = @{$thisparser->{errors}}; |
|
184
|
|
|
|
|
341
|
|
2164
|
|
|
|
|
|
|
|
2165
|
184
|
|
|
|
|
421
|
my $score; |
2166
|
|
|
|
|
|
|
my $score_return; |
2167
|
184
|
|
|
|
|
0
|
my $_tok; |
2168
|
184
|
|
|
|
|
269
|
my $return = undef; |
2169
|
184
|
|
|
|
|
257
|
my $_matched=0; |
2170
|
184
|
|
|
|
|
254
|
my $commit=0; |
2171
|
184
|
|
|
|
|
334
|
my @item = (); |
2172
|
184
|
|
|
|
|
278
|
my %item = (); |
2173
|
184
|
|
|
|
|
303
|
my $repeating = $_[2]; |
2174
|
184
|
|
|
|
|
250
|
my $_noactions = $_[3]; |
2175
|
184
|
50
|
|
|
|
367
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
184
|
|
|
|
|
246
|
|
|
184
|
|
|
|
|
370
|
|
2176
|
184
|
|
|
|
|
282
|
my $_itempos = $_[5]; |
2177
|
184
|
50
|
|
|
|
412
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
2178
|
184
|
|
|
|
|
438
|
my $text; |
2179
|
|
|
|
|
|
|
my $lastsep; |
2180
|
184
|
|
|
|
|
0
|
my $current_match; |
2181
|
184
|
|
|
|
|
494
|
my $expectation = new Parse::RecDescent::Expectation(q{'''}); |
2182
|
184
|
|
|
|
|
1211
|
$expectation->at($_[1]); |
2183
|
|
|
|
|
|
|
|
2184
|
184
|
|
|
|
|
750
|
my $thisline; |
2185
|
184
|
|
|
|
|
652
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
2186
|
|
|
|
|
|
|
|
2187
|
|
|
|
|
|
|
|
2188
|
|
|
|
|
|
|
|
2189
|
184
|
|
33
|
|
|
1499
|
while (!$_matched && !$commit) |
2190
|
|
|
|
|
|
|
{ |
2191
|
|
|
|
|
|
|
|
2192
|
184
|
50
|
|
|
|
401
|
Parse::RecDescent::_trace(q{Trying production: [''' /(?:\\\\['\\\\]|[^'])*/ ''']}, |
2193
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
2194
|
|
|
|
|
|
|
q{SINGLE_QUOTED_STRING}, |
2195
|
|
|
|
|
|
|
$tracelevel) |
2196
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2197
|
184
|
|
|
|
|
431
|
my $thisprod = $thisrule->{"prods"}[0]; |
2198
|
184
|
|
|
|
|
291
|
$text = $_[1]; |
2199
|
184
|
|
|
|
|
261
|
my $_savetext; |
2200
|
184
|
|
|
|
|
340
|
@item = (q{SINGLE_QUOTED_STRING}); |
2201
|
184
|
|
|
|
|
330
|
%item = (__RULE__ => q{SINGLE_QUOTED_STRING}); |
2202
|
184
|
|
|
|
|
297
|
my $repcount = 0; |
2203
|
|
|
|
|
|
|
|
2204
|
|
|
|
|
|
|
|
2205
|
184
|
50
|
|
|
|
355
|
Parse::RecDescent::_trace(q{Trying terminal: [''']}, |
2206
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2207
|
|
|
|
|
|
|
q{SINGLE_QUOTED_STRING}, |
2208
|
|
|
|
|
|
|
$tracelevel) |
2209
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2210
|
184
|
|
|
|
|
370
|
undef $lastsep; |
2211
|
184
|
|
|
|
|
408
|
$expectation->is(q{})->at($text); |
2212
|
|
|
|
|
|
|
|
2213
|
|
|
|
|
|
|
|
2214
|
184
|
100
|
33
|
|
|
1952
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and do { $_tok = "'"; 1 } and |
|
184
|
100
|
66
|
|
|
1133
|
|
|
184
|
|
66
|
|
|
337
|
|
|
184
|
|
|
|
|
1413
|
|
2215
|
|
|
|
|
|
|
substr($text,0,length($_tok)) eq $_tok and |
2216
|
1
|
|
|
|
|
3
|
do { substr($text,0,length($_tok)) = ""; 1; } |
|
1
|
|
|
|
|
3
|
|
2217
|
|
|
|
|
|
|
) |
2218
|
|
|
|
|
|
|
{ |
2219
|
183
|
50
|
|
|
|
621
|
$text = $lastsep . $text if defined $lastsep; |
2220
|
|
|
|
|
|
|
|
2221
|
183
|
|
|
|
|
595
|
$expectation->failed(); |
2222
|
183
|
50
|
|
|
|
731
|
Parse::RecDescent::_trace(q{<>}, |
2223
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
2224
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2225
|
183
|
|
|
|
|
393
|
last; |
2226
|
|
|
|
|
|
|
} |
2227
|
1
|
50
|
|
|
|
4
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
2228
|
|
|
|
|
|
|
. $_tok . q{])}, |
2229
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
2230
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2231
|
1
|
|
|
|
|
4
|
push @item, $item{__STRING1__}=$_tok; |
2232
|
|
|
|
|
|
|
|
2233
|
|
|
|
|
|
|
|
2234
|
1
|
50
|
|
|
|
3
|
Parse::RecDescent::_trace(q{Trying terminal: [/(?:\\\\['\\\\]|[^'])*/]}, Parse::RecDescent::_tracefirst($text), |
2235
|
|
|
|
|
|
|
q{SINGLE_QUOTED_STRING}, |
2236
|
|
|
|
|
|
|
$tracelevel) |
2237
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2238
|
1
|
|
|
|
|
2
|
undef $lastsep; |
2239
|
1
|
|
|
|
|
4
|
$expectation->is(q{/(?:\\\\['\\\\]|[^'])*/})->at($text); |
2240
|
|
|
|
|
|
|
|
2241
|
|
|
|
|
|
|
|
2242
|
1
|
50
|
33
|
|
|
23
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:(?:\\['\\]|[^'])*)/) |
|
1
|
50
|
|
|
|
36
|
|
2243
|
|
|
|
|
|
|
{ |
2244
|
0
|
0
|
|
|
|
0
|
$text = $lastsep . $text if defined $lastsep; |
2245
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
2246
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
2247
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
2248
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2249
|
|
|
|
|
|
|
|
2250
|
0
|
|
|
|
|
0
|
last; |
2251
|
|
|
|
|
|
|
} |
2252
|
1
|
|
|
|
|
10
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
2253
|
1
|
|
|
|
|
5
|
substr($text,0,length($current_match),q{}); |
2254
|
1
|
50
|
|
|
|
3
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
2255
|
|
|
|
|
|
|
. $current_match . q{])}, |
2256
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
2257
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2258
|
1
|
|
|
|
|
5
|
push @item, $item{__PATTERN1__}=$current_match; |
2259
|
|
|
|
|
|
|
|
2260
|
|
|
|
|
|
|
|
2261
|
1
|
50
|
|
|
|
3
|
Parse::RecDescent::_trace(q{Trying terminal: [''']}, |
2262
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2263
|
|
|
|
|
|
|
q{SINGLE_QUOTED_STRING}, |
2264
|
|
|
|
|
|
|
$tracelevel) |
2265
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2266
|
1
|
|
|
|
|
2
|
undef $lastsep; |
2267
|
1
|
|
|
|
|
4
|
$expectation->is(q{'''})->at($text); |
2268
|
|
|
|
|
|
|
|
2269
|
|
|
|
|
|
|
|
2270
|
1
|
50
|
33
|
|
|
67
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and do { $_tok = "'"; 1 } and |
|
1
|
50
|
33
|
|
|
20
|
|
|
1
|
|
33
|
|
|
3
|
|
|
1
|
|
|
|
|
8
|
|
2271
|
|
|
|
|
|
|
substr($text,0,length($_tok)) eq $_tok and |
2272
|
1
|
|
|
|
|
3
|
do { substr($text,0,length($_tok)) = ""; 1; } |
|
1
|
|
|
|
|
5
|
|
2273
|
|
|
|
|
|
|
) |
2274
|
|
|
|
|
|
|
{ |
2275
|
0
|
0
|
|
|
|
0
|
$text = $lastsep . $text if defined $lastsep; |
2276
|
|
|
|
|
|
|
|
2277
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
2278
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
2279
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
2280
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2281
|
0
|
|
|
|
|
0
|
last; |
2282
|
|
|
|
|
|
|
} |
2283
|
1
|
50
|
|
|
|
4
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
2284
|
|
|
|
|
|
|
. $_tok . q{])}, |
2285
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
2286
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2287
|
1
|
|
|
|
|
4
|
push @item, $item{__STRING2__}=$_tok; |
2288
|
|
|
|
|
|
|
|
2289
|
|
|
|
|
|
|
|
2290
|
1
|
50
|
|
|
|
4
|
Parse::RecDescent::_trace(q{Trying action}, |
2291
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2292
|
|
|
|
|
|
|
q{SINGLE_QUOTED_STRING}, |
2293
|
|
|
|
|
|
|
$tracelevel) |
2294
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2295
|
|
|
|
|
|
|
|
2296
|
|
|
|
|
|
|
|
2297
|
1
|
50
|
|
|
|
3
|
$_tok = ($_noactions) ? 0 : do { $return = $item{__PATTERN1__} }; |
|
1
|
|
|
|
|
3
|
|
2298
|
1
|
50
|
|
|
|
4
|
unless (defined $_tok) |
2299
|
|
|
|
|
|
|
{ |
2300
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
2301
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2302
|
0
|
|
|
|
|
0
|
last; |
2303
|
|
|
|
|
|
|
} |
2304
|
1
|
50
|
|
|
|
3
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
2305
|
|
|
|
|
|
|
. $_tok . q{])}, |
2306
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
2307
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2308
|
1
|
|
|
|
|
3
|
push @item, $_tok; |
2309
|
1
|
|
|
|
|
2
|
$item{__ACTION1__}=$_tok; |
2310
|
|
|
|
|
|
|
|
2311
|
|
|
|
|
|
|
|
2312
|
1
|
50
|
|
|
|
11
|
Parse::RecDescent::_trace(q{>>Matched production: [''' /(?:\\\\['\\\\]|[^'])*/ ''']<<}, |
2313
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2314
|
|
|
|
|
|
|
q{SINGLE_QUOTED_STRING}, |
2315
|
|
|
|
|
|
|
$tracelevel) |
2316
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2317
|
|
|
|
|
|
|
|
2318
|
|
|
|
|
|
|
|
2319
|
|
|
|
|
|
|
|
2320
|
1
|
|
|
|
|
3
|
$_matched = 1; |
2321
|
1
|
|
|
|
|
3
|
last; |
2322
|
|
|
|
|
|
|
} |
2323
|
|
|
|
|
|
|
|
2324
|
|
|
|
|
|
|
splice |
2325
|
184
|
100
|
|
|
|
407
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
183
|
|
|
|
|
403
|
|
2326
|
|
|
|
|
|
|
|
2327
|
184
|
100
|
66
|
|
|
684
|
unless ( $_matched || defined($score) ) |
2328
|
|
|
|
|
|
|
{ |
2329
|
183
|
|
|
|
|
307
|
splice @{$thisparser->{deferred}}, $def_at; |
|
183
|
|
|
|
|
336
|
|
2330
|
|
|
|
|
|
|
|
2331
|
|
|
|
|
|
|
|
2332
|
183
|
|
|
|
|
329
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
2333
|
183
|
50
|
|
|
|
352
|
Parse::RecDescent::_trace(q{<>}, |
2334
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
2335
|
|
|
|
|
|
|
q{SINGLE_QUOTED_STRING}, |
2336
|
|
|
|
|
|
|
$tracelevel) |
2337
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2338
|
183
|
|
|
|
|
889
|
return undef; |
2339
|
|
|
|
|
|
|
} |
2340
|
1
|
50
|
33
|
|
|
5
|
if (!defined($return) && defined($score)) |
2341
|
|
|
|
|
|
|
{ |
2342
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
2343
|
|
|
|
|
|
|
q{SINGLE_QUOTED_STRING}, |
2344
|
|
|
|
|
|
|
$tracelevel) |
2345
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2346
|
0
|
|
|
|
|
0
|
$return = $score_return; |
2347
|
|
|
|
|
|
|
} |
2348
|
1
|
|
|
|
|
2
|
splice @{$thisparser->{errors}}, $err_at; |
|
1
|
|
|
|
|
3
|
|
2349
|
1
|
50
|
|
|
|
4
|
$return = $item[$#item] unless defined $return; |
2350
|
1
|
50
|
|
|
|
11
|
if (defined $::RD_TRACE) |
2351
|
|
|
|
|
|
|
{ |
2352
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
2353
|
|
|
|
|
|
|
$return . q{])}, "", |
2354
|
|
|
|
|
|
|
q{SINGLE_QUOTED_STRING}, |
2355
|
|
|
|
|
|
|
$tracelevel); |
2356
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
2357
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
2358
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2359
|
|
|
|
|
|
|
, q{SINGLE_QUOTED_STRING}, |
2360
|
|
|
|
|
|
|
$tracelevel) |
2361
|
|
|
|
|
|
|
} |
2362
|
1
|
|
|
|
|
5
|
$_[1] = $text; |
2363
|
1
|
|
|
|
|
9
|
return $return; |
2364
|
|
|
|
|
|
|
} |
2365
|
|
|
|
|
|
|
|
2366
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
2367
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING |
2368
|
|
|
|
|
|
|
{ |
2369
|
905
|
|
|
905
|
|
1555
|
my $thisparser = $_[0]; |
2370
|
1
|
|
|
1
|
|
17
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
4
|
|
|
1
|
|
|
|
|
370
|
|
2371
|
905
|
|
50
|
|
|
2052
|
local $tracelevel = ($tracelevel||0)+1; |
2372
|
905
|
|
|
|
|
1343
|
$ERRORS = 0; |
2373
|
905
|
|
|
|
|
1740
|
my $thisrule = $thisparser->{"rules"}{"STRING"}; |
2374
|
|
|
|
|
|
|
|
2375
|
905
|
50
|
|
|
|
1726
|
Parse::RecDescent::_trace(q{Trying rule: [STRING]}, |
2376
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
2377
|
|
|
|
|
|
|
q{STRING}, |
2378
|
|
|
|
|
|
|
$tracelevel) |
2379
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2380
|
|
|
|
|
|
|
|
2381
|
905
|
|
|
|
|
1278
|
my $def_at = @{$thisparser->{deferred}}; |
|
905
|
|
|
|
|
1507
|
|
2382
|
905
|
|
|
|
|
1328
|
my $err_at = @{$thisparser->{errors}}; |
|
905
|
|
|
|
|
1526
|
|
2383
|
|
|
|
|
|
|
|
2384
|
905
|
|
|
|
|
2200
|
my $score; |
2385
|
|
|
|
|
|
|
my $score_return; |
2386
|
905
|
|
|
|
|
0
|
my $_tok; |
2387
|
905
|
|
|
|
|
1300
|
my $return = undef; |
2388
|
905
|
|
|
|
|
1326
|
my $_matched=0; |
2389
|
905
|
|
|
|
|
1306
|
my $commit=0; |
2390
|
905
|
|
|
|
|
1527
|
my @item = (); |
2391
|
905
|
|
|
|
|
1492
|
my %item = (); |
2392
|
905
|
|
|
|
|
1481
|
my $repeating = $_[2]; |
2393
|
905
|
|
|
|
|
1360
|
my $_noactions = $_[3]; |
2394
|
905
|
50
|
|
|
|
1810
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
905
|
|
|
|
|
1215
|
|
|
905
|
|
|
|
|
1671
|
|
2395
|
905
|
|
|
|
|
1450
|
my $_itempos = $_[5]; |
2396
|
905
|
50
|
|
|
|
2015
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
2397
|
905
|
|
|
|
|
2023
|
my $text; |
2398
|
|
|
|
|
|
|
my $lastsep; |
2399
|
905
|
|
|
|
|
0
|
my $current_match; |
2400
|
905
|
|
|
|
|
2131
|
my $expectation = new Parse::RecDescent::Expectation(q{DOUBLE_QUOTED_STRING, or SINGLE_QUOTED_STRING, or BARESTRING}); |
2401
|
905
|
|
|
|
|
5780
|
$expectation->at($_[1]); |
2402
|
|
|
|
|
|
|
|
2403
|
905
|
|
|
|
|
3697
|
my $thisline; |
2404
|
905
|
|
|
|
|
3264
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
2405
|
|
|
|
|
|
|
|
2406
|
|
|
|
|
|
|
|
2407
|
|
|
|
|
|
|
|
2408
|
905
|
|
33
|
|
|
6803
|
while (!$_matched && !$commit) |
2409
|
|
|
|
|
|
|
{ |
2410
|
|
|
|
|
|
|
|
2411
|
905
|
50
|
|
|
|
1965
|
Parse::RecDescent::_trace(q{Trying production: [DOUBLE_QUOTED_STRING]}, |
2412
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
2413
|
|
|
|
|
|
|
q{STRING}, |
2414
|
|
|
|
|
|
|
$tracelevel) |
2415
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2416
|
905
|
|
|
|
|
1761
|
my $thisprod = $thisrule->{"prods"}[0]; |
2417
|
905
|
|
|
|
|
1618
|
$text = $_[1]; |
2418
|
905
|
|
|
|
|
1372
|
my $_savetext; |
2419
|
905
|
|
|
|
|
1747
|
@item = (q{STRING}); |
2420
|
905
|
|
|
|
|
1753
|
%item = (__RULE__ => q{STRING}); |
2421
|
905
|
|
|
|
|
1345
|
my $repcount = 0; |
2422
|
|
|
|
|
|
|
|
2423
|
|
|
|
|
|
|
|
2424
|
905
|
50
|
|
|
|
1949
|
Parse::RecDescent::_trace(q{Trying subrule: [DOUBLE_QUOTED_STRING]}, |
2425
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2426
|
|
|
|
|
|
|
q{STRING}, |
2427
|
|
|
|
|
|
|
$tracelevel) |
2428
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2429
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
21
|
|
|
1
|
|
|
|
|
305
|
|
|
905
|
|
|
|
|
1269
|
|
2430
|
905
|
|
|
|
|
2051
|
$expectation->is(q{})->at($text); |
2431
|
905
|
100
|
|
905
|
|
8232
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::DOUBLE_QUOTED_STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
905
|
|
|
|
|
1727
|
|
2432
|
|
|
|
|
|
|
{ |
2433
|
|
|
|
|
|
|
|
2434
|
184
|
50
|
|
|
|
489
|
Parse::RecDescent::_trace(q{<>}, |
2435
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2436
|
|
|
|
|
|
|
q{STRING}, |
2437
|
|
|
|
|
|
|
$tracelevel) |
2438
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2439
|
184
|
|
|
|
|
519
|
$expectation->failed(); |
2440
|
184
|
|
|
|
|
628
|
last; |
2441
|
|
|
|
|
|
|
} |
2442
|
721
|
50
|
|
|
|
2633
|
Parse::RecDescent::_trace(q{>>Matched subrule: [DOUBLE_QUOTED_STRING]<< (return value: [} |
2443
|
|
|
|
|
|
|
. $_tok . q{]}, |
2444
|
|
|
|
|
|
|
|
2445
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2446
|
|
|
|
|
|
|
q{STRING}, |
2447
|
|
|
|
|
|
|
$tracelevel) |
2448
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2449
|
721
|
|
|
|
|
1513
|
$item{q{DOUBLE_QUOTED_STRING}} = $_tok; |
2450
|
721
|
|
|
|
|
1409
|
push @item, $_tok; |
2451
|
|
|
|
|
|
|
|
2452
|
|
|
|
|
|
|
} |
2453
|
|
|
|
|
|
|
|
2454
|
721
|
50
|
|
|
|
1377
|
Parse::RecDescent::_trace(q{>>Matched production: [DOUBLE_QUOTED_STRING]<<}, |
2455
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2456
|
|
|
|
|
|
|
q{STRING}, |
2457
|
|
|
|
|
|
|
$tracelevel) |
2458
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2459
|
|
|
|
|
|
|
|
2460
|
|
|
|
|
|
|
|
2461
|
|
|
|
|
|
|
|
2462
|
721
|
|
|
|
|
1122
|
$_matched = 1; |
2463
|
721
|
|
|
|
|
1132
|
last; |
2464
|
|
|
|
|
|
|
} |
2465
|
|
|
|
|
|
|
|
2466
|
|
|
|
|
|
|
splice |
2467
|
905
|
100
|
|
|
|
2195
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
184
|
|
|
|
|
369
|
|
2468
|
|
|
|
|
|
|
|
2469
|
905
|
|
66
|
|
|
2345
|
while (!$_matched && !$commit) |
2470
|
|
|
|
|
|
|
{ |
2471
|
|
|
|
|
|
|
|
2472
|
184
|
50
|
|
|
|
379
|
Parse::RecDescent::_trace(q{Trying production: [SINGLE_QUOTED_STRING]}, |
2473
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
2474
|
|
|
|
|
|
|
q{STRING}, |
2475
|
|
|
|
|
|
|
$tracelevel) |
2476
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2477
|
184
|
|
|
|
|
351
|
my $thisprod = $thisrule->{"prods"}[1]; |
2478
|
184
|
|
|
|
|
300
|
$text = $_[1]; |
2479
|
184
|
|
|
|
|
266
|
my $_savetext; |
2480
|
184
|
|
|
|
|
443
|
@item = (q{STRING}); |
2481
|
184
|
|
|
|
|
419
|
%item = (__RULE__ => q{STRING}); |
2482
|
184
|
|
|
|
|
267
|
my $repcount = 0; |
2483
|
|
|
|
|
|
|
|
2484
|
|
|
|
|
|
|
|
2485
|
184
|
50
|
|
|
|
376
|
Parse::RecDescent::_trace(q{Trying subrule: [SINGLE_QUOTED_STRING]}, |
2486
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2487
|
|
|
|
|
|
|
q{STRING}, |
2488
|
|
|
|
|
|
|
$tracelevel) |
2489
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2490
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
304
|
|
|
184
|
|
|
|
|
261
|
|
2491
|
184
|
|
|
|
|
468
|
$expectation->is(q{})->at($text); |
2492
|
184
|
100
|
|
184
|
|
1748
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::SINGLE_QUOTED_STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
184
|
|
|
|
|
337
|
|
2493
|
|
|
|
|
|
|
{ |
2494
|
|
|
|
|
|
|
|
2495
|
183
|
50
|
|
|
|
350
|
Parse::RecDescent::_trace(q{<>}, |
2496
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2497
|
|
|
|
|
|
|
q{STRING}, |
2498
|
|
|
|
|
|
|
$tracelevel) |
2499
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2500
|
183
|
|
|
|
|
480
|
$expectation->failed(); |
2501
|
183
|
|
|
|
|
593
|
last; |
2502
|
|
|
|
|
|
|
} |
2503
|
1
|
50
|
|
|
|
5
|
Parse::RecDescent::_trace(q{>>Matched subrule: [SINGLE_QUOTED_STRING]<< (return value: [} |
2504
|
|
|
|
|
|
|
. $_tok . q{]}, |
2505
|
|
|
|
|
|
|
|
2506
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2507
|
|
|
|
|
|
|
q{STRING}, |
2508
|
|
|
|
|
|
|
$tracelevel) |
2509
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2510
|
1
|
|
|
|
|
3
|
$item{q{SINGLE_QUOTED_STRING}} = $_tok; |
2511
|
1
|
|
|
|
|
3
|
push @item, $_tok; |
2512
|
|
|
|
|
|
|
|
2513
|
|
|
|
|
|
|
} |
2514
|
|
|
|
|
|
|
|
2515
|
1
|
50
|
|
|
|
3
|
Parse::RecDescent::_trace(q{>>Matched production: [SINGLE_QUOTED_STRING]<<}, |
2516
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2517
|
|
|
|
|
|
|
q{STRING}, |
2518
|
|
|
|
|
|
|
$tracelevel) |
2519
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2520
|
|
|
|
|
|
|
|
2521
|
|
|
|
|
|
|
|
2522
|
|
|
|
|
|
|
|
2523
|
1
|
|
|
|
|
1
|
$_matched = 1; |
2524
|
1
|
|
|
|
|
2
|
last; |
2525
|
|
|
|
|
|
|
} |
2526
|
|
|
|
|
|
|
|
2527
|
|
|
|
|
|
|
splice |
2528
|
905
|
100
|
|
|
|
2001
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
183
|
|
|
|
|
334
|
|
2529
|
|
|
|
|
|
|
|
2530
|
905
|
|
66
|
|
|
2286
|
while (!$_matched && !$commit) |
2531
|
|
|
|
|
|
|
{ |
2532
|
|
|
|
|
|
|
|
2533
|
183
|
50
|
|
|
|
395
|
Parse::RecDescent::_trace(q{Trying production: [BARESTRING]}, |
2534
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
2535
|
|
|
|
|
|
|
q{STRING}, |
2536
|
|
|
|
|
|
|
$tracelevel) |
2537
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2538
|
183
|
|
|
|
|
346
|
my $thisprod = $thisrule->{"prods"}[2]; |
2539
|
183
|
|
|
|
|
328
|
$text = $_[1]; |
2540
|
183
|
|
|
|
|
265
|
my $_savetext; |
2541
|
183
|
|
|
|
|
429
|
@item = (q{STRING}); |
2542
|
183
|
|
|
|
|
388
|
%item = (__RULE__ => q{STRING}); |
2543
|
183
|
|
|
|
|
309
|
my $repcount = 0; |
2544
|
|
|
|
|
|
|
|
2545
|
|
|
|
|
|
|
|
2546
|
183
|
50
|
|
|
|
358
|
Parse::RecDescent::_trace(q{Trying subrule: [BARESTRING]}, |
2547
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2548
|
|
|
|
|
|
|
q{STRING}, |
2549
|
|
|
|
|
|
|
$tracelevel) |
2550
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2551
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
546
|
|
|
183
|
|
|
|
|
267
|
|
2552
|
183
|
|
|
|
|
400
|
$expectation->is(q{})->at($text); |
2553
|
183
|
50
|
|
183
|
|
1767
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::BARESTRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
183
|
|
|
|
|
371
|
|
2554
|
|
|
|
|
|
|
{ |
2555
|
|
|
|
|
|
|
|
2556
|
183
|
50
|
|
|
|
386
|
Parse::RecDescent::_trace(q{<>}, |
2557
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2558
|
|
|
|
|
|
|
q{STRING}, |
2559
|
|
|
|
|
|
|
$tracelevel) |
2560
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2561
|
183
|
|
|
|
|
502
|
$expectation->failed(); |
2562
|
183
|
|
|
|
|
681
|
last; |
2563
|
|
|
|
|
|
|
} |
2564
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched subrule: [BARESTRING]<< (return value: [} |
2565
|
|
|
|
|
|
|
. $_tok . q{]}, |
2566
|
|
|
|
|
|
|
|
2567
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2568
|
|
|
|
|
|
|
q{STRING}, |
2569
|
|
|
|
|
|
|
$tracelevel) |
2570
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2571
|
0
|
|
|
|
|
0
|
$item{q{BARESTRING}} = $_tok; |
2572
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
2573
|
|
|
|
|
|
|
|
2574
|
|
|
|
|
|
|
} |
2575
|
|
|
|
|
|
|
|
2576
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [BARESTRING]<<}, |
2577
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2578
|
|
|
|
|
|
|
q{STRING}, |
2579
|
|
|
|
|
|
|
$tracelevel) |
2580
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2581
|
|
|
|
|
|
|
|
2582
|
|
|
|
|
|
|
|
2583
|
|
|
|
|
|
|
|
2584
|
0
|
|
|
|
|
0
|
$_matched = 1; |
2585
|
0
|
|
|
|
|
0
|
last; |
2586
|
|
|
|
|
|
|
} |
2587
|
|
|
|
|
|
|
|
2588
|
|
|
|
|
|
|
splice |
2589
|
905
|
100
|
|
|
|
1970
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
183
|
|
|
|
|
355
|
|
2590
|
|
|
|
|
|
|
|
2591
|
905
|
100
|
66
|
|
|
2177
|
unless ( $_matched || defined($score) ) |
2592
|
|
|
|
|
|
|
{ |
2593
|
183
|
|
|
|
|
256
|
splice @{$thisparser->{deferred}}, $def_at; |
|
183
|
|
|
|
|
309
|
|
2594
|
|
|
|
|
|
|
|
2595
|
|
|
|
|
|
|
|
2596
|
183
|
|
|
|
|
417
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
2597
|
183
|
50
|
|
|
|
388
|
Parse::RecDescent::_trace(q{<>}, |
2598
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
2599
|
|
|
|
|
|
|
q{STRING}, |
2600
|
|
|
|
|
|
|
$tracelevel) |
2601
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2602
|
183
|
|
|
|
|
963
|
return undef; |
2603
|
|
|
|
|
|
|
} |
2604
|
722
|
50
|
33
|
|
|
2691
|
if (!defined($return) && defined($score)) |
2605
|
|
|
|
|
|
|
{ |
2606
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
2607
|
|
|
|
|
|
|
q{STRING}, |
2608
|
|
|
|
|
|
|
$tracelevel) |
2609
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2610
|
0
|
|
|
|
|
0
|
$return = $score_return; |
2611
|
|
|
|
|
|
|
} |
2612
|
722
|
|
|
|
|
1048
|
splice @{$thisparser->{errors}}, $err_at; |
|
722
|
|
|
|
|
1574
|
|
2613
|
722
|
50
|
|
|
|
1811
|
$return = $item[$#item] unless defined $return; |
2614
|
722
|
50
|
|
|
|
1730
|
if (defined $::RD_TRACE) |
2615
|
|
|
|
|
|
|
{ |
2616
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
2617
|
|
|
|
|
|
|
$return . q{])}, "", |
2618
|
|
|
|
|
|
|
q{STRING}, |
2619
|
|
|
|
|
|
|
$tracelevel); |
2620
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
2621
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
2622
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2623
|
|
|
|
|
|
|
, q{STRING}, |
2624
|
|
|
|
|
|
|
$tracelevel) |
2625
|
|
|
|
|
|
|
} |
2626
|
722
|
|
|
|
|
1214
|
$_[1] = $text; |
2627
|
722
|
|
|
|
|
4088
|
return $return; |
2628
|
|
|
|
|
|
|
} |
2629
|
|
|
|
|
|
|
|
2630
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
2631
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRINGS |
2632
|
|
|
|
|
|
|
{ |
2633
|
58
|
|
|
58
|
|
115
|
my $thisparser = $_[0]; |
2634
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
1190
|
|
2635
|
58
|
|
50
|
|
|
136
|
local $tracelevel = ($tracelevel||0)+1; |
2636
|
58
|
|
|
|
|
119
|
$ERRORS = 0; |
2637
|
58
|
|
|
|
|
118
|
my $thisrule = $thisparser->{"rules"}{"STRINGS"}; |
2638
|
|
|
|
|
|
|
|
2639
|
58
|
50
|
|
|
|
132
|
Parse::RecDescent::_trace(q{Trying rule: [STRINGS]}, |
2640
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
2641
|
|
|
|
|
|
|
q{STRINGS}, |
2642
|
|
|
|
|
|
|
$tracelevel) |
2643
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2644
|
|
|
|
|
|
|
|
2645
|
58
|
|
|
|
|
91
|
my $def_at = @{$thisparser->{deferred}}; |
|
58
|
|
|
|
|
102
|
|
2646
|
58
|
|
|
|
|
89
|
my $err_at = @{$thisparser->{errors}}; |
|
58
|
|
|
|
|
124
|
|
2647
|
|
|
|
|
|
|
|
2648
|
58
|
|
|
|
|
144
|
my $score; |
2649
|
|
|
|
|
|
|
my $score_return; |
2650
|
58
|
|
|
|
|
0
|
my $_tok; |
2651
|
58
|
|
|
|
|
101
|
my $return = undef; |
2652
|
58
|
|
|
|
|
83
|
my $_matched=0; |
2653
|
58
|
|
|
|
|
94
|
my $commit=0; |
2654
|
58
|
|
|
|
|
93
|
my @item = (); |
2655
|
58
|
|
|
|
|
94
|
my %item = (); |
2656
|
58
|
|
|
|
|
100
|
my $repeating = $_[2]; |
2657
|
58
|
|
|
|
|
88
|
my $_noactions = $_[3]; |
2658
|
58
|
50
|
|
|
|
123
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
58
|
|
|
|
|
79
|
|
|
58
|
|
|
|
|
98
|
|
2659
|
58
|
|
|
|
|
94
|
my $_itempos = $_[5]; |
2660
|
58
|
50
|
|
|
|
138
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
2661
|
58
|
|
|
|
|
152
|
my $text; |
2662
|
|
|
|
|
|
|
my $lastsep; |
2663
|
58
|
|
|
|
|
0
|
my $current_match; |
2664
|
58
|
|
|
|
|
160
|
my $expectation = new Parse::RecDescent::Expectation(q{'('}); |
2665
|
58
|
|
|
|
|
389
|
$expectation->at($_[1]); |
2666
|
|
|
|
|
|
|
|
2667
|
58
|
|
|
|
|
242
|
my $thisline; |
2668
|
58
|
|
|
|
|
207
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
2669
|
|
|
|
|
|
|
|
2670
|
|
|
|
|
|
|
|
2671
|
|
|
|
|
|
|
|
2672
|
58
|
|
33
|
|
|
440
|
while (!$_matched && !$commit) |
2673
|
|
|
|
|
|
|
{ |
2674
|
|
|
|
|
|
|
|
2675
|
58
|
50
|
|
|
|
124
|
Parse::RecDescent::_trace(q{Trying production: ['(' STRING ')']}, |
2676
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
2677
|
|
|
|
|
|
|
q{STRINGS}, |
2678
|
|
|
|
|
|
|
$tracelevel) |
2679
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2680
|
58
|
|
|
|
|
143
|
my $thisprod = $thisrule->{"prods"}[0]; |
2681
|
58
|
|
|
|
|
116
|
$text = $_[1]; |
2682
|
58
|
|
|
|
|
78
|
my $_savetext; |
2683
|
58
|
|
|
|
|
113
|
@item = (q{STRINGS}); |
2684
|
58
|
|
|
|
|
103
|
%item = (__RULE__ => q{STRINGS}); |
2685
|
58
|
|
|
|
|
83
|
my $repcount = 0; |
2686
|
|
|
|
|
|
|
|
2687
|
|
|
|
|
|
|
|
2688
|
58
|
50
|
|
|
|
122
|
Parse::RecDescent::_trace(q{Trying terminal: ['(']}, |
2689
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2690
|
|
|
|
|
|
|
q{STRINGS}, |
2691
|
|
|
|
|
|
|
$tracelevel) |
2692
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2693
|
58
|
|
|
|
|
120
|
undef $lastsep; |
2694
|
58
|
|
|
|
|
140
|
$expectation->is(q{})->at($text); |
2695
|
|
|
|
|
|
|
|
2696
|
|
|
|
|
|
|
|
2697
|
58
|
100
|
33
|
|
|
677
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and do { $_tok = "("; 1 } and |
|
58
|
100
|
66
|
|
|
344
|
|
|
58
|
|
66
|
|
|
110
|
|
|
58
|
|
|
|
|
318
|
|
2698
|
|
|
|
|
|
|
substr($text,0,length($_tok)) eq $_tok and |
2699
|
1
|
|
|
|
|
4
|
do { substr($text,0,length($_tok)) = ""; 1; } |
|
1
|
|
|
|
|
5
|
|
2700
|
|
|
|
|
|
|
) |
2701
|
|
|
|
|
|
|
{ |
2702
|
57
|
50
|
|
|
|
213
|
$text = $lastsep . $text if defined $lastsep; |
2703
|
|
|
|
|
|
|
|
2704
|
57
|
|
|
|
|
214
|
$expectation->failed(); |
2705
|
57
|
50
|
|
|
|
232
|
Parse::RecDescent::_trace(q{<>}, |
2706
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
2707
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2708
|
57
|
|
|
|
|
108
|
last; |
2709
|
|
|
|
|
|
|
} |
2710
|
1
|
50
|
|
|
|
4
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
2711
|
|
|
|
|
|
|
. $_tok . q{])}, |
2712
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
2713
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2714
|
1
|
|
|
|
|
4
|
push @item, $item{__STRING1__}=$_tok; |
2715
|
|
|
|
|
|
|
|
2716
|
|
|
|
|
|
|
|
2717
|
1
|
50
|
|
|
|
5
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [STRING]}, |
2718
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2719
|
|
|
|
|
|
|
q{STRINGS}, |
2720
|
|
|
|
|
|
|
$tracelevel) |
2721
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2722
|
1
|
|
|
|
|
3
|
$expectation->is(q{STRING})->at($text); |
2723
|
|
|
|
|
|
|
|
2724
|
1
|
50
|
|
2
|
|
17
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING, 1, 100000000, $_noactions,$expectation,sub { \@arg },undef))) |
|
2
|
|
|
|
|
14
|
|
2725
|
|
|
|
|
|
|
{ |
2726
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
2727
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2728
|
|
|
|
|
|
|
q{STRINGS}, |
2729
|
|
|
|
|
|
|
$tracelevel) |
2730
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2731
|
0
|
|
|
|
|
0
|
last; |
2732
|
|
|
|
|
|
|
} |
2733
|
1
|
50
|
|
|
|
17
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [STRING]<< (} |
2734
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
2735
|
|
|
|
|
|
|
|
2736
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2737
|
|
|
|
|
|
|
q{STRINGS}, |
2738
|
|
|
|
|
|
|
$tracelevel) |
2739
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2740
|
1
|
|
|
|
|
5
|
$item{q{STRING(s)}} = $_tok; |
2741
|
1
|
|
|
|
|
3
|
push @item, $_tok; |
2742
|
|
|
|
|
|
|
|
2743
|
|
|
|
|
|
|
|
2744
|
|
|
|
|
|
|
|
2745
|
1
|
50
|
|
|
|
12
|
Parse::RecDescent::_trace(q{Trying terminal: [')']}, |
2746
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2747
|
|
|
|
|
|
|
q{STRINGS}, |
2748
|
|
|
|
|
|
|
$tracelevel) |
2749
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2750
|
1
|
|
|
|
|
2
|
undef $lastsep; |
2751
|
1
|
|
|
|
|
5
|
$expectation->is(q{')'})->at($text); |
2752
|
|
|
|
|
|
|
|
2753
|
|
|
|
|
|
|
|
2754
|
1
|
50
|
33
|
|
|
25
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and do { $_tok = ")"; 1 } and |
|
1
|
50
|
33
|
|
|
13
|
|
|
1
|
|
33
|
|
|
3
|
|
|
1
|
|
|
|
|
19
|
|
2755
|
|
|
|
|
|
|
substr($text,0,length($_tok)) eq $_tok and |
2756
|
1
|
|
|
|
|
3
|
do { substr($text,0,length($_tok)) = ""; 1; } |
|
1
|
|
|
|
|
22
|
|
2757
|
|
|
|
|
|
|
) |
2758
|
|
|
|
|
|
|
{ |
2759
|
0
|
0
|
|
|
|
0
|
$text = $lastsep . $text if defined $lastsep; |
2760
|
|
|
|
|
|
|
|
2761
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
2762
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
2763
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
2764
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2765
|
0
|
|
|
|
|
0
|
last; |
2766
|
|
|
|
|
|
|
} |
2767
|
1
|
50
|
|
|
|
4
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
2768
|
|
|
|
|
|
|
. $_tok . q{])}, |
2769
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
2770
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2771
|
1
|
|
|
|
|
4
|
push @item, $item{__STRING2__}=$_tok; |
2772
|
|
|
|
|
|
|
|
2773
|
|
|
|
|
|
|
|
2774
|
1
|
50
|
|
|
|
4
|
Parse::RecDescent::_trace(q{Trying action}, |
2775
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2776
|
|
|
|
|
|
|
q{STRINGS}, |
2777
|
|
|
|
|
|
|
$tracelevel) |
2778
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2779
|
|
|
|
|
|
|
|
2780
|
|
|
|
|
|
|
|
2781
|
1
|
50
|
|
|
|
15
|
$_tok = ($_noactions) ? 0 : do { $return = $item{'STRING(s)'} }; |
|
1
|
|
|
|
|
4
|
|
2782
|
1
|
50
|
|
|
|
4
|
unless (defined $_tok) |
2783
|
|
|
|
|
|
|
{ |
2784
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
2785
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2786
|
0
|
|
|
|
|
0
|
last; |
2787
|
|
|
|
|
|
|
} |
2788
|
1
|
50
|
|
|
|
3
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
2789
|
|
|
|
|
|
|
. $_tok . q{])}, |
2790
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
2791
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2792
|
1
|
|
|
|
|
3
|
push @item, $_tok; |
2793
|
1
|
|
|
|
|
2
|
$item{__ACTION1__}=$_tok; |
2794
|
|
|
|
|
|
|
|
2795
|
|
|
|
|
|
|
|
2796
|
1
|
50
|
|
|
|
4
|
Parse::RecDescent::_trace(q{>>Matched production: ['(' STRING ')']<<}, |
2797
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2798
|
|
|
|
|
|
|
q{STRINGS}, |
2799
|
|
|
|
|
|
|
$tracelevel) |
2800
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2801
|
|
|
|
|
|
|
|
2802
|
|
|
|
|
|
|
|
2803
|
|
|
|
|
|
|
|
2804
|
1
|
|
|
|
|
3
|
$_matched = 1; |
2805
|
1
|
|
|
|
|
3
|
last; |
2806
|
|
|
|
|
|
|
} |
2807
|
|
|
|
|
|
|
|
2808
|
|
|
|
|
|
|
splice |
2809
|
58
|
100
|
|
|
|
138
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
57
|
|
|
|
|
158
|
|
2810
|
|
|
|
|
|
|
|
2811
|
58
|
100
|
66
|
|
|
203
|
unless ( $_matched || defined($score) ) |
2812
|
|
|
|
|
|
|
{ |
2813
|
57
|
|
|
|
|
88
|
splice @{$thisparser->{deferred}}, $def_at; |
|
57
|
|
|
|
|
106
|
|
2814
|
|
|
|
|
|
|
|
2815
|
|
|
|
|
|
|
|
2816
|
57
|
|
|
|
|
96
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
2817
|
57
|
50
|
|
|
|
119
|
Parse::RecDescent::_trace(q{<>}, |
2818
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
2819
|
|
|
|
|
|
|
q{STRINGS}, |
2820
|
|
|
|
|
|
|
$tracelevel) |
2821
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2822
|
57
|
|
|
|
|
330
|
return undef; |
2823
|
|
|
|
|
|
|
} |
2824
|
1
|
50
|
33
|
|
|
5
|
if (!defined($return) && defined($score)) |
2825
|
|
|
|
|
|
|
{ |
2826
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
2827
|
|
|
|
|
|
|
q{STRINGS}, |
2828
|
|
|
|
|
|
|
$tracelevel) |
2829
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2830
|
0
|
|
|
|
|
0
|
$return = $score_return; |
2831
|
|
|
|
|
|
|
} |
2832
|
1
|
|
|
|
|
2
|
splice @{$thisparser->{errors}}, $err_at; |
|
1
|
|
|
|
|
3
|
|
2833
|
1
|
50
|
|
|
|
4
|
$return = $item[$#item] unless defined $return; |
2834
|
1
|
50
|
|
|
|
3
|
if (defined $::RD_TRACE) |
2835
|
|
|
|
|
|
|
{ |
2836
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
2837
|
|
|
|
|
|
|
$return . q{])}, "", |
2838
|
|
|
|
|
|
|
q{STRINGS}, |
2839
|
|
|
|
|
|
|
$tracelevel); |
2840
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
2841
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
2842
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2843
|
|
|
|
|
|
|
, q{STRINGS}, |
2844
|
|
|
|
|
|
|
$tracelevel) |
2845
|
|
|
|
|
|
|
} |
2846
|
1
|
|
|
|
|
4
|
$_[1] = $text; |
2847
|
1
|
|
|
|
|
25
|
return $return; |
2848
|
|
|
|
|
|
|
} |
2849
|
|
|
|
|
|
|
|
2850
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
2851
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::TEXT |
2852
|
|
|
|
|
|
|
{ |
2853
|
94
|
|
|
94
|
|
191
|
my $thisparser = $_[0]; |
2854
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
881
|
|
2855
|
94
|
|
50
|
|
|
215
|
local $tracelevel = ($tracelevel||0)+1; |
2856
|
94
|
|
|
|
|
161
|
$ERRORS = 0; |
2857
|
94
|
|
|
|
|
197
|
my $thisrule = $thisparser->{"rules"}{"TEXT"}; |
2858
|
|
|
|
|
|
|
|
2859
|
94
|
50
|
|
|
|
202
|
Parse::RecDescent::_trace(q{Trying rule: [TEXT]}, |
2860
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
2861
|
|
|
|
|
|
|
q{TEXT}, |
2862
|
|
|
|
|
|
|
$tracelevel) |
2863
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2864
|
|
|
|
|
|
|
|
2865
|
94
|
|
|
|
|
141
|
my $def_at = @{$thisparser->{deferred}}; |
|
94
|
|
|
|
|
156
|
|
2866
|
94
|
|
|
|
|
143
|
my $err_at = @{$thisparser->{errors}}; |
|
94
|
|
|
|
|
152
|
|
2867
|
|
|
|
|
|
|
|
2868
|
94
|
|
|
|
|
266
|
my $score; |
2869
|
|
|
|
|
|
|
my $score_return; |
2870
|
94
|
|
|
|
|
0
|
my $_tok; |
2871
|
94
|
|
|
|
|
141
|
my $return = undef; |
2872
|
94
|
|
|
|
|
142
|
my $_matched=0; |
2873
|
94
|
|
|
|
|
157
|
my $commit=0; |
2874
|
94
|
|
|
|
|
201
|
my @item = (); |
2875
|
94
|
|
|
|
|
154
|
my %item = (); |
2876
|
94
|
|
|
|
|
140
|
my $repeating = $_[2]; |
2877
|
94
|
|
|
|
|
133
|
my $_noactions = $_[3]; |
2878
|
94
|
50
|
|
|
|
218
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
94
|
|
|
|
|
141
|
|
|
94
|
|
|
|
|
185
|
|
2879
|
94
|
|
|
|
|
145
|
my $_itempos = $_[5]; |
2880
|
94
|
50
|
|
|
|
197
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
2881
|
94
|
|
|
|
|
235
|
my $text; |
2882
|
|
|
|
|
|
|
my $lastsep; |
2883
|
94
|
|
|
|
|
0
|
my $current_match; |
2884
|
94
|
|
|
|
|
225
|
my $expectation = new Parse::RecDescent::Expectation(q{/^"TEXT"|^TEXT/i}); |
2885
|
94
|
|
|
|
|
583
|
$expectation->at($_[1]); |
2886
|
|
|
|
|
|
|
|
2887
|
94
|
|
|
|
|
401
|
my $thisline; |
2888
|
94
|
|
|
|
|
278
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
2889
|
|
|
|
|
|
|
|
2890
|
|
|
|
|
|
|
|
2891
|
|
|
|
|
|
|
|
2892
|
94
|
|
33
|
|
|
691
|
while (!$_matched && !$commit) |
2893
|
|
|
|
|
|
|
{ |
2894
|
|
|
|
|
|
|
|
2895
|
94
|
50
|
|
|
|
189
|
Parse::RecDescent::_trace(q{Trying production: [/^"TEXT"|^TEXT/i]}, |
2896
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
2897
|
|
|
|
|
|
|
q{TEXT}, |
2898
|
|
|
|
|
|
|
$tracelevel) |
2899
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2900
|
94
|
|
|
|
|
192
|
my $thisprod = $thisrule->{"prods"}[0]; |
2901
|
94
|
|
|
|
|
170
|
$text = $_[1]; |
2902
|
94
|
|
|
|
|
144
|
my $_savetext; |
2903
|
94
|
|
|
|
|
186
|
@item = (q{TEXT}); |
2904
|
94
|
|
|
|
|
192
|
%item = (__RULE__ => q{TEXT}); |
2905
|
94
|
|
|
|
|
130
|
my $repcount = 0; |
2906
|
|
|
|
|
|
|
|
2907
|
|
|
|
|
|
|
|
2908
|
94
|
50
|
|
|
|
203
|
Parse::RecDescent::_trace(q{Trying terminal: [/^"TEXT"|^TEXT/i]}, Parse::RecDescent::_tracefirst($text), |
2909
|
|
|
|
|
|
|
q{TEXT}, |
2910
|
|
|
|
|
|
|
$tracelevel) |
2911
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2912
|
94
|
|
|
|
|
182
|
undef $lastsep; |
2913
|
94
|
|
|
|
|
235
|
$expectation->is(q{})->at($text); |
2914
|
|
|
|
|
|
|
|
2915
|
|
|
|
|
|
|
|
2916
|
94
|
50
|
66
|
|
|
1139
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:^"TEXT"|^TEXT)/i) |
|
94
|
100
|
|
|
|
889
|
|
2917
|
|
|
|
|
|
|
{ |
2918
|
53
|
50
|
|
|
|
220
|
$text = $lastsep . $text if defined $lastsep; |
2919
|
53
|
|
|
|
|
179
|
$expectation->failed(); |
2920
|
53
|
50
|
|
|
|
237
|
Parse::RecDescent::_trace(q{<>}, |
2921
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
2922
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2923
|
|
|
|
|
|
|
|
2924
|
53
|
|
|
|
|
120
|
last; |
2925
|
|
|
|
|
|
|
} |
2926
|
41
|
|
|
|
|
223
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
2927
|
41
|
|
|
|
|
180
|
substr($text,0,length($current_match),q{}); |
2928
|
41
|
50
|
|
|
|
108
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
2929
|
|
|
|
|
|
|
. $current_match . q{])}, |
2930
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
2931
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2932
|
41
|
|
|
|
|
130
|
push @item, $item{__PATTERN1__}=$current_match; |
2933
|
|
|
|
|
|
|
|
2934
|
|
|
|
|
|
|
|
2935
|
41
|
50
|
|
|
|
97
|
Parse::RecDescent::_trace(q{Trying action}, |
2936
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2937
|
|
|
|
|
|
|
q{TEXT}, |
2938
|
|
|
|
|
|
|
$tracelevel) |
2939
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2940
|
|
|
|
|
|
|
|
2941
|
|
|
|
|
|
|
|
2942
|
41
|
50
|
|
|
|
84
|
$_tok = ($_noactions) ? 0 : do { $return = "TEXT" }; |
|
41
|
|
|
|
|
129
|
|
2943
|
41
|
50
|
|
|
|
138
|
unless (defined $_tok) |
2944
|
|
|
|
|
|
|
{ |
2945
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
2946
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2947
|
0
|
|
|
|
|
0
|
last; |
2948
|
|
|
|
|
|
|
} |
2949
|
41
|
50
|
|
|
|
92
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
2950
|
|
|
|
|
|
|
. $_tok . q{])}, |
2951
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
2952
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2953
|
41
|
|
|
|
|
89
|
push @item, $_tok; |
2954
|
41
|
|
|
|
|
82
|
$item{__ACTION1__}=$_tok; |
2955
|
|
|
|
|
|
|
|
2956
|
|
|
|
|
|
|
|
2957
|
41
|
50
|
|
|
|
116
|
Parse::RecDescent::_trace(q{>>Matched production: [/^"TEXT"|^TEXT/i]<<}, |
2958
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
2959
|
|
|
|
|
|
|
q{TEXT}, |
2960
|
|
|
|
|
|
|
$tracelevel) |
2961
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2962
|
|
|
|
|
|
|
|
2963
|
|
|
|
|
|
|
|
2964
|
|
|
|
|
|
|
|
2965
|
41
|
|
|
|
|
65
|
$_matched = 1; |
2966
|
41
|
|
|
|
|
87
|
last; |
2967
|
|
|
|
|
|
|
} |
2968
|
|
|
|
|
|
|
|
2969
|
|
|
|
|
|
|
splice |
2970
|
94
|
100
|
|
|
|
226
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
53
|
|
|
|
|
127
|
|
2971
|
|
|
|
|
|
|
|
2972
|
94
|
100
|
66
|
|
|
316
|
unless ( $_matched || defined($score) ) |
2973
|
|
|
|
|
|
|
{ |
2974
|
53
|
|
|
|
|
75
|
splice @{$thisparser->{deferred}}, $def_at; |
|
53
|
|
|
|
|
105
|
|
2975
|
|
|
|
|
|
|
|
2976
|
|
|
|
|
|
|
|
2977
|
53
|
|
|
|
|
115
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
2978
|
53
|
50
|
|
|
|
121
|
Parse::RecDescent::_trace(q{<>}, |
2979
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
2980
|
|
|
|
|
|
|
q{TEXT}, |
2981
|
|
|
|
|
|
|
$tracelevel) |
2982
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2983
|
53
|
|
|
|
|
295
|
return undef; |
2984
|
|
|
|
|
|
|
} |
2985
|
41
|
50
|
33
|
|
|
138
|
if (!defined($return) && defined($score)) |
2986
|
|
|
|
|
|
|
{ |
2987
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
2988
|
|
|
|
|
|
|
q{TEXT}, |
2989
|
|
|
|
|
|
|
$tracelevel) |
2990
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
2991
|
0
|
|
|
|
|
0
|
$return = $score_return; |
2992
|
|
|
|
|
|
|
} |
2993
|
41
|
|
|
|
|
71
|
splice @{$thisparser->{errors}}, $err_at; |
|
41
|
|
|
|
|
100
|
|
2994
|
41
|
50
|
|
|
|
86
|
$return = $item[$#item] unless defined $return; |
2995
|
41
|
50
|
|
|
|
92
|
if (defined $::RD_TRACE) |
2996
|
|
|
|
|
|
|
{ |
2997
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
2998
|
|
|
|
|
|
|
$return . q{])}, "", |
2999
|
|
|
|
|
|
|
q{TEXT}, |
3000
|
|
|
|
|
|
|
$tracelevel); |
3001
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
3002
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
3003
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3004
|
|
|
|
|
|
|
, q{TEXT}, |
3005
|
|
|
|
|
|
|
$tracelevel) |
3006
|
|
|
|
|
|
|
} |
3007
|
41
|
|
|
|
|
138
|
$_[1] = $text; |
3008
|
41
|
|
|
|
|
337
|
return $return; |
3009
|
|
|
|
|
|
|
} |
3010
|
|
|
|
|
|
|
|
3011
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
3012
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::addressstruct |
3013
|
|
|
|
|
|
|
{ |
3014
|
188
|
|
|
188
|
|
3334
|
my $thisparser = $_[0]; |
3015
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
1
|
|
|
1
|
|
|
|
|
511
|
|
3016
|
188
|
|
50
|
|
|
475
|
local $tracelevel = ($tracelevel||0)+1; |
3017
|
188
|
|
|
|
|
269
|
$ERRORS = 0; |
3018
|
188
|
|
|
|
|
374
|
my $thisrule = $thisparser->{"rules"}{"addressstruct"}; |
3019
|
|
|
|
|
|
|
|
3020
|
188
|
50
|
|
|
|
376
|
Parse::RecDescent::_trace(q{Trying rule: [addressstruct]}, |
3021
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
3022
|
|
|
|
|
|
|
q{addressstruct}, |
3023
|
|
|
|
|
|
|
$tracelevel) |
3024
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3025
|
|
|
|
|
|
|
|
3026
|
188
|
|
|
|
|
302
|
my $def_at = @{$thisparser->{deferred}}; |
|
188
|
|
|
|
|
333
|
|
3027
|
188
|
|
|
|
|
286
|
my $err_at = @{$thisparser->{errors}}; |
|
188
|
|
|
|
|
306
|
|
3028
|
|
|
|
|
|
|
|
3029
|
188
|
|
|
|
|
539
|
my $score; |
3030
|
|
|
|
|
|
|
my $score_return; |
3031
|
188
|
|
|
|
|
0
|
my $_tok; |
3032
|
188
|
|
|
|
|
278
|
my $return = undef; |
3033
|
188
|
|
|
|
|
252
|
my $_matched=0; |
3034
|
188
|
|
|
|
|
263
|
my $commit=0; |
3035
|
188
|
|
|
|
|
306
|
my @item = (); |
3036
|
188
|
|
|
|
|
330
|
my %item = (); |
3037
|
188
|
|
|
|
|
292
|
my $repeating = $_[2]; |
3038
|
188
|
|
|
|
|
267
|
my $_noactions = $_[3]; |
3039
|
188
|
50
|
|
|
|
377
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
188
|
|
|
|
|
282
|
|
|
188
|
|
|
|
|
319
|
|
3040
|
188
|
|
|
|
|
308
|
my $_itempos = $_[5]; |
3041
|
188
|
50
|
|
|
|
414
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
3042
|
188
|
|
|
|
|
520
|
my $text; |
3043
|
|
|
|
|
|
|
my $lastsep; |
3044
|
188
|
|
|
|
|
0
|
my $current_match; |
3045
|
188
|
|
|
|
|
493
|
my $expectation = new Parse::RecDescent::Expectation(q{'('}); |
3046
|
188
|
|
|
|
|
1311
|
$expectation->at($_[1]); |
3047
|
|
|
|
|
|
|
|
3048
|
188
|
|
|
|
|
773
|
my $thisline; |
3049
|
188
|
|
|
|
|
679
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
3050
|
|
|
|
|
|
|
|
3051
|
|
|
|
|
|
|
|
3052
|
|
|
|
|
|
|
|
3053
|
188
|
|
33
|
|
|
1560
|
while (!$_matched && !$commit) |
3054
|
|
|
|
|
|
|
{ |
3055
|
|
|
|
|
|
|
|
3056
|
188
|
50
|
|
|
|
373
|
Parse::RecDescent::_trace(q{Trying production: ['(' personalname sourceroute mailboxname hostname ')']}, |
3057
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
3058
|
|
|
|
|
|
|
q{addressstruct}, |
3059
|
|
|
|
|
|
|
$tracelevel) |
3060
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3061
|
188
|
|
|
|
|
400
|
my $thisprod = $thisrule->{"prods"}[0]; |
3062
|
188
|
|
|
|
|
342
|
$text = $_[1]; |
3063
|
188
|
|
|
|
|
247
|
my $_savetext; |
3064
|
188
|
|
|
|
|
347
|
@item = (q{addressstruct}); |
3065
|
188
|
|
|
|
|
386
|
%item = (__RULE__ => q{addressstruct}); |
3066
|
188
|
|
|
|
|
311
|
my $repcount = 0; |
3067
|
|
|
|
|
|
|
|
3068
|
|
|
|
|
|
|
|
3069
|
188
|
50
|
|
|
|
389
|
Parse::RecDescent::_trace(q{Trying terminal: ['(']}, |
3070
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3071
|
|
|
|
|
|
|
q{addressstruct}, |
3072
|
|
|
|
|
|
|
$tracelevel) |
3073
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3074
|
188
|
|
|
|
|
353
|
undef $lastsep; |
3075
|
188
|
|
|
|
|
426
|
$expectation->is(q{})->at($text); |
3076
|
|
|
|
|
|
|
|
3077
|
|
|
|
|
|
|
|
3078
|
188
|
50
|
33
|
|
|
2075
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and do { $_tok = "("; 1 } and |
|
188
|
100
|
66
|
|
|
1171
|
|
|
188
|
|
66
|
|
|
363
|
|
|
188
|
|
|
|
|
959
|
|
3079
|
|
|
|
|
|
|
substr($text,0,length($_tok)) eq $_tok and |
3080
|
94
|
|
|
|
|
205
|
do { substr($text,0,length($_tok)) = ""; 1; } |
|
94
|
|
|
|
|
266
|
|
3081
|
|
|
|
|
|
|
) |
3082
|
|
|
|
|
|
|
{ |
3083
|
94
|
50
|
|
|
|
345
|
$text = $lastsep . $text if defined $lastsep; |
3084
|
|
|
|
|
|
|
|
3085
|
94
|
|
|
|
|
318
|
$expectation->failed(); |
3086
|
94
|
50
|
|
|
|
403
|
Parse::RecDescent::_trace(q{<>}, |
3087
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
3088
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3089
|
94
|
|
|
|
|
198
|
last; |
3090
|
|
|
|
|
|
|
} |
3091
|
94
|
50
|
|
|
|
236
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
3092
|
|
|
|
|
|
|
. $_tok . q{])}, |
3093
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
3094
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3095
|
94
|
|
|
|
|
239
|
push @item, $item{__STRING1__}=$_tok; |
3096
|
|
|
|
|
|
|
|
3097
|
|
|
|
|
|
|
|
3098
|
94
|
50
|
|
|
|
220
|
Parse::RecDescent::_trace(q{Trying subrule: [personalname]}, |
3099
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3100
|
|
|
|
|
|
|
q{addressstruct}, |
3101
|
|
|
|
|
|
|
$tracelevel) |
3102
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3103
|
1
|
|
|
1
|
|
17
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
170
|
|
|
94
|
|
|
|
|
147
|
|
3104
|
94
|
|
|
|
|
240
|
$expectation->is(q{personalname})->at($text); |
3105
|
94
|
50
|
|
94
|
|
1018
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::personalname($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
94
|
|
|
|
|
191
|
|
3106
|
|
|
|
|
|
|
{ |
3107
|
|
|
|
|
|
|
|
3108
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
3109
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3110
|
|
|
|
|
|
|
q{addressstruct}, |
3111
|
|
|
|
|
|
|
$tracelevel) |
3112
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3113
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
3114
|
0
|
|
|
|
|
0
|
last; |
3115
|
|
|
|
|
|
|
} |
3116
|
94
|
50
|
|
|
|
312
|
Parse::RecDescent::_trace(q{>>Matched subrule: [personalname]<< (return value: [} |
3117
|
|
|
|
|
|
|
. $_tok . q{]}, |
3118
|
|
|
|
|
|
|
|
3119
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3120
|
|
|
|
|
|
|
q{addressstruct}, |
3121
|
|
|
|
|
|
|
$tracelevel) |
3122
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3123
|
94
|
|
|
|
|
240
|
$item{q{personalname}} = $_tok; |
3124
|
94
|
|
|
|
|
166
|
push @item, $_tok; |
3125
|
|
|
|
|
|
|
|
3126
|
|
|
|
|
|
|
} |
3127
|
|
|
|
|
|
|
|
3128
|
94
|
50
|
|
|
|
188
|
Parse::RecDescent::_trace(q{Trying subrule: [sourceroute]}, |
3129
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3130
|
|
|
|
|
|
|
q{addressstruct}, |
3131
|
|
|
|
|
|
|
$tracelevel) |
3132
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3133
|
1
|
|
|
1
|
|
7
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
194
|
|
|
94
|
|
|
|
|
146
|
|
3134
|
94
|
|
|
|
|
327
|
$expectation->is(q{sourceroute})->at($text); |
3135
|
94
|
50
|
|
94
|
|
1048
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::sourceroute($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
94
|
|
|
|
|
200
|
|
3136
|
|
|
|
|
|
|
{ |
3137
|
|
|
|
|
|
|
|
3138
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
3139
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3140
|
|
|
|
|
|
|
q{addressstruct}, |
3141
|
|
|
|
|
|
|
$tracelevel) |
3142
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3143
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
3144
|
0
|
|
|
|
|
0
|
last; |
3145
|
|
|
|
|
|
|
} |
3146
|
94
|
50
|
|
|
|
301
|
Parse::RecDescent::_trace(q{>>Matched subrule: [sourceroute]<< (return value: [} |
3147
|
|
|
|
|
|
|
. $_tok . q{]}, |
3148
|
|
|
|
|
|
|
|
3149
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3150
|
|
|
|
|
|
|
q{addressstruct}, |
3151
|
|
|
|
|
|
|
$tracelevel) |
3152
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3153
|
94
|
|
|
|
|
206
|
$item{q{sourceroute}} = $_tok; |
3154
|
94
|
|
|
|
|
171
|
push @item, $_tok; |
3155
|
|
|
|
|
|
|
|
3156
|
|
|
|
|
|
|
} |
3157
|
|
|
|
|
|
|
|
3158
|
94
|
50
|
|
|
|
183
|
Parse::RecDescent::_trace(q{Trying subrule: [mailboxname]}, |
3159
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3160
|
|
|
|
|
|
|
q{addressstruct}, |
3161
|
|
|
|
|
|
|
$tracelevel) |
3162
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3163
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
168
|
|
|
94
|
|
|
|
|
159
|
|
3164
|
94
|
|
|
|
|
446
|
$expectation->is(q{mailboxname})->at($text); |
3165
|
94
|
50
|
|
94
|
|
957
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::mailboxname($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
94
|
|
|
|
|
185
|
|
3166
|
|
|
|
|
|
|
{ |
3167
|
|
|
|
|
|
|
|
3168
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
3169
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3170
|
|
|
|
|
|
|
q{addressstruct}, |
3171
|
|
|
|
|
|
|
$tracelevel) |
3172
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3173
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
3174
|
0
|
|
|
|
|
0
|
last; |
3175
|
|
|
|
|
|
|
} |
3176
|
94
|
50
|
|
|
|
293
|
Parse::RecDescent::_trace(q{>>Matched subrule: [mailboxname]<< (return value: [} |
3177
|
|
|
|
|
|
|
. $_tok . q{]}, |
3178
|
|
|
|
|
|
|
|
3179
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3180
|
|
|
|
|
|
|
q{addressstruct}, |
3181
|
|
|
|
|
|
|
$tracelevel) |
3182
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3183
|
94
|
|
|
|
|
208
|
$item{q{mailboxname}} = $_tok; |
3184
|
94
|
|
|
|
|
271
|
push @item, $_tok; |
3185
|
|
|
|
|
|
|
|
3186
|
|
|
|
|
|
|
} |
3187
|
|
|
|
|
|
|
|
3188
|
94
|
50
|
|
|
|
196
|
Parse::RecDescent::_trace(q{Trying subrule: [hostname]}, |
3189
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3190
|
|
|
|
|
|
|
q{addressstruct}, |
3191
|
|
|
|
|
|
|
$tracelevel) |
3192
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3193
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
827
|
|
|
94
|
|
|
|
|
461
|
|
3194
|
94
|
|
|
|
|
301
|
$expectation->is(q{hostname})->at($text); |
3195
|
94
|
50
|
|
94
|
|
1078
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::hostname($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
94
|
|
|
|
|
243
|
|
3196
|
|
|
|
|
|
|
{ |
3197
|
|
|
|
|
|
|
|
3198
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
3199
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3200
|
|
|
|
|
|
|
q{addressstruct}, |
3201
|
|
|
|
|
|
|
$tracelevel) |
3202
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3203
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
3204
|
0
|
|
|
|
|
0
|
last; |
3205
|
|
|
|
|
|
|
} |
3206
|
94
|
50
|
|
|
|
304
|
Parse::RecDescent::_trace(q{>>Matched subrule: [hostname]<< (return value: [} |
3207
|
|
|
|
|
|
|
. $_tok . q{]}, |
3208
|
|
|
|
|
|
|
|
3209
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3210
|
|
|
|
|
|
|
q{addressstruct}, |
3211
|
|
|
|
|
|
|
$tracelevel) |
3212
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3213
|
94
|
|
|
|
|
220
|
$item{q{hostname}} = $_tok; |
3214
|
94
|
|
|
|
|
174
|
push @item, $_tok; |
3215
|
|
|
|
|
|
|
|
3216
|
|
|
|
|
|
|
} |
3217
|
|
|
|
|
|
|
|
3218
|
94
|
50
|
|
|
|
201
|
Parse::RecDescent::_trace(q{Trying terminal: [')']}, |
3219
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3220
|
|
|
|
|
|
|
q{addressstruct}, |
3221
|
|
|
|
|
|
|
$tracelevel) |
3222
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3223
|
94
|
|
|
|
|
147
|
undef $lastsep; |
3224
|
94
|
|
|
|
|
290
|
$expectation->is(q{')'})->at($text); |
3225
|
|
|
|
|
|
|
|
3226
|
|
|
|
|
|
|
|
3227
|
94
|
50
|
33
|
|
|
1161
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and do { $_tok = ")"; 1 } and |
|
94
|
50
|
33
|
|
|
680
|
|
|
94
|
|
33
|
|
|
224
|
|
|
94
|
|
|
|
|
460
|
|
3228
|
|
|
|
|
|
|
substr($text,0,length($_tok)) eq $_tok and |
3229
|
94
|
|
|
|
|
189
|
do { substr($text,0,length($_tok)) = ""; 1; } |
|
94
|
|
|
|
|
281
|
|
3230
|
|
|
|
|
|
|
) |
3231
|
|
|
|
|
|
|
{ |
3232
|
0
|
0
|
|
|
|
0
|
$text = $lastsep . $text if defined $lastsep; |
3233
|
|
|
|
|
|
|
|
3234
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
3235
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
3236
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
3237
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3238
|
0
|
|
|
|
|
0
|
last; |
3239
|
|
|
|
|
|
|
} |
3240
|
94
|
50
|
|
|
|
250
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
3241
|
|
|
|
|
|
|
. $_tok . q{])}, |
3242
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
3243
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3244
|
94
|
|
|
|
|
230
|
push @item, $item{__STRING2__}=$_tok; |
3245
|
|
|
|
|
|
|
|
3246
|
|
|
|
|
|
|
|
3247
|
94
|
50
|
|
|
|
467
|
Parse::RecDescent::_trace(q{Trying action}, |
3248
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3249
|
|
|
|
|
|
|
q{addressstruct}, |
3250
|
|
|
|
|
|
|
$tracelevel) |
3251
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3252
|
|
|
|
|
|
|
|
3253
|
|
|
|
|
|
|
|
3254
|
94
|
50
|
|
|
|
198
|
$_tok = ($_noactions) ? 0 : do { bless { personalname => $item{personalname} |
3255
|
|
|
|
|
|
|
, sourceroute => $item{sourceroute} |
3256
|
|
|
|
|
|
|
, mailboxname => $item{mailboxname} |
3257
|
|
|
|
|
|
|
, hostname => $item{hostname} |
3258
|
94
|
|
|
|
|
471
|
}, 'Mail::IMAPClient::BodyStructure::Address'; |
3259
|
|
|
|
|
|
|
}; |
3260
|
94
|
50
|
|
|
|
262
|
unless (defined $_tok) |
3261
|
|
|
|
|
|
|
{ |
3262
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
3263
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3264
|
0
|
|
|
|
|
0
|
last; |
3265
|
|
|
|
|
|
|
} |
3266
|
94
|
50
|
|
|
|
208
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
3267
|
|
|
|
|
|
|
. $_tok . q{])}, |
3268
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
3269
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3270
|
94
|
|
|
|
|
164
|
push @item, $_tok; |
3271
|
94
|
|
|
|
|
163
|
$item{__ACTION1__}=$_tok; |
3272
|
|
|
|
|
|
|
|
3273
|
|
|
|
|
|
|
|
3274
|
94
|
50
|
|
|
|
165
|
Parse::RecDescent::_trace(q{>>Matched production: ['(' personalname sourceroute mailboxname hostname ')']<<}, |
3275
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3276
|
|
|
|
|
|
|
q{addressstruct}, |
3277
|
|
|
|
|
|
|
$tracelevel) |
3278
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3279
|
|
|
|
|
|
|
|
3280
|
|
|
|
|
|
|
|
3281
|
|
|
|
|
|
|
|
3282
|
94
|
|
|
|
|
136
|
$_matched = 1; |
3283
|
94
|
|
|
|
|
201
|
last; |
3284
|
|
|
|
|
|
|
} |
3285
|
|
|
|
|
|
|
|
3286
|
|
|
|
|
|
|
splice |
3287
|
188
|
100
|
|
|
|
403
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
94
|
|
|
|
|
216
|
|
3288
|
|
|
|
|
|
|
|
3289
|
188
|
100
|
66
|
|
|
564
|
unless ( $_matched || defined($score) ) |
3290
|
|
|
|
|
|
|
{ |
3291
|
94
|
|
|
|
|
141
|
splice @{$thisparser->{deferred}}, $def_at; |
|
94
|
|
|
|
|
175
|
|
3292
|
|
|
|
|
|
|
|
3293
|
|
|
|
|
|
|
|
3294
|
94
|
|
|
|
|
171
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
3295
|
94
|
50
|
|
|
|
193
|
Parse::RecDescent::_trace(q{<>}, |
3296
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
3297
|
|
|
|
|
|
|
q{addressstruct}, |
3298
|
|
|
|
|
|
|
$tracelevel) |
3299
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3300
|
94
|
|
|
|
|
444
|
return undef; |
3301
|
|
|
|
|
|
|
} |
3302
|
94
|
50
|
33
|
|
|
312
|
if (!defined($return) && defined($score)) |
3303
|
|
|
|
|
|
|
{ |
3304
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
3305
|
|
|
|
|
|
|
q{addressstruct}, |
3306
|
|
|
|
|
|
|
$tracelevel) |
3307
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3308
|
0
|
|
|
|
|
0
|
$return = $score_return; |
3309
|
|
|
|
|
|
|
} |
3310
|
94
|
|
|
|
|
170
|
splice @{$thisparser->{errors}}, $err_at; |
|
94
|
|
|
|
|
228
|
|
3311
|
94
|
50
|
|
|
|
222
|
$return = $item[$#item] unless defined $return; |
3312
|
94
|
50
|
|
|
|
190
|
if (defined $::RD_TRACE) |
3313
|
|
|
|
|
|
|
{ |
3314
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
3315
|
|
|
|
|
|
|
$return . q{])}, "", |
3316
|
|
|
|
|
|
|
q{addressstruct}, |
3317
|
|
|
|
|
|
|
$tracelevel); |
3318
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
3319
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
3320
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3321
|
|
|
|
|
|
|
, q{addressstruct}, |
3322
|
|
|
|
|
|
|
$tracelevel) |
3323
|
|
|
|
|
|
|
} |
3324
|
94
|
|
|
|
|
279
|
$_[1] = $text; |
3325
|
94
|
|
|
|
|
639
|
return $return; |
3326
|
|
|
|
|
|
|
} |
3327
|
|
|
|
|
|
|
|
3328
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
3329
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::basicfields |
3330
|
|
|
|
|
|
|
{ |
3331
|
53
|
|
|
53
|
|
97
|
my $thisparser = $_[0]; |
3332
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
1
|
|
|
1
|
|
|
|
|
357
|
|
3333
|
53
|
|
50
|
|
|
172
|
local $tracelevel = ($tracelevel||0)+1; |
3334
|
53
|
|
|
|
|
85
|
$ERRORS = 0; |
3335
|
53
|
|
|
|
|
130
|
my $thisrule = $thisparser->{"rules"}{"basicfields"}; |
3336
|
|
|
|
|
|
|
|
3337
|
53
|
50
|
|
|
|
113
|
Parse::RecDescent::_trace(q{Trying rule: [basicfields]}, |
3338
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
3339
|
|
|
|
|
|
|
q{basicfields}, |
3340
|
|
|
|
|
|
|
$tracelevel) |
3341
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3342
|
|
|
|
|
|
|
|
3343
|
53
|
|
|
|
|
104
|
my $def_at = @{$thisparser->{deferred}}; |
|
53
|
|
|
|
|
107
|
|
3344
|
53
|
|
|
|
|
90
|
my $err_at = @{$thisparser->{errors}}; |
|
53
|
|
|
|
|
124
|
|
3345
|
|
|
|
|
|
|
|
3346
|
53
|
|
|
|
|
145
|
my $score; |
3347
|
|
|
|
|
|
|
my $score_return; |
3348
|
53
|
|
|
|
|
0
|
my $_tok; |
3349
|
53
|
|
|
|
|
86
|
my $return = undef; |
3350
|
53
|
|
|
|
|
93
|
my $_matched=0; |
3351
|
53
|
|
|
|
|
81
|
my $commit=0; |
3352
|
53
|
|
|
|
|
105
|
my @item = (); |
3353
|
53
|
|
|
|
|
105
|
my %item = (); |
3354
|
53
|
|
|
|
|
90
|
my $repeating = $_[2]; |
3355
|
53
|
|
|
|
|
95
|
my $_noactions = $_[3]; |
3356
|
53
|
50
|
|
|
|
117
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
53
|
|
|
|
|
68
|
|
|
53
|
|
|
|
|
99
|
|
3357
|
53
|
|
|
|
|
83
|
my $_itempos = $_[5]; |
3358
|
53
|
50
|
|
|
|
133
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
3359
|
53
|
|
|
|
|
163
|
my $text; |
3360
|
|
|
|
|
|
|
my $lastsep; |
3361
|
53
|
|
|
|
|
0
|
my $current_match; |
3362
|
53
|
|
|
|
|
145
|
my $expectation = new Parse::RecDescent::Expectation(q{bodysubtype}); |
3363
|
53
|
|
|
|
|
383
|
$expectation->at($_[1]); |
3364
|
|
|
|
|
|
|
|
3365
|
53
|
|
|
|
|
210
|
my $thisline; |
3366
|
53
|
|
|
|
|
192
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
3367
|
|
|
|
|
|
|
|
3368
|
|
|
|
|
|
|
|
3369
|
|
|
|
|
|
|
|
3370
|
53
|
|
33
|
|
|
472
|
while (!$_matched && !$commit) |
3371
|
|
|
|
|
|
|
{ |
3372
|
|
|
|
|
|
|
|
3373
|
53
|
50
|
|
|
|
121
|
Parse::RecDescent::_trace(q{Trying production: [bodysubtype bodyparms bodyid bodydesc bodyenc bodysize]}, |
3374
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
3375
|
|
|
|
|
|
|
q{basicfields}, |
3376
|
|
|
|
|
|
|
$tracelevel) |
3377
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3378
|
53
|
|
|
|
|
144
|
my $thisprod = $thisrule->{"prods"}[0]; |
3379
|
53
|
|
|
|
|
91
|
$text = $_[1]; |
3380
|
53
|
|
|
|
|
74
|
my $_savetext; |
3381
|
53
|
|
|
|
|
107
|
@item = (q{basicfields}); |
3382
|
53
|
|
|
|
|
115
|
%item = (__RULE__ => q{basicfields}); |
3383
|
53
|
|
|
|
|
88
|
my $repcount = 0; |
3384
|
|
|
|
|
|
|
|
3385
|
|
|
|
|
|
|
|
3386
|
53
|
50
|
|
|
|
122
|
Parse::RecDescent::_trace(q{Trying subrule: [bodysubtype]}, |
3387
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3388
|
|
|
|
|
|
|
q{basicfields}, |
3389
|
|
|
|
|
|
|
$tracelevel) |
3390
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3391
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
1258
|
|
|
53
|
|
|
|
|
77
|
|
3392
|
53
|
|
|
|
|
136
|
$expectation->is(q{})->at($text); |
3393
|
53
|
50
|
|
53
|
|
527
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodysubtype($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
53
|
|
|
|
|
105
|
|
3394
|
|
|
|
|
|
|
{ |
3395
|
|
|
|
|
|
|
|
3396
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
3397
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3398
|
|
|
|
|
|
|
q{basicfields}, |
3399
|
|
|
|
|
|
|
$tracelevel) |
3400
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3401
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
3402
|
0
|
|
|
|
|
0
|
last; |
3403
|
|
|
|
|
|
|
} |
3404
|
53
|
50
|
|
|
|
204
|
Parse::RecDescent::_trace(q{>>Matched subrule: [bodysubtype]<< (return value: [} |
3405
|
|
|
|
|
|
|
. $_tok . q{]}, |
3406
|
|
|
|
|
|
|
|
3407
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3408
|
|
|
|
|
|
|
q{basicfields}, |
3409
|
|
|
|
|
|
|
$tracelevel) |
3410
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3411
|
53
|
|
|
|
|
122
|
$item{q{bodysubtype}} = $_tok; |
3412
|
53
|
|
|
|
|
107
|
push @item, $_tok; |
3413
|
|
|
|
|
|
|
|
3414
|
|
|
|
|
|
|
} |
3415
|
|
|
|
|
|
|
|
3416
|
53
|
50
|
|
|
|
454
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodyparms]}, |
3417
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3418
|
|
|
|
|
|
|
q{basicfields}, |
3419
|
|
|
|
|
|
|
$tracelevel) |
3420
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3421
|
53
|
|
|
|
|
171
|
$expectation->is(q{bodyparms})->at($text); |
3422
|
|
|
|
|
|
|
|
3423
|
53
|
50
|
|
53
|
|
602
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyparms, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
53
|
|
|
|
|
109
|
|
3424
|
|
|
|
|
|
|
{ |
3425
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
3426
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3427
|
|
|
|
|
|
|
q{basicfields}, |
3428
|
|
|
|
|
|
|
$tracelevel) |
3429
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3430
|
0
|
|
|
|
|
0
|
last; |
3431
|
|
|
|
|
|
|
} |
3432
|
53
|
50
|
|
|
|
969
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodyparms]<< (} |
3433
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
3434
|
|
|
|
|
|
|
|
3435
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3436
|
|
|
|
|
|
|
q{basicfields}, |
3437
|
|
|
|
|
|
|
$tracelevel) |
3438
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3439
|
53
|
|
|
|
|
115
|
$item{q{bodyparms(?)}} = $_tok; |
3440
|
53
|
|
|
|
|
105
|
push @item, $_tok; |
3441
|
|
|
|
|
|
|
|
3442
|
|
|
|
|
|
|
|
3443
|
|
|
|
|
|
|
|
3444
|
53
|
50
|
|
|
|
118
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodyid]}, |
3445
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3446
|
|
|
|
|
|
|
q{basicfields}, |
3447
|
|
|
|
|
|
|
$tracelevel) |
3448
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3449
|
53
|
|
|
|
|
150
|
$expectation->is(q{bodyid})->at($text); |
3450
|
|
|
|
|
|
|
|
3451
|
53
|
50
|
|
53
|
|
581
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyid, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
53
|
|
|
|
|
120
|
|
3452
|
|
|
|
|
|
|
{ |
3453
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
3454
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3455
|
|
|
|
|
|
|
q{basicfields}, |
3456
|
|
|
|
|
|
|
$tracelevel) |
3457
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3458
|
0
|
|
|
|
|
0
|
last; |
3459
|
|
|
|
|
|
|
} |
3460
|
53
|
50
|
|
|
|
1002
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodyid]<< (} |
3461
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
3462
|
|
|
|
|
|
|
|
3463
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3464
|
|
|
|
|
|
|
q{basicfields}, |
3465
|
|
|
|
|
|
|
$tracelevel) |
3466
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3467
|
53
|
|
|
|
|
117
|
$item{q{bodyid(?)}} = $_tok; |
3468
|
53
|
|
|
|
|
99
|
push @item, $_tok; |
3469
|
|
|
|
|
|
|
|
3470
|
|
|
|
|
|
|
|
3471
|
|
|
|
|
|
|
|
3472
|
53
|
50
|
|
|
|
103
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodydesc]}, |
3473
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3474
|
|
|
|
|
|
|
q{basicfields}, |
3475
|
|
|
|
|
|
|
$tracelevel) |
3476
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3477
|
53
|
|
|
|
|
155
|
$expectation->is(q{bodydesc})->at($text); |
3478
|
|
|
|
|
|
|
|
3479
|
53
|
50
|
|
53
|
|
581
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodydesc, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
53
|
|
|
|
|
106
|
|
3480
|
|
|
|
|
|
|
{ |
3481
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
3482
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3483
|
|
|
|
|
|
|
q{basicfields}, |
3484
|
|
|
|
|
|
|
$tracelevel) |
3485
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3486
|
0
|
|
|
|
|
0
|
last; |
3487
|
|
|
|
|
|
|
} |
3488
|
53
|
50
|
|
|
|
876
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodydesc]<< (} |
3489
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
3490
|
|
|
|
|
|
|
|
3491
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3492
|
|
|
|
|
|
|
q{basicfields}, |
3493
|
|
|
|
|
|
|
$tracelevel) |
3494
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3495
|
53
|
|
|
|
|
117
|
$item{q{bodydesc(?)}} = $_tok; |
3496
|
53
|
|
|
|
|
96
|
push @item, $_tok; |
3497
|
|
|
|
|
|
|
|
3498
|
|
|
|
|
|
|
|
3499
|
|
|
|
|
|
|
|
3500
|
53
|
50
|
|
|
|
107
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodyenc]}, |
3501
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3502
|
|
|
|
|
|
|
q{basicfields}, |
3503
|
|
|
|
|
|
|
$tracelevel) |
3504
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3505
|
53
|
|
|
|
|
151
|
$expectation->is(q{bodyenc})->at($text); |
3506
|
|
|
|
|
|
|
|
3507
|
53
|
50
|
|
53
|
|
558
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyenc, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
53
|
|
|
|
|
115
|
|
3508
|
|
|
|
|
|
|
{ |
3509
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
3510
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3511
|
|
|
|
|
|
|
q{basicfields}, |
3512
|
|
|
|
|
|
|
$tracelevel) |
3513
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3514
|
0
|
|
|
|
|
0
|
last; |
3515
|
|
|
|
|
|
|
} |
3516
|
53
|
50
|
|
|
|
898
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodyenc]<< (} |
3517
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
3518
|
|
|
|
|
|
|
|
3519
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3520
|
|
|
|
|
|
|
q{basicfields}, |
3521
|
|
|
|
|
|
|
$tracelevel) |
3522
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3523
|
53
|
|
|
|
|
136
|
$item{q{bodyenc(?)}} = $_tok; |
3524
|
53
|
|
|
|
|
111
|
push @item, $_tok; |
3525
|
|
|
|
|
|
|
|
3526
|
|
|
|
|
|
|
|
3527
|
|
|
|
|
|
|
|
3528
|
53
|
50
|
|
|
|
108
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodysize]}, |
3529
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3530
|
|
|
|
|
|
|
q{basicfields}, |
3531
|
|
|
|
|
|
|
$tracelevel) |
3532
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3533
|
53
|
|
|
|
|
156
|
$expectation->is(q{bodysize})->at($text); |
3534
|
|
|
|
|
|
|
|
3535
|
53
|
50
|
|
53
|
|
578
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodysize, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
53
|
|
|
|
|
107
|
|
3536
|
|
|
|
|
|
|
{ |
3537
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
3538
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3539
|
|
|
|
|
|
|
q{basicfields}, |
3540
|
|
|
|
|
|
|
$tracelevel) |
3541
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3542
|
0
|
|
|
|
|
0
|
last; |
3543
|
|
|
|
|
|
|
} |
3544
|
53
|
50
|
|
|
|
885
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodysize]<< (} |
3545
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
3546
|
|
|
|
|
|
|
|
3547
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3548
|
|
|
|
|
|
|
q{basicfields}, |
3549
|
|
|
|
|
|
|
$tracelevel) |
3550
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3551
|
53
|
|
|
|
|
151
|
$item{q{bodysize(?)}} = $_tok; |
3552
|
53
|
|
|
|
|
98
|
push @item, $_tok; |
3553
|
|
|
|
|
|
|
|
3554
|
|
|
|
|
|
|
|
3555
|
|
|
|
|
|
|
|
3556
|
53
|
50
|
|
|
|
117
|
Parse::RecDescent::_trace(q{Trying action}, |
3557
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3558
|
|
|
|
|
|
|
q{basicfields}, |
3559
|
|
|
|
|
|
|
$tracelevel) |
3560
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3561
|
|
|
|
|
|
|
|
3562
|
|
|
|
|
|
|
|
3563
|
53
|
50
|
|
|
|
149
|
$_tok = ($_noactions) ? 0 : do { $return = { bodysubtype => $item{bodysubtype} }; |
|
53
|
|
|
|
|
142
|
|
3564
|
53
|
|
|
|
|
191
|
take_optional_items($return, \%item, |
3565
|
|
|
|
|
|
|
qw/bodyparms bodyid bodydesc bodyenc bodysize/); |
3566
|
53
|
|
|
|
|
124
|
1; |
3567
|
|
|
|
|
|
|
}; |
3568
|
53
|
50
|
|
|
|
148
|
unless (defined $_tok) |
3569
|
|
|
|
|
|
|
{ |
3570
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
3571
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3572
|
0
|
|
|
|
|
0
|
last; |
3573
|
|
|
|
|
|
|
} |
3574
|
53
|
50
|
|
|
|
146
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
3575
|
|
|
|
|
|
|
. $_tok . q{])}, |
3576
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
3577
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3578
|
53
|
|
|
|
|
99
|
push @item, $_tok; |
3579
|
53
|
|
|
|
|
109
|
$item{__ACTION1__}=$_tok; |
3580
|
|
|
|
|
|
|
|
3581
|
|
|
|
|
|
|
|
3582
|
53
|
50
|
|
|
|
116
|
Parse::RecDescent::_trace(q{>>Matched production: [bodysubtype bodyparms bodyid bodydesc bodyenc bodysize]<<}, |
3583
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3584
|
|
|
|
|
|
|
q{basicfields}, |
3585
|
|
|
|
|
|
|
$tracelevel) |
3586
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3587
|
|
|
|
|
|
|
|
3588
|
|
|
|
|
|
|
|
3589
|
|
|
|
|
|
|
|
3590
|
53
|
|
|
|
|
78
|
$_matched = 1; |
3591
|
53
|
|
|
|
|
101
|
last; |
3592
|
|
|
|
|
|
|
} |
3593
|
|
|
|
|
|
|
|
3594
|
|
|
|
|
|
|
splice |
3595
|
53
|
50
|
|
|
|
127
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
3596
|
|
|
|
|
|
|
|
3597
|
53
|
50
|
33
|
|
|
125
|
unless ( $_matched || defined($score) ) |
3598
|
|
|
|
|
|
|
{ |
3599
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
3600
|
|
|
|
|
|
|
|
3601
|
|
|
|
|
|
|
|
3602
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
3603
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
3604
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
3605
|
|
|
|
|
|
|
q{basicfields}, |
3606
|
|
|
|
|
|
|
$tracelevel) |
3607
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3608
|
0
|
|
|
|
|
0
|
return undef; |
3609
|
|
|
|
|
|
|
} |
3610
|
53
|
50
|
33
|
|
|
158
|
if (!defined($return) && defined($score)) |
3611
|
|
|
|
|
|
|
{ |
3612
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
3613
|
|
|
|
|
|
|
q{basicfields}, |
3614
|
|
|
|
|
|
|
$tracelevel) |
3615
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3616
|
0
|
|
|
|
|
0
|
$return = $score_return; |
3617
|
|
|
|
|
|
|
} |
3618
|
53
|
|
|
|
|
80
|
splice @{$thisparser->{errors}}, $err_at; |
|
53
|
|
|
|
|
144
|
|
3619
|
53
|
50
|
|
|
|
136
|
$return = $item[$#item] unless defined $return; |
3620
|
53
|
50
|
|
|
|
133
|
if (defined $::RD_TRACE) |
3621
|
|
|
|
|
|
|
{ |
3622
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
3623
|
|
|
|
|
|
|
$return . q{])}, "", |
3624
|
|
|
|
|
|
|
q{basicfields}, |
3625
|
|
|
|
|
|
|
$tracelevel); |
3626
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
3627
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
3628
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3629
|
|
|
|
|
|
|
, q{basicfields}, |
3630
|
|
|
|
|
|
|
$tracelevel) |
3631
|
|
|
|
|
|
|
} |
3632
|
53
|
|
|
|
|
100
|
$_[1] = $text; |
3633
|
53
|
|
|
|
|
399
|
return $return; |
3634
|
|
|
|
|
|
|
} |
3635
|
|
|
|
|
|
|
|
3636
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
3637
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bcc |
3638
|
|
|
|
|
|
|
{ |
3639
|
24
|
|
|
24
|
|
64
|
my $thisparser = $_[0]; |
3640
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
367
|
|
3641
|
24
|
|
50
|
|
|
70
|
local $tracelevel = ($tracelevel||0)+1; |
3642
|
24
|
|
|
|
|
55
|
$ERRORS = 0; |
3643
|
24
|
|
|
|
|
62
|
my $thisrule = $thisparser->{"rules"}{"bcc"}; |
3644
|
|
|
|
|
|
|
|
3645
|
24
|
50
|
|
|
|
64
|
Parse::RecDescent::_trace(q{Trying rule: [bcc]}, |
3646
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
3647
|
|
|
|
|
|
|
q{bcc}, |
3648
|
|
|
|
|
|
|
$tracelevel) |
3649
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3650
|
|
|
|
|
|
|
|
3651
|
24
|
|
|
|
|
46
|
my $def_at = @{$thisparser->{deferred}}; |
|
24
|
|
|
|
|
58
|
|
3652
|
24
|
|
|
|
|
41
|
my $err_at = @{$thisparser->{errors}}; |
|
24
|
|
|
|
|
57
|
|
3653
|
|
|
|
|
|
|
|
3654
|
24
|
|
|
|
|
83
|
my $score; |
3655
|
|
|
|
|
|
|
my $score_return; |
3656
|
24
|
|
|
|
|
0
|
my $_tok; |
3657
|
24
|
|
|
|
|
42
|
my $return = undef; |
3658
|
24
|
|
|
|
|
43
|
my $_matched=0; |
3659
|
24
|
|
|
|
|
42
|
my $commit=0; |
3660
|
24
|
|
|
|
|
59
|
my @item = (); |
3661
|
24
|
|
|
|
|
45
|
my %item = (); |
3662
|
24
|
|
|
|
|
78
|
my $repeating = $_[2]; |
3663
|
24
|
|
|
|
|
79
|
my $_noactions = $_[3]; |
3664
|
24
|
50
|
|
|
|
73
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
24
|
|
|
|
|
31
|
|
|
24
|
|
|
|
|
47
|
|
3665
|
24
|
|
|
|
|
43
|
my $_itempos = $_[5]; |
3666
|
24
|
50
|
|
|
|
82
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
3667
|
24
|
|
|
|
|
72
|
my $text; |
3668
|
|
|
|
|
|
|
my $lastsep; |
3669
|
24
|
|
|
|
|
0
|
my $current_match; |
3670
|
24
|
|
|
|
|
72
|
my $expectation = new Parse::RecDescent::Expectation(q{ADDRESSES}); |
3671
|
24
|
|
|
|
|
174
|
$expectation->at($_[1]); |
3672
|
|
|
|
|
|
|
|
3673
|
24
|
|
|
|
|
101
|
my $thisline; |
3674
|
24
|
|
|
|
|
101
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
3675
|
|
|
|
|
|
|
|
3676
|
|
|
|
|
|
|
|
3677
|
|
|
|
|
|
|
|
3678
|
24
|
|
33
|
|
|
234
|
while (!$_matched && !$commit) |
3679
|
|
|
|
|
|
|
{ |
3680
|
|
|
|
|
|
|
|
3681
|
24
|
50
|
|
|
|
65
|
Parse::RecDescent::_trace(q{Trying production: [ADDRESSES]}, |
3682
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
3683
|
|
|
|
|
|
|
q{bcc}, |
3684
|
|
|
|
|
|
|
$tracelevel) |
3685
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3686
|
24
|
|
|
|
|
66
|
my $thisprod = $thisrule->{"prods"}[0]; |
3687
|
24
|
|
|
|
|
46
|
$text = $_[1]; |
3688
|
24
|
|
|
|
|
47
|
my $_savetext; |
3689
|
24
|
|
|
|
|
52
|
@item = (q{bcc}); |
3690
|
24
|
|
|
|
|
59
|
%item = (__RULE__ => q{bcc}); |
3691
|
24
|
|
|
|
|
36
|
my $repcount = 0; |
3692
|
|
|
|
|
|
|
|
3693
|
|
|
|
|
|
|
|
3694
|
24
|
50
|
|
|
|
55
|
Parse::RecDescent::_trace(q{Trying subrule: [ADDRESSES]}, |
3695
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3696
|
|
|
|
|
|
|
q{bcc}, |
3697
|
|
|
|
|
|
|
$tracelevel) |
3698
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3699
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
453
|
|
|
24
|
|
|
|
|
36
|
|
3700
|
24
|
|
|
|
|
58
|
$expectation->is(q{})->at($text); |
3701
|
24
|
50
|
|
24
|
|
260
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::ADDRESSES($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
52
|
|
3702
|
|
|
|
|
|
|
{ |
3703
|
|
|
|
|
|
|
|
3704
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
3705
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3706
|
|
|
|
|
|
|
q{bcc}, |
3707
|
|
|
|
|
|
|
$tracelevel) |
3708
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3709
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
3710
|
0
|
|
|
|
|
0
|
last; |
3711
|
|
|
|
|
|
|
} |
3712
|
24
|
50
|
|
|
|
95
|
Parse::RecDescent::_trace(q{>>Matched subrule: [ADDRESSES]<< (return value: [} |
3713
|
|
|
|
|
|
|
. $_tok . q{]}, |
3714
|
|
|
|
|
|
|
|
3715
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3716
|
|
|
|
|
|
|
q{bcc}, |
3717
|
|
|
|
|
|
|
$tracelevel) |
3718
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3719
|
24
|
|
|
|
|
59
|
$item{q{ADDRESSES}} = $_tok; |
3720
|
24
|
|
|
|
|
45
|
push @item, $_tok; |
3721
|
|
|
|
|
|
|
|
3722
|
|
|
|
|
|
|
} |
3723
|
|
|
|
|
|
|
|
3724
|
24
|
50
|
|
|
|
51
|
Parse::RecDescent::_trace(q{>>Matched production: [ADDRESSES]<<}, |
3725
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3726
|
|
|
|
|
|
|
q{bcc}, |
3727
|
|
|
|
|
|
|
$tracelevel) |
3728
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3729
|
|
|
|
|
|
|
|
3730
|
|
|
|
|
|
|
|
3731
|
|
|
|
|
|
|
|
3732
|
24
|
|
|
|
|
54
|
$_matched = 1; |
3733
|
24
|
|
|
|
|
53
|
last; |
3734
|
|
|
|
|
|
|
} |
3735
|
|
|
|
|
|
|
|
3736
|
|
|
|
|
|
|
splice |
3737
|
24
|
50
|
|
|
|
65
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
3738
|
|
|
|
|
|
|
|
3739
|
24
|
50
|
33
|
|
|
68
|
unless ( $_matched || defined($score) ) |
3740
|
|
|
|
|
|
|
{ |
3741
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
3742
|
|
|
|
|
|
|
|
3743
|
|
|
|
|
|
|
|
3744
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
3745
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
3746
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
3747
|
|
|
|
|
|
|
q{bcc}, |
3748
|
|
|
|
|
|
|
$tracelevel) |
3749
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3750
|
0
|
|
|
|
|
0
|
return undef; |
3751
|
|
|
|
|
|
|
} |
3752
|
24
|
50
|
33
|
|
|
107
|
if (!defined($return) && defined($score)) |
3753
|
|
|
|
|
|
|
{ |
3754
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
3755
|
|
|
|
|
|
|
q{bcc}, |
3756
|
|
|
|
|
|
|
$tracelevel) |
3757
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3758
|
0
|
|
|
|
|
0
|
$return = $score_return; |
3759
|
|
|
|
|
|
|
} |
3760
|
24
|
|
|
|
|
39
|
splice @{$thisparser->{errors}}, $err_at; |
|
24
|
|
|
|
|
48
|
|
3761
|
24
|
50
|
|
|
|
80
|
$return = $item[$#item] unless defined $return; |
3762
|
24
|
50
|
|
|
|
72
|
if (defined $::RD_TRACE) |
3763
|
|
|
|
|
|
|
{ |
3764
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
3765
|
|
|
|
|
|
|
$return . q{])}, "", |
3766
|
|
|
|
|
|
|
q{bcc}, |
3767
|
|
|
|
|
|
|
$tracelevel); |
3768
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
3769
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
3770
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3771
|
|
|
|
|
|
|
, q{bcc}, |
3772
|
|
|
|
|
|
|
$tracelevel) |
3773
|
|
|
|
|
|
|
} |
3774
|
24
|
|
|
|
|
69
|
$_[1] = $text; |
3775
|
24
|
|
|
|
|
141
|
return $return; |
3776
|
|
|
|
|
|
|
} |
3777
|
|
|
|
|
|
|
|
3778
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
3779
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyMD5 |
3780
|
|
|
|
|
|
|
{ |
3781
|
74
|
|
|
74
|
|
1206
|
my $thisparser = $_[0]; |
3782
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
360
|
|
3783
|
74
|
|
50
|
|
|
202
|
local $tracelevel = ($tracelevel||0)+1; |
3784
|
74
|
|
|
|
|
120
|
$ERRORS = 0; |
3785
|
74
|
|
|
|
|
183
|
my $thisrule = $thisparser->{"rules"}{"bodyMD5"}; |
3786
|
|
|
|
|
|
|
|
3787
|
74
|
50
|
|
|
|
151
|
Parse::RecDescent::_trace(q{Trying rule: [bodyMD5]}, |
3788
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
3789
|
|
|
|
|
|
|
q{bodyMD5}, |
3790
|
|
|
|
|
|
|
$tracelevel) |
3791
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3792
|
|
|
|
|
|
|
|
3793
|
74
|
|
|
|
|
115
|
my $def_at = @{$thisparser->{deferred}}; |
|
74
|
|
|
|
|
144
|
|
3794
|
74
|
|
|
|
|
122
|
my $err_at = @{$thisparser->{errors}}; |
|
74
|
|
|
|
|
128
|
|
3795
|
|
|
|
|
|
|
|
3796
|
74
|
|
|
|
|
187
|
my $score; |
3797
|
|
|
|
|
|
|
my $score_return; |
3798
|
74
|
|
|
|
|
0
|
my $_tok; |
3799
|
74
|
|
|
|
|
135
|
my $return = undef; |
3800
|
74
|
|
|
|
|
133
|
my $_matched=0; |
3801
|
74
|
|
|
|
|
109
|
my $commit=0; |
3802
|
74
|
|
|
|
|
112
|
my @item = (); |
3803
|
74
|
|
|
|
|
116
|
my %item = (); |
3804
|
74
|
|
|
|
|
114
|
my $repeating = $_[2]; |
3805
|
74
|
|
|
|
|
109
|
my $_noactions = $_[3]; |
3806
|
74
|
50
|
|
|
|
171
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
74
|
|
|
|
|
114
|
|
|
74
|
|
|
|
|
139
|
|
3807
|
74
|
|
|
|
|
115
|
my $_itempos = $_[5]; |
3808
|
74
|
50
|
|
|
|
176
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
3809
|
74
|
|
|
|
|
171
|
my $text; |
3810
|
|
|
|
|
|
|
my $lastsep; |
3811
|
74
|
|
|
|
|
0
|
my $current_match; |
3812
|
74
|
|
|
|
|
190
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or STRING}); |
3813
|
74
|
|
|
|
|
533
|
$expectation->at($_[1]); |
3814
|
|
|
|
|
|
|
|
3815
|
74
|
|
|
|
|
321
|
my $thisline; |
3816
|
74
|
|
|
|
|
275
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
3817
|
|
|
|
|
|
|
|
3818
|
|
|
|
|
|
|
|
3819
|
|
|
|
|
|
|
|
3820
|
74
|
|
33
|
|
|
687
|
while (!$_matched && !$commit) |
3821
|
|
|
|
|
|
|
{ |
3822
|
|
|
|
|
|
|
|
3823
|
74
|
50
|
|
|
|
180
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
3824
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
3825
|
|
|
|
|
|
|
q{bodyMD5}, |
3826
|
|
|
|
|
|
|
$tracelevel) |
3827
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3828
|
74
|
|
|
|
|
175
|
my $thisprod = $thisrule->{"prods"}[0]; |
3829
|
74
|
|
|
|
|
131
|
$text = $_[1]; |
3830
|
74
|
|
|
|
|
117
|
my $_savetext; |
3831
|
74
|
|
|
|
|
153
|
@item = (q{bodyMD5}); |
3832
|
74
|
|
|
|
|
160
|
%item = (__RULE__ => q{bodyMD5}); |
3833
|
74
|
|
|
|
|
117
|
my $repcount = 0; |
3834
|
|
|
|
|
|
|
|
3835
|
|
|
|
|
|
|
|
3836
|
74
|
50
|
|
|
|
147
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
3837
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3838
|
|
|
|
|
|
|
q{bodyMD5}, |
3839
|
|
|
|
|
|
|
$tracelevel) |
3840
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3841
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
274
|
|
|
74
|
|
|
|
|
109
|
|
3842
|
74
|
|
|
|
|
157
|
$expectation->is(q{})->at($text); |
3843
|
74
|
100
|
|
74
|
|
709
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
74
|
|
|
|
|
146
|
|
3844
|
|
|
|
|
|
|
{ |
3845
|
|
|
|
|
|
|
|
3846
|
8
|
50
|
|
|
|
26
|
Parse::RecDescent::_trace(q{<>}, |
3847
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3848
|
|
|
|
|
|
|
q{bodyMD5}, |
3849
|
|
|
|
|
|
|
$tracelevel) |
3850
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3851
|
8
|
|
|
|
|
22
|
$expectation->failed(); |
3852
|
8
|
|
|
|
|
28
|
last; |
3853
|
|
|
|
|
|
|
} |
3854
|
66
|
50
|
|
|
|
284
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
3855
|
|
|
|
|
|
|
. $_tok . q{]}, |
3856
|
|
|
|
|
|
|
|
3857
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3858
|
|
|
|
|
|
|
q{bodyMD5}, |
3859
|
|
|
|
|
|
|
$tracelevel) |
3860
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3861
|
66
|
|
|
|
|
184
|
$item{q{NIL}} = $_tok; |
3862
|
66
|
|
|
|
|
115
|
push @item, $_tok; |
3863
|
|
|
|
|
|
|
|
3864
|
|
|
|
|
|
|
} |
3865
|
|
|
|
|
|
|
|
3866
|
66
|
50
|
|
|
|
124
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
3867
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3868
|
|
|
|
|
|
|
q{bodyMD5}, |
3869
|
|
|
|
|
|
|
$tracelevel) |
3870
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3871
|
|
|
|
|
|
|
|
3872
|
|
|
|
|
|
|
|
3873
|
|
|
|
|
|
|
|
3874
|
66
|
|
|
|
|
104
|
$_matched = 1; |
3875
|
66
|
|
|
|
|
131
|
last; |
3876
|
|
|
|
|
|
|
} |
3877
|
|
|
|
|
|
|
|
3878
|
|
|
|
|
|
|
splice |
3879
|
74
|
100
|
|
|
|
159
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
8
|
|
|
|
|
17
|
|
3880
|
|
|
|
|
|
|
|
3881
|
74
|
|
66
|
|
|
193
|
while (!$_matched && !$commit) |
3882
|
|
|
|
|
|
|
{ |
3883
|
|
|
|
|
|
|
|
3884
|
8
|
50
|
|
|
|
18
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
3885
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
3886
|
|
|
|
|
|
|
q{bodyMD5}, |
3887
|
|
|
|
|
|
|
$tracelevel) |
3888
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3889
|
8
|
|
|
|
|
17
|
my $thisprod = $thisrule->{"prods"}[1]; |
3890
|
8
|
|
|
|
|
17
|
$text = $_[1]; |
3891
|
8
|
|
|
|
|
12
|
my $_savetext; |
3892
|
8
|
|
|
|
|
22
|
@item = (q{bodyMD5}); |
3893
|
8
|
|
|
|
|
20
|
%item = (__RULE__ => q{bodyMD5}); |
3894
|
8
|
|
|
|
|
12
|
my $repcount = 0; |
3895
|
|
|
|
|
|
|
|
3896
|
|
|
|
|
|
|
|
3897
|
8
|
50
|
|
|
|
18
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
3898
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3899
|
|
|
|
|
|
|
q{bodyMD5}, |
3900
|
|
|
|
|
|
|
$tracelevel) |
3901
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3902
|
1
|
|
|
1
|
|
7
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
522
|
|
|
8
|
|
|
|
|
15
|
|
3903
|
8
|
|
|
|
|
19
|
$expectation->is(q{})->at($text); |
3904
|
8
|
100
|
|
8
|
|
80
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
8
|
|
|
|
|
16
|
|
3905
|
|
|
|
|
|
|
{ |
3906
|
|
|
|
|
|
|
|
3907
|
7
|
50
|
|
|
|
16
|
Parse::RecDescent::_trace(q{<>}, |
3908
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3909
|
|
|
|
|
|
|
q{bodyMD5}, |
3910
|
|
|
|
|
|
|
$tracelevel) |
3911
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3912
|
7
|
|
|
|
|
22
|
$expectation->failed(); |
3913
|
7
|
|
|
|
|
39
|
last; |
3914
|
|
|
|
|
|
|
} |
3915
|
1
|
50
|
|
|
|
6
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
3916
|
|
|
|
|
|
|
. $_tok . q{]}, |
3917
|
|
|
|
|
|
|
|
3918
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3919
|
|
|
|
|
|
|
q{bodyMD5}, |
3920
|
|
|
|
|
|
|
$tracelevel) |
3921
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3922
|
1
|
|
|
|
|
3
|
$item{q{STRING}} = $_tok; |
3923
|
1
|
|
|
|
|
3
|
push @item, $_tok; |
3924
|
|
|
|
|
|
|
|
3925
|
|
|
|
|
|
|
} |
3926
|
|
|
|
|
|
|
|
3927
|
1
|
50
|
|
|
|
4
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
3928
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3929
|
|
|
|
|
|
|
q{bodyMD5}, |
3930
|
|
|
|
|
|
|
$tracelevel) |
3931
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3932
|
|
|
|
|
|
|
|
3933
|
|
|
|
|
|
|
|
3934
|
|
|
|
|
|
|
|
3935
|
1
|
|
|
|
|
3
|
$_matched = 1; |
3936
|
1
|
|
|
|
|
2
|
last; |
3937
|
|
|
|
|
|
|
} |
3938
|
|
|
|
|
|
|
|
3939
|
|
|
|
|
|
|
splice |
3940
|
74
|
100
|
|
|
|
148
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
7
|
|
|
|
|
13
|
|
3941
|
|
|
|
|
|
|
|
3942
|
74
|
100
|
66
|
|
|
178
|
unless ( $_matched || defined($score) ) |
3943
|
|
|
|
|
|
|
{ |
3944
|
7
|
|
|
|
|
11
|
splice @{$thisparser->{deferred}}, $def_at; |
|
7
|
|
|
|
|
15
|
|
3945
|
|
|
|
|
|
|
|
3946
|
|
|
|
|
|
|
|
3947
|
7
|
|
|
|
|
14
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
3948
|
7
|
50
|
|
|
|
15
|
Parse::RecDescent::_trace(q{<>}, |
3949
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
3950
|
|
|
|
|
|
|
q{bodyMD5}, |
3951
|
|
|
|
|
|
|
$tracelevel) |
3952
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3953
|
7
|
|
|
|
|
33
|
return undef; |
3954
|
|
|
|
|
|
|
} |
3955
|
67
|
50
|
33
|
|
|
293
|
if (!defined($return) && defined($score)) |
3956
|
|
|
|
|
|
|
{ |
3957
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
3958
|
|
|
|
|
|
|
q{bodyMD5}, |
3959
|
|
|
|
|
|
|
$tracelevel) |
3960
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3961
|
0
|
|
|
|
|
0
|
$return = $score_return; |
3962
|
|
|
|
|
|
|
} |
3963
|
67
|
|
|
|
|
101
|
splice @{$thisparser->{errors}}, $err_at; |
|
67
|
|
|
|
|
129
|
|
3964
|
67
|
50
|
|
|
|
179
|
$return = $item[$#item] unless defined $return; |
3965
|
67
|
50
|
|
|
|
218
|
if (defined $::RD_TRACE) |
3966
|
|
|
|
|
|
|
{ |
3967
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
3968
|
|
|
|
|
|
|
$return . q{])}, "", |
3969
|
|
|
|
|
|
|
q{bodyMD5}, |
3970
|
|
|
|
|
|
|
$tracelevel); |
3971
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
3972
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
3973
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
3974
|
|
|
|
|
|
|
, q{bodyMD5}, |
3975
|
|
|
|
|
|
|
$tracelevel) |
3976
|
|
|
|
|
|
|
} |
3977
|
67
|
|
|
|
|
141
|
$_[1] = $text; |
3978
|
67
|
|
|
|
|
361
|
return $return; |
3979
|
|
|
|
|
|
|
} |
3980
|
|
|
|
|
|
|
|
3981
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
3982
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodydesc |
3983
|
|
|
|
|
|
|
{ |
3984
|
74
|
|
|
74
|
|
907
|
my $thisparser = $_[0]; |
3985
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
538
|
|
3986
|
74
|
|
50
|
|
|
174
|
local $tracelevel = ($tracelevel||0)+1; |
3987
|
74
|
|
|
|
|
124
|
$ERRORS = 0; |
3988
|
74
|
|
|
|
|
144
|
my $thisrule = $thisparser->{"rules"}{"bodydesc"}; |
3989
|
|
|
|
|
|
|
|
3990
|
74
|
50
|
|
|
|
153
|
Parse::RecDescent::_trace(q{Trying rule: [bodydesc]}, |
3991
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
3992
|
|
|
|
|
|
|
q{bodydesc}, |
3993
|
|
|
|
|
|
|
$tracelevel) |
3994
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
3995
|
|
|
|
|
|
|
|
3996
|
74
|
|
|
|
|
109
|
my $def_at = @{$thisparser->{deferred}}; |
|
74
|
|
|
|
|
158
|
|
3997
|
74
|
|
|
|
|
131
|
my $err_at = @{$thisparser->{errors}}; |
|
74
|
|
|
|
|
139
|
|
3998
|
|
|
|
|
|
|
|
3999
|
74
|
|
|
|
|
188
|
my $score; |
4000
|
|
|
|
|
|
|
my $score_return; |
4001
|
74
|
|
|
|
|
0
|
my $_tok; |
4002
|
74
|
|
|
|
|
126
|
my $return = undef; |
4003
|
74
|
|
|
|
|
101
|
my $_matched=0; |
4004
|
74
|
|
|
|
|
114
|
my $commit=0; |
4005
|
74
|
|
|
|
|
120
|
my @item = (); |
4006
|
74
|
|
|
|
|
124
|
my %item = (); |
4007
|
74
|
|
|
|
|
106
|
my $repeating = $_[2]; |
4008
|
74
|
|
|
|
|
128
|
my $_noactions = $_[3]; |
4009
|
74
|
50
|
|
|
|
155
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
74
|
|
|
|
|
113
|
|
|
74
|
|
|
|
|
265
|
|
4010
|
74
|
|
|
|
|
125
|
my $_itempos = $_[5]; |
4011
|
74
|
50
|
|
|
|
163
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
4012
|
74
|
|
|
|
|
209
|
my $text; |
4013
|
|
|
|
|
|
|
my $lastsep; |
4014
|
74
|
|
|
|
|
0
|
my $current_match; |
4015
|
74
|
|
|
|
|
199
|
my $expectation = new Parse::RecDescent::Expectation(q{/[()]/, or STRING}); |
4016
|
74
|
|
|
|
|
524
|
$expectation->at($_[1]); |
4017
|
|
|
|
|
|
|
|
4018
|
74
|
|
|
|
|
318
|
my $thisline; |
4019
|
74
|
|
|
|
|
261
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
4020
|
|
|
|
|
|
|
|
4021
|
|
|
|
|
|
|
|
4022
|
|
|
|
|
|
|
|
4023
|
74
|
|
33
|
|
|
629
|
while (!$_matched && !$commit) |
4024
|
|
|
|
|
|
|
{ |
4025
|
|
|
|
|
|
|
|
4026
|
74
|
50
|
|
|
|
150
|
Parse::RecDescent::_trace(q{Trying production: [/[()]/ NIL]}, |
4027
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4028
|
|
|
|
|
|
|
q{bodydesc}, |
4029
|
|
|
|
|
|
|
$tracelevel) |
4030
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4031
|
74
|
|
|
|
|
165
|
my $thisprod = $thisrule->{"prods"}[0]; |
4032
|
74
|
|
|
|
|
152
|
$text = $_[1]; |
4033
|
74
|
|
|
|
|
108
|
my $_savetext; |
4034
|
74
|
|
|
|
|
144
|
@item = (q{bodydesc}); |
4035
|
74
|
|
|
|
|
139
|
%item = (__RULE__ => q{bodydesc}); |
4036
|
74
|
|
|
|
|
118
|
my $repcount = 0; |
4037
|
|
|
|
|
|
|
|
4038
|
|
|
|
|
|
|
|
4039
|
74
|
50
|
|
|
|
144
|
Parse::RecDescent::_trace(q{Trying terminal: [/[()]/]}, Parse::RecDescent::_tracefirst($text), |
4040
|
|
|
|
|
|
|
q{bodydesc}, |
4041
|
|
|
|
|
|
|
$tracelevel) |
4042
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4043
|
74
|
|
|
|
|
149
|
undef $lastsep; |
4044
|
74
|
|
|
|
|
192
|
$expectation->is(q{})->at($text); |
4045
|
74
|
|
|
|
|
497
|
$_savetext = $text; |
4046
|
|
|
|
|
|
|
|
4047
|
74
|
50
|
33
|
|
|
490
|
if ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:[()])/) |
|
74
|
50
|
|
|
|
759
|
|
4048
|
|
|
|
|
|
|
{ |
4049
|
0
|
|
|
|
|
0
|
$text = $_savetext; |
4050
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
4051
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
4052
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
4053
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4054
|
|
|
|
|
|
|
|
4055
|
0
|
|
|
|
|
0
|
last; |
4056
|
|
|
|
|
|
|
} |
4057
|
74
|
|
|
|
|
339
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
4058
|
74
|
|
|
|
|
188
|
substr($text,0,length($current_match),q{}); |
4059
|
74
|
50
|
|
|
|
156
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
4060
|
|
|
|
|
|
|
. $current_match . q{])}, |
4061
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
4062
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4063
|
74
|
|
|
|
|
210
|
push @item, $item{__PATTERN1__}=$current_match; |
4064
|
74
|
|
|
|
|
163
|
$text = $_savetext; |
4065
|
|
|
|
|
|
|
|
4066
|
74
|
50
|
|
|
|
154
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
4067
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4068
|
|
|
|
|
|
|
q{bodydesc}, |
4069
|
|
|
|
|
|
|
$tracelevel) |
4070
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4071
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
305
|
|
|
74
|
|
|
|
|
116
|
|
4072
|
74
|
|
|
|
|
219
|
$expectation->is(q{NIL})->at($text); |
4073
|
74
|
100
|
|
74
|
|
709
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
74
|
|
|
|
|
172
|
|
4074
|
|
|
|
|
|
|
{ |
4075
|
|
|
|
|
|
|
|
4076
|
21
|
50
|
|
|
|
71
|
Parse::RecDescent::_trace(q{<>}, |
4077
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4078
|
|
|
|
|
|
|
q{bodydesc}, |
4079
|
|
|
|
|
|
|
$tracelevel) |
4080
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4081
|
21
|
|
|
|
|
76
|
$expectation->failed(); |
4082
|
21
|
|
|
|
|
187
|
last; |
4083
|
|
|
|
|
|
|
} |
4084
|
53
|
50
|
|
|
|
195
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
4085
|
|
|
|
|
|
|
. $_tok . q{]}, |
4086
|
|
|
|
|
|
|
|
4087
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4088
|
|
|
|
|
|
|
q{bodydesc}, |
4089
|
|
|
|
|
|
|
$tracelevel) |
4090
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4091
|
53
|
|
|
|
|
122
|
$item{q{NIL}} = $_tok; |
4092
|
53
|
|
|
|
|
98
|
push @item, $_tok; |
4093
|
|
|
|
|
|
|
|
4094
|
|
|
|
|
|
|
} |
4095
|
|
|
|
|
|
|
|
4096
|
53
|
50
|
|
|
|
112
|
Parse::RecDescent::_trace(q{>>Matched production: [/[()]/ NIL]<<}, |
4097
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4098
|
|
|
|
|
|
|
q{bodydesc}, |
4099
|
|
|
|
|
|
|
$tracelevel) |
4100
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4101
|
|
|
|
|
|
|
|
4102
|
|
|
|
|
|
|
|
4103
|
|
|
|
|
|
|
|
4104
|
53
|
|
|
|
|
79
|
$_matched = 1; |
4105
|
53
|
|
|
|
|
102
|
last; |
4106
|
|
|
|
|
|
|
} |
4107
|
|
|
|
|
|
|
|
4108
|
|
|
|
|
|
|
splice |
4109
|
74
|
100
|
|
|
|
177
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
21
|
|
|
|
|
48
|
|
4110
|
|
|
|
|
|
|
|
4111
|
74
|
|
66
|
|
|
210
|
while (!$_matched && !$commit) |
4112
|
|
|
|
|
|
|
{ |
4113
|
|
|
|
|
|
|
|
4114
|
21
|
50
|
|
|
|
66
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
4115
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4116
|
|
|
|
|
|
|
q{bodydesc}, |
4117
|
|
|
|
|
|
|
$tracelevel) |
4118
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4119
|
21
|
|
|
|
|
54
|
my $thisprod = $thisrule->{"prods"}[1]; |
4120
|
21
|
|
|
|
|
53
|
$text = $_[1]; |
4121
|
21
|
|
|
|
|
37
|
my $_savetext; |
4122
|
21
|
|
|
|
|
58
|
@item = (q{bodydesc}); |
4123
|
21
|
|
|
|
|
70
|
%item = (__RULE__ => q{bodydesc}); |
4124
|
21
|
|
|
|
|
39
|
my $repcount = 0; |
4125
|
|
|
|
|
|
|
|
4126
|
|
|
|
|
|
|
|
4127
|
21
|
50
|
|
|
|
65
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
4128
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4129
|
|
|
|
|
|
|
q{bodydesc}, |
4130
|
|
|
|
|
|
|
$tracelevel) |
4131
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4132
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
487
|
|
|
21
|
|
|
|
|
44
|
|
4133
|
21
|
|
|
|
|
71
|
$expectation->is(q{})->at($text); |
4134
|
21
|
50
|
|
21
|
|
233
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
21
|
|
|
|
|
44
|
|
4135
|
|
|
|
|
|
|
{ |
4136
|
|
|
|
|
|
|
|
4137
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
4138
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4139
|
|
|
|
|
|
|
q{bodydesc}, |
4140
|
|
|
|
|
|
|
$tracelevel) |
4141
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4142
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
4143
|
0
|
|
|
|
|
0
|
last; |
4144
|
|
|
|
|
|
|
} |
4145
|
21
|
50
|
|
|
|
97
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
4146
|
|
|
|
|
|
|
. $_tok . q{]}, |
4147
|
|
|
|
|
|
|
|
4148
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4149
|
|
|
|
|
|
|
q{bodydesc}, |
4150
|
|
|
|
|
|
|
$tracelevel) |
4151
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4152
|
21
|
|
|
|
|
53
|
$item{q{STRING}} = $_tok; |
4153
|
21
|
|
|
|
|
52
|
push @item, $_tok; |
4154
|
|
|
|
|
|
|
|
4155
|
|
|
|
|
|
|
} |
4156
|
|
|
|
|
|
|
|
4157
|
21
|
50
|
|
|
|
59
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
4158
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4159
|
|
|
|
|
|
|
q{bodydesc}, |
4160
|
|
|
|
|
|
|
$tracelevel) |
4161
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4162
|
|
|
|
|
|
|
|
4163
|
|
|
|
|
|
|
|
4164
|
|
|
|
|
|
|
|
4165
|
21
|
|
|
|
|
45
|
$_matched = 1; |
4166
|
21
|
|
|
|
|
42
|
last; |
4167
|
|
|
|
|
|
|
} |
4168
|
|
|
|
|
|
|
|
4169
|
|
|
|
|
|
|
splice |
4170
|
74
|
50
|
|
|
|
153
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
4171
|
|
|
|
|
|
|
|
4172
|
74
|
50
|
33
|
|
|
203
|
unless ( $_matched || defined($score) ) |
4173
|
|
|
|
|
|
|
{ |
4174
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
4175
|
|
|
|
|
|
|
|
4176
|
|
|
|
|
|
|
|
4177
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
4178
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
4179
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4180
|
|
|
|
|
|
|
q{bodydesc}, |
4181
|
|
|
|
|
|
|
$tracelevel) |
4182
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4183
|
0
|
|
|
|
|
0
|
return undef; |
4184
|
|
|
|
|
|
|
} |
4185
|
74
|
50
|
33
|
|
|
279
|
if (!defined($return) && defined($score)) |
4186
|
|
|
|
|
|
|
{ |
4187
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
4188
|
|
|
|
|
|
|
q{bodydesc}, |
4189
|
|
|
|
|
|
|
$tracelevel) |
4190
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4191
|
0
|
|
|
|
|
0
|
$return = $score_return; |
4192
|
|
|
|
|
|
|
} |
4193
|
74
|
|
|
|
|
121
|
splice @{$thisparser->{errors}}, $err_at; |
|
74
|
|
|
|
|
131
|
|
4194
|
74
|
50
|
|
|
|
177
|
$return = $item[$#item] unless defined $return; |
4195
|
74
|
50
|
|
|
|
166
|
if (defined $::RD_TRACE) |
4196
|
|
|
|
|
|
|
{ |
4197
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
4198
|
|
|
|
|
|
|
$return . q{])}, "", |
4199
|
|
|
|
|
|
|
q{bodydesc}, |
4200
|
|
|
|
|
|
|
$tracelevel); |
4201
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
4202
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
4203
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4204
|
|
|
|
|
|
|
, q{bodydesc}, |
4205
|
|
|
|
|
|
|
$tracelevel) |
4206
|
|
|
|
|
|
|
} |
4207
|
74
|
|
|
|
|
194
|
$_[1] = $text; |
4208
|
74
|
|
|
|
|
398
|
return $return; |
4209
|
|
|
|
|
|
|
} |
4210
|
|
|
|
|
|
|
|
4211
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
4212
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodydisp |
4213
|
|
|
|
|
|
|
{ |
4214
|
105
|
|
|
105
|
|
1721
|
my $thisparser = $_[0]; |
4215
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
354
|
|
4216
|
105
|
|
50
|
|
|
306
|
local $tracelevel = ($tracelevel||0)+1; |
4217
|
105
|
|
|
|
|
180
|
$ERRORS = 0; |
4218
|
105
|
|
|
|
|
206
|
my $thisrule = $thisparser->{"rules"}{"bodydisp"}; |
4219
|
|
|
|
|
|
|
|
4220
|
105
|
50
|
|
|
|
211
|
Parse::RecDescent::_trace(q{Trying rule: [bodydisp]}, |
4221
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4222
|
|
|
|
|
|
|
q{bodydisp}, |
4223
|
|
|
|
|
|
|
$tracelevel) |
4224
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4225
|
|
|
|
|
|
|
|
4226
|
105
|
|
|
|
|
152
|
my $def_at = @{$thisparser->{deferred}}; |
|
105
|
|
|
|
|
195
|
|
4227
|
105
|
|
|
|
|
160
|
my $err_at = @{$thisparser->{errors}}; |
|
105
|
|
|
|
|
217
|
|
4228
|
|
|
|
|
|
|
|
4229
|
105
|
|
|
|
|
252
|
my $score; |
4230
|
|
|
|
|
|
|
my $score_return; |
4231
|
105
|
|
|
|
|
0
|
my $_tok; |
4232
|
105
|
|
|
|
|
154
|
my $return = undef; |
4233
|
105
|
|
|
|
|
146
|
my $_matched=0; |
4234
|
105
|
|
|
|
|
163
|
my $commit=0; |
4235
|
105
|
|
|
|
|
175
|
my @item = (); |
4236
|
105
|
|
|
|
|
162
|
my %item = (); |
4237
|
105
|
|
|
|
|
165
|
my $repeating = $_[2]; |
4238
|
105
|
|
|
|
|
176
|
my $_noactions = $_[3]; |
4239
|
105
|
50
|
|
|
|
232
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
105
|
|
|
|
|
151
|
|
|
105
|
|
|
|
|
218
|
|
4240
|
105
|
|
|
|
|
175
|
my $_itempos = $_[5]; |
4241
|
105
|
50
|
|
|
|
258
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
4242
|
105
|
|
|
|
|
251
|
my $text; |
4243
|
|
|
|
|
|
|
my $lastsep; |
4244
|
105
|
|
|
|
|
0
|
my $current_match; |
4245
|
105
|
|
|
|
|
286
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or KVPAIRS}); |
4246
|
105
|
|
|
|
|
705
|
$expectation->at($_[1]); |
4247
|
|
|
|
|
|
|
|
4248
|
105
|
|
|
|
|
415
|
my $thisline; |
4249
|
105
|
|
|
|
|
403
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
4250
|
|
|
|
|
|
|
|
4251
|
|
|
|
|
|
|
|
4252
|
|
|
|
|
|
|
|
4253
|
105
|
|
33
|
|
|
819
|
while (!$_matched && !$commit) |
4254
|
|
|
|
|
|
|
{ |
4255
|
|
|
|
|
|
|
|
4256
|
105
|
50
|
|
|
|
217
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
4257
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4258
|
|
|
|
|
|
|
q{bodydisp}, |
4259
|
|
|
|
|
|
|
$tracelevel) |
4260
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4261
|
105
|
|
|
|
|
228
|
my $thisprod = $thisrule->{"prods"}[0]; |
4262
|
105
|
|
|
|
|
177
|
$text = $_[1]; |
4263
|
105
|
|
|
|
|
156
|
my $_savetext; |
4264
|
105
|
|
|
|
|
215
|
@item = (q{bodydisp}); |
4265
|
105
|
|
|
|
|
207
|
%item = (__RULE__ => q{bodydisp}); |
4266
|
105
|
|
|
|
|
154
|
my $repcount = 0; |
4267
|
|
|
|
|
|
|
|
4268
|
|
|
|
|
|
|
|
4269
|
105
|
50
|
|
|
|
215
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
4270
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4271
|
|
|
|
|
|
|
q{bodydisp}, |
4272
|
|
|
|
|
|
|
$tracelevel) |
4273
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4274
|
1
|
|
|
1
|
|
16
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
4
|
|
|
1
|
|
|
|
|
297
|
|
|
105
|
|
|
|
|
155
|
|
4275
|
105
|
|
|
|
|
238
|
$expectation->is(q{})->at($text); |
4276
|
105
|
100
|
|
105
|
|
1015
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
105
|
|
|
|
|
194
|
|
4277
|
|
|
|
|
|
|
{ |
4278
|
|
|
|
|
|
|
|
4279
|
38
|
50
|
|
|
|
101
|
Parse::RecDescent::_trace(q{<>}, |
4280
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4281
|
|
|
|
|
|
|
q{bodydisp}, |
4282
|
|
|
|
|
|
|
$tracelevel) |
4283
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4284
|
38
|
|
|
|
|
109
|
$expectation->failed(); |
4285
|
38
|
|
|
|
|
138
|
last; |
4286
|
|
|
|
|
|
|
} |
4287
|
67
|
50
|
|
|
|
234
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
4288
|
|
|
|
|
|
|
. $_tok . q{]}, |
4289
|
|
|
|
|
|
|
|
4290
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4291
|
|
|
|
|
|
|
q{bodydisp}, |
4292
|
|
|
|
|
|
|
$tracelevel) |
4293
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4294
|
67
|
|
|
|
|
144
|
$item{q{NIL}} = $_tok; |
4295
|
67
|
|
|
|
|
116
|
push @item, $_tok; |
4296
|
|
|
|
|
|
|
|
4297
|
|
|
|
|
|
|
} |
4298
|
|
|
|
|
|
|
|
4299
|
67
|
50
|
|
|
|
152
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
4300
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4301
|
|
|
|
|
|
|
q{bodydisp}, |
4302
|
|
|
|
|
|
|
$tracelevel) |
4303
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4304
|
|
|
|
|
|
|
|
4305
|
|
|
|
|
|
|
|
4306
|
|
|
|
|
|
|
|
4307
|
67
|
|
|
|
|
113
|
$_matched = 1; |
4308
|
67
|
|
|
|
|
111
|
last; |
4309
|
|
|
|
|
|
|
} |
4310
|
|
|
|
|
|
|
|
4311
|
|
|
|
|
|
|
splice |
4312
|
105
|
100
|
|
|
|
270
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
38
|
|
|
|
|
81
|
|
4313
|
|
|
|
|
|
|
|
4314
|
105
|
|
66
|
|
|
311
|
while (!$_matched && !$commit) |
4315
|
|
|
|
|
|
|
{ |
4316
|
|
|
|
|
|
|
|
4317
|
38
|
50
|
|
|
|
88
|
Parse::RecDescent::_trace(q{Trying production: [KVPAIRS]}, |
4318
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4319
|
|
|
|
|
|
|
q{bodydisp}, |
4320
|
|
|
|
|
|
|
$tracelevel) |
4321
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4322
|
38
|
|
|
|
|
81
|
my $thisprod = $thisrule->{"prods"}[1]; |
4323
|
38
|
|
|
|
|
65
|
$text = $_[1]; |
4324
|
38
|
|
|
|
|
60
|
my $_savetext; |
4325
|
38
|
|
|
|
|
92
|
@item = (q{bodydisp}); |
4326
|
38
|
|
|
|
|
88
|
%item = (__RULE__ => q{bodydisp}); |
4327
|
38
|
|
|
|
|
75
|
my $repcount = 0; |
4328
|
|
|
|
|
|
|
|
4329
|
|
|
|
|
|
|
|
4330
|
38
|
50
|
|
|
|
92
|
Parse::RecDescent::_trace(q{Trying subrule: [KVPAIRS]}, |
4331
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4332
|
|
|
|
|
|
|
q{bodydisp}, |
4333
|
|
|
|
|
|
|
$tracelevel) |
4334
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4335
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
472
|
|
|
38
|
|
|
|
|
69
|
|
4336
|
38
|
|
|
|
|
103
|
$expectation->is(q{})->at($text); |
4337
|
38
|
100
|
|
38
|
|
387
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::KVPAIRS($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
38
|
|
|
|
|
97
|
|
4338
|
|
|
|
|
|
|
{ |
4339
|
|
|
|
|
|
|
|
4340
|
10
|
50
|
|
|
|
21
|
Parse::RecDescent::_trace(q{<>}, |
4341
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4342
|
|
|
|
|
|
|
q{bodydisp}, |
4343
|
|
|
|
|
|
|
$tracelevel) |
4344
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4345
|
10
|
|
|
|
|
27
|
$expectation->failed(); |
4346
|
10
|
|
|
|
|
33
|
last; |
4347
|
|
|
|
|
|
|
} |
4348
|
28
|
50
|
|
|
|
133
|
Parse::RecDescent::_trace(q{>>Matched subrule: [KVPAIRS]<< (return value: [} |
4349
|
|
|
|
|
|
|
. $_tok . q{]}, |
4350
|
|
|
|
|
|
|
|
4351
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4352
|
|
|
|
|
|
|
q{bodydisp}, |
4353
|
|
|
|
|
|
|
$tracelevel) |
4354
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4355
|
28
|
|
|
|
|
73
|
$item{q{KVPAIRS}} = $_tok; |
4356
|
28
|
|
|
|
|
64
|
push @item, $_tok; |
4357
|
|
|
|
|
|
|
|
4358
|
|
|
|
|
|
|
} |
4359
|
|
|
|
|
|
|
|
4360
|
28
|
50
|
|
|
|
69
|
Parse::RecDescent::_trace(q{>>Matched production: [KVPAIRS]<<}, |
4361
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4362
|
|
|
|
|
|
|
q{bodydisp}, |
4363
|
|
|
|
|
|
|
$tracelevel) |
4364
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4365
|
|
|
|
|
|
|
|
4366
|
|
|
|
|
|
|
|
4367
|
|
|
|
|
|
|
|
4368
|
28
|
|
|
|
|
50
|
$_matched = 1; |
4369
|
28
|
|
|
|
|
49
|
last; |
4370
|
|
|
|
|
|
|
} |
4371
|
|
|
|
|
|
|
|
4372
|
|
|
|
|
|
|
splice |
4373
|
105
|
100
|
|
|
|
234
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
10
|
|
|
|
|
22
|
|
4374
|
|
|
|
|
|
|
|
4375
|
105
|
100
|
66
|
|
|
242
|
unless ( $_matched || defined($score) ) |
4376
|
|
|
|
|
|
|
{ |
4377
|
10
|
|
|
|
|
15
|
splice @{$thisparser->{deferred}}, $def_at; |
|
10
|
|
|
|
|
19
|
|
4378
|
|
|
|
|
|
|
|
4379
|
|
|
|
|
|
|
|
4380
|
10
|
|
|
|
|
18
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
4381
|
10
|
50
|
|
|
|
24
|
Parse::RecDescent::_trace(q{<>}, |
4382
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4383
|
|
|
|
|
|
|
q{bodydisp}, |
4384
|
|
|
|
|
|
|
$tracelevel) |
4385
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4386
|
10
|
|
|
|
|
43
|
return undef; |
4387
|
|
|
|
|
|
|
} |
4388
|
95
|
50
|
33
|
|
|
367
|
if (!defined($return) && defined($score)) |
4389
|
|
|
|
|
|
|
{ |
4390
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
4391
|
|
|
|
|
|
|
q{bodydisp}, |
4392
|
|
|
|
|
|
|
$tracelevel) |
4393
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4394
|
0
|
|
|
|
|
0
|
$return = $score_return; |
4395
|
|
|
|
|
|
|
} |
4396
|
95
|
|
|
|
|
147
|
splice @{$thisparser->{errors}}, $err_at; |
|
95
|
|
|
|
|
184
|
|
4397
|
95
|
50
|
|
|
|
260
|
$return = $item[$#item] unless defined $return; |
4398
|
95
|
50
|
|
|
|
185
|
if (defined $::RD_TRACE) |
4399
|
|
|
|
|
|
|
{ |
4400
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
4401
|
|
|
|
|
|
|
$return . q{])}, "", |
4402
|
|
|
|
|
|
|
q{bodydisp}, |
4403
|
|
|
|
|
|
|
$tracelevel); |
4404
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
4405
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
4406
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4407
|
|
|
|
|
|
|
, q{bodydisp}, |
4408
|
|
|
|
|
|
|
$tracelevel) |
4409
|
|
|
|
|
|
|
} |
4410
|
95
|
|
|
|
|
156
|
$_[1] = $text; |
4411
|
95
|
|
|
|
|
518
|
return $return; |
4412
|
|
|
|
|
|
|
} |
4413
|
|
|
|
|
|
|
|
4414
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
4415
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyenc |
4416
|
|
|
|
|
|
|
{ |
4417
|
74
|
|
|
74
|
|
996
|
my $thisparser = $_[0]; |
4418
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
342
|
|
4419
|
74
|
|
50
|
|
|
189
|
local $tracelevel = ($tracelevel||0)+1; |
4420
|
74
|
|
|
|
|
113
|
$ERRORS = 0; |
4421
|
74
|
|
|
|
|
164
|
my $thisrule = $thisparser->{"rules"}{"bodyenc"}; |
4422
|
|
|
|
|
|
|
|
4423
|
74
|
50
|
|
|
|
157
|
Parse::RecDescent::_trace(q{Trying rule: [bodyenc]}, |
4424
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4425
|
|
|
|
|
|
|
q{bodyenc}, |
4426
|
|
|
|
|
|
|
$tracelevel) |
4427
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4428
|
|
|
|
|
|
|
|
4429
|
74
|
|
|
|
|
203
|
my $def_at = @{$thisparser->{deferred}}; |
|
74
|
|
|
|
|
147
|
|
4430
|
74
|
|
|
|
|
105
|
my $err_at = @{$thisparser->{errors}}; |
|
74
|
|
|
|
|
145
|
|
4431
|
|
|
|
|
|
|
|
4432
|
74
|
|
|
|
|
185
|
my $score; |
4433
|
|
|
|
|
|
|
my $score_return; |
4434
|
74
|
|
|
|
|
0
|
my $_tok; |
4435
|
74
|
|
|
|
|
103
|
my $return = undef; |
4436
|
74
|
|
|
|
|
127
|
my $_matched=0; |
4437
|
74
|
|
|
|
|
111
|
my $commit=0; |
4438
|
74
|
|
|
|
|
122
|
my @item = (); |
4439
|
74
|
|
|
|
|
135
|
my %item = (); |
4440
|
74
|
|
|
|
|
134
|
my $repeating = $_[2]; |
4441
|
74
|
|
|
|
|
132
|
my $_noactions = $_[3]; |
4442
|
74
|
50
|
|
|
|
178
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
74
|
|
|
|
|
115
|
|
|
74
|
|
|
|
|
155
|
|
4443
|
74
|
|
|
|
|
115
|
my $_itempos = $_[5]; |
4444
|
74
|
50
|
|
|
|
172
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
4445
|
74
|
|
|
|
|
182
|
my $text; |
4446
|
|
|
|
|
|
|
my $lastsep; |
4447
|
74
|
|
|
|
|
0
|
my $current_match; |
4448
|
74
|
|
|
|
|
192
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or STRING, or KVPAIRS}); |
4449
|
74
|
|
|
|
|
542
|
$expectation->at($_[1]); |
4450
|
|
|
|
|
|
|
|
4451
|
74
|
|
|
|
|
294
|
my $thisline; |
4452
|
74
|
|
|
|
|
259
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
4453
|
|
|
|
|
|
|
|
4454
|
|
|
|
|
|
|
|
4455
|
|
|
|
|
|
|
|
4456
|
74
|
|
33
|
|
|
623
|
while (!$_matched && !$commit) |
4457
|
|
|
|
|
|
|
{ |
4458
|
|
|
|
|
|
|
|
4459
|
74
|
50
|
|
|
|
168
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
4460
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4461
|
|
|
|
|
|
|
q{bodyenc}, |
4462
|
|
|
|
|
|
|
$tracelevel) |
4463
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4464
|
74
|
|
|
|
|
163
|
my $thisprod = $thisrule->{"prods"}[0]; |
4465
|
74
|
|
|
|
|
130
|
$text = $_[1]; |
4466
|
74
|
|
|
|
|
103
|
my $_savetext; |
4467
|
74
|
|
|
|
|
145
|
@item = (q{bodyenc}); |
4468
|
74
|
|
|
|
|
145
|
%item = (__RULE__ => q{bodyenc}); |
4469
|
74
|
|
|
|
|
112
|
my $repcount = 0; |
4470
|
|
|
|
|
|
|
|
4471
|
|
|
|
|
|
|
|
4472
|
74
|
50
|
|
|
|
149
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
4473
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4474
|
|
|
|
|
|
|
q{bodyenc}, |
4475
|
|
|
|
|
|
|
$tracelevel) |
4476
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4477
|
1
|
|
|
1
|
|
7
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
304
|
|
|
74
|
|
|
|
|
105
|
|
4478
|
74
|
|
|
|
|
191
|
$expectation->is(q{})->at($text); |
4479
|
74
|
50
|
|
74
|
|
663
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
74
|
|
|
|
|
176
|
|
4480
|
|
|
|
|
|
|
{ |
4481
|
|
|
|
|
|
|
|
4482
|
74
|
50
|
|
|
|
166
|
Parse::RecDescent::_trace(q{<>}, |
4483
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4484
|
|
|
|
|
|
|
q{bodyenc}, |
4485
|
|
|
|
|
|
|
$tracelevel) |
4486
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4487
|
74
|
|
|
|
|
213
|
$expectation->failed(); |
4488
|
74
|
|
|
|
|
265
|
last; |
4489
|
|
|
|
|
|
|
} |
4490
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
4491
|
|
|
|
|
|
|
. $_tok . q{]}, |
4492
|
|
|
|
|
|
|
|
4493
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4494
|
|
|
|
|
|
|
q{bodyenc}, |
4495
|
|
|
|
|
|
|
$tracelevel) |
4496
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4497
|
0
|
|
|
|
|
0
|
$item{q{NIL}} = $_tok; |
4498
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
4499
|
|
|
|
|
|
|
|
4500
|
|
|
|
|
|
|
} |
4501
|
|
|
|
|
|
|
|
4502
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
4503
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4504
|
|
|
|
|
|
|
q{bodyenc}, |
4505
|
|
|
|
|
|
|
$tracelevel) |
4506
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4507
|
|
|
|
|
|
|
|
4508
|
|
|
|
|
|
|
|
4509
|
|
|
|
|
|
|
|
4510
|
0
|
|
|
|
|
0
|
$_matched = 1; |
4511
|
0
|
|
|
|
|
0
|
last; |
4512
|
|
|
|
|
|
|
} |
4513
|
|
|
|
|
|
|
|
4514
|
|
|
|
|
|
|
splice |
4515
|
74
|
50
|
|
|
|
263
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
74
|
|
|
|
|
160
|
|
4516
|
|
|
|
|
|
|
|
4517
|
74
|
|
33
|
|
|
291
|
while (!$_matched && !$commit) |
4518
|
|
|
|
|
|
|
{ |
4519
|
|
|
|
|
|
|
|
4520
|
74
|
50
|
|
|
|
162
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
4521
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4522
|
|
|
|
|
|
|
q{bodyenc}, |
4523
|
|
|
|
|
|
|
$tracelevel) |
4524
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4525
|
74
|
|
|
|
|
145
|
my $thisprod = $thisrule->{"prods"}[1]; |
4526
|
74
|
|
|
|
|
137
|
$text = $_[1]; |
4527
|
74
|
|
|
|
|
108
|
my $_savetext; |
4528
|
74
|
|
|
|
|
166
|
@item = (q{bodyenc}); |
4529
|
74
|
|
|
|
|
173
|
%item = (__RULE__ => q{bodyenc}); |
4530
|
74
|
|
|
|
|
123
|
my $repcount = 0; |
4531
|
|
|
|
|
|
|
|
4532
|
|
|
|
|
|
|
|
4533
|
74
|
50
|
|
|
|
164
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
4534
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4535
|
|
|
|
|
|
|
q{bodyenc}, |
4536
|
|
|
|
|
|
|
$tracelevel) |
4537
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4538
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
293
|
|
|
74
|
|
|
|
|
108
|
|
4539
|
74
|
|
|
|
|
177
|
$expectation->is(q{})->at($text); |
4540
|
74
|
50
|
|
74
|
|
1052
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
74
|
|
|
|
|
159
|
|
4541
|
|
|
|
|
|
|
{ |
4542
|
|
|
|
|
|
|
|
4543
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
4544
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4545
|
|
|
|
|
|
|
q{bodyenc}, |
4546
|
|
|
|
|
|
|
$tracelevel) |
4547
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4548
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
4549
|
0
|
|
|
|
|
0
|
last; |
4550
|
|
|
|
|
|
|
} |
4551
|
74
|
50
|
|
|
|
285
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
4552
|
|
|
|
|
|
|
. $_tok . q{]}, |
4553
|
|
|
|
|
|
|
|
4554
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4555
|
|
|
|
|
|
|
q{bodyenc}, |
4556
|
|
|
|
|
|
|
$tracelevel) |
4557
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4558
|
74
|
|
|
|
|
185
|
$item{q{STRING}} = $_tok; |
4559
|
74
|
|
|
|
|
141
|
push @item, $_tok; |
4560
|
|
|
|
|
|
|
|
4561
|
|
|
|
|
|
|
} |
4562
|
|
|
|
|
|
|
|
4563
|
74
|
50
|
|
|
|
162
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
4564
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4565
|
|
|
|
|
|
|
q{bodyenc}, |
4566
|
|
|
|
|
|
|
$tracelevel) |
4567
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4568
|
|
|
|
|
|
|
|
4569
|
|
|
|
|
|
|
|
4570
|
|
|
|
|
|
|
|
4571
|
74
|
|
|
|
|
272
|
$_matched = 1; |
4572
|
74
|
|
|
|
|
133
|
last; |
4573
|
|
|
|
|
|
|
} |
4574
|
|
|
|
|
|
|
|
4575
|
|
|
|
|
|
|
splice |
4576
|
74
|
50
|
|
|
|
193
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
4577
|
|
|
|
|
|
|
|
4578
|
74
|
|
33
|
|
|
169
|
while (!$_matched && !$commit) |
4579
|
|
|
|
|
|
|
{ |
4580
|
|
|
|
|
|
|
|
4581
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{Trying production: [KVPAIRS]}, |
4582
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4583
|
|
|
|
|
|
|
q{bodyenc}, |
4584
|
|
|
|
|
|
|
$tracelevel) |
4585
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4586
|
0
|
|
|
|
|
0
|
my $thisprod = $thisrule->{"prods"}[2]; |
4587
|
0
|
|
|
|
|
0
|
$text = $_[1]; |
4588
|
0
|
|
|
|
|
0
|
my $_savetext; |
4589
|
0
|
|
|
|
|
0
|
@item = (q{bodyenc}); |
4590
|
0
|
|
|
|
|
0
|
%item = (__RULE__ => q{bodyenc}); |
4591
|
0
|
|
|
|
|
0
|
my $repcount = 0; |
4592
|
|
|
|
|
|
|
|
4593
|
|
|
|
|
|
|
|
4594
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{Trying subrule: [KVPAIRS]}, |
4595
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4596
|
|
|
|
|
|
|
q{bodyenc}, |
4597
|
|
|
|
|
|
|
$tracelevel) |
4598
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4599
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
1
|
|
|
1
|
|
|
|
|
521
|
|
|
0
|
|
|
|
|
0
|
|
4600
|
0
|
|
|
|
|
0
|
$expectation->is(q{})->at($text); |
4601
|
0
|
0
|
|
0
|
|
0
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::KVPAIRS($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
0
|
|
|
|
|
0
|
|
4602
|
|
|
|
|
|
|
{ |
4603
|
|
|
|
|
|
|
|
4604
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
4605
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4606
|
|
|
|
|
|
|
q{bodyenc}, |
4607
|
|
|
|
|
|
|
$tracelevel) |
4608
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4609
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
4610
|
0
|
|
|
|
|
0
|
last; |
4611
|
|
|
|
|
|
|
} |
4612
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched subrule: [KVPAIRS]<< (return value: [} |
4613
|
|
|
|
|
|
|
. $_tok . q{]}, |
4614
|
|
|
|
|
|
|
|
4615
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4616
|
|
|
|
|
|
|
q{bodyenc}, |
4617
|
|
|
|
|
|
|
$tracelevel) |
4618
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4619
|
0
|
|
|
|
|
0
|
$item{q{KVPAIRS}} = $_tok; |
4620
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
4621
|
|
|
|
|
|
|
|
4622
|
|
|
|
|
|
|
} |
4623
|
|
|
|
|
|
|
|
4624
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [KVPAIRS]<<}, |
4625
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4626
|
|
|
|
|
|
|
q{bodyenc}, |
4627
|
|
|
|
|
|
|
$tracelevel) |
4628
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4629
|
|
|
|
|
|
|
|
4630
|
|
|
|
|
|
|
|
4631
|
|
|
|
|
|
|
|
4632
|
0
|
|
|
|
|
0
|
$_matched = 1; |
4633
|
0
|
|
|
|
|
0
|
last; |
4634
|
|
|
|
|
|
|
} |
4635
|
|
|
|
|
|
|
|
4636
|
|
|
|
|
|
|
splice |
4637
|
74
|
50
|
|
|
|
164
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
4638
|
|
|
|
|
|
|
|
4639
|
74
|
50
|
33
|
|
|
192
|
unless ( $_matched || defined($score) ) |
4640
|
|
|
|
|
|
|
{ |
4641
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
4642
|
|
|
|
|
|
|
|
4643
|
|
|
|
|
|
|
|
4644
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
4645
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
4646
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4647
|
|
|
|
|
|
|
q{bodyenc}, |
4648
|
|
|
|
|
|
|
$tracelevel) |
4649
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4650
|
0
|
|
|
|
|
0
|
return undef; |
4651
|
|
|
|
|
|
|
} |
4652
|
74
|
50
|
33
|
|
|
282
|
if (!defined($return) && defined($score)) |
4653
|
|
|
|
|
|
|
{ |
4654
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
4655
|
|
|
|
|
|
|
q{bodyenc}, |
4656
|
|
|
|
|
|
|
$tracelevel) |
4657
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4658
|
0
|
|
|
|
|
0
|
$return = $score_return; |
4659
|
|
|
|
|
|
|
} |
4660
|
74
|
|
|
|
|
118
|
splice @{$thisparser->{errors}}, $err_at; |
|
74
|
|
|
|
|
163
|
|
4661
|
74
|
50
|
|
|
|
182
|
$return = $item[$#item] unless defined $return; |
4662
|
74
|
50
|
|
|
|
148
|
if (defined $::RD_TRACE) |
4663
|
|
|
|
|
|
|
{ |
4664
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
4665
|
|
|
|
|
|
|
$return . q{])}, "", |
4666
|
|
|
|
|
|
|
q{bodyenc}, |
4667
|
|
|
|
|
|
|
$tracelevel); |
4668
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
4669
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
4670
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4671
|
|
|
|
|
|
|
, q{bodyenc}, |
4672
|
|
|
|
|
|
|
$tracelevel) |
4673
|
|
|
|
|
|
|
} |
4674
|
74
|
|
|
|
|
127
|
$_[1] = $text; |
4675
|
74
|
|
|
|
|
405
|
return $return; |
4676
|
|
|
|
|
|
|
} |
4677
|
|
|
|
|
|
|
|
4678
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
4679
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyextensions |
4680
|
|
|
|
|
|
|
{ |
4681
|
77
|
|
|
77
|
|
1242
|
my $thisparser = $_[0]; |
4682
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
1
|
|
|
1
|
|
|
|
|
367
|
|
4683
|
77
|
|
50
|
|
|
201
|
local $tracelevel = ($tracelevel||0)+1; |
4684
|
77
|
|
|
|
|
140
|
$ERRORS = 0; |
4685
|
77
|
|
|
|
|
170
|
my $thisrule = $thisparser->{"rules"}{"bodyextensions"}; |
4686
|
|
|
|
|
|
|
|
4687
|
77
|
50
|
|
|
|
157
|
Parse::RecDescent::_trace(q{Trying rule: [bodyextensions]}, |
4688
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4689
|
|
|
|
|
|
|
q{bodyextensions}, |
4690
|
|
|
|
|
|
|
$tracelevel) |
4691
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4692
|
|
|
|
|
|
|
|
4693
|
77
|
|
|
|
|
120
|
my $def_at = @{$thisparser->{deferred}}; |
|
77
|
|
|
|
|
189
|
|
4694
|
77
|
|
|
|
|
132
|
my $err_at = @{$thisparser->{errors}}; |
|
77
|
|
|
|
|
149
|
|
4695
|
|
|
|
|
|
|
|
4696
|
77
|
|
|
|
|
188
|
my $score; |
4697
|
|
|
|
|
|
|
my $score_return; |
4698
|
77
|
|
|
|
|
0
|
my $_tok; |
4699
|
77
|
|
|
|
|
119
|
my $return = undef; |
4700
|
77
|
|
|
|
|
117
|
my $_matched=0; |
4701
|
77
|
|
|
|
|
113
|
my $commit=0; |
4702
|
77
|
|
|
|
|
124
|
my @item = (); |
4703
|
77
|
|
|
|
|
155
|
my %item = (); |
4704
|
77
|
|
|
|
|
111
|
my $repeating = $_[2]; |
4705
|
77
|
|
|
|
|
112
|
my $_noactions = $_[3]; |
4706
|
77
|
50
|
|
|
|
211
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
77
|
|
|
|
|
113
|
|
|
77
|
|
|
|
|
147
|
|
4707
|
77
|
|
|
|
|
130
|
my $_itempos = $_[5]; |
4708
|
77
|
50
|
|
|
|
229
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
4709
|
77
|
|
|
|
|
184
|
my $text; |
4710
|
|
|
|
|
|
|
my $lastsep; |
4711
|
77
|
|
|
|
|
0
|
my $current_match; |
4712
|
77
|
|
|
|
|
197
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or STRING}); |
4713
|
77
|
|
|
|
|
546
|
$expectation->at($_[1]); |
4714
|
|
|
|
|
|
|
|
4715
|
77
|
|
|
|
|
330
|
my $thisline; |
4716
|
77
|
|
|
|
|
274
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
4717
|
|
|
|
|
|
|
|
4718
|
|
|
|
|
|
|
|
4719
|
|
|
|
|
|
|
|
4720
|
77
|
|
33
|
|
|
623
|
while (!$_matched && !$commit) |
4721
|
|
|
|
|
|
|
{ |
4722
|
|
|
|
|
|
|
|
4723
|
77
|
50
|
|
|
|
169
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
4724
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4725
|
|
|
|
|
|
|
q{bodyextensions}, |
4726
|
|
|
|
|
|
|
$tracelevel) |
4727
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4728
|
77
|
|
|
|
|
174
|
my $thisprod = $thisrule->{"prods"}[0]; |
4729
|
77
|
|
|
|
|
134
|
$text = $_[1]; |
4730
|
77
|
|
|
|
|
118
|
my $_savetext; |
4731
|
77
|
|
|
|
|
173
|
@item = (q{bodyextensions}); |
4732
|
77
|
|
|
|
|
148
|
%item = (__RULE__ => q{bodyextensions}); |
4733
|
77
|
|
|
|
|
125
|
my $repcount = 0; |
4734
|
|
|
|
|
|
|
|
4735
|
|
|
|
|
|
|
|
4736
|
77
|
50
|
|
|
|
171
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
4737
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4738
|
|
|
|
|
|
|
q{bodyextensions}, |
4739
|
|
|
|
|
|
|
$tracelevel) |
4740
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4741
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
275
|
|
|
77
|
|
|
|
|
141
|
|
4742
|
77
|
|
|
|
|
181
|
$expectation->is(q{})->at($text); |
4743
|
77
|
100
|
|
77
|
|
705
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
77
|
|
|
|
|
168
|
|
4744
|
|
|
|
|
|
|
{ |
4745
|
|
|
|
|
|
|
|
4746
|
72
|
50
|
|
|
|
174
|
Parse::RecDescent::_trace(q{<>}, |
4747
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4748
|
|
|
|
|
|
|
q{bodyextensions}, |
4749
|
|
|
|
|
|
|
$tracelevel) |
4750
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4751
|
72
|
|
|
|
|
231
|
$expectation->failed(); |
4752
|
72
|
|
|
|
|
262
|
last; |
4753
|
|
|
|
|
|
|
} |
4754
|
5
|
50
|
|
|
|
20
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
4755
|
|
|
|
|
|
|
. $_tok . q{]}, |
4756
|
|
|
|
|
|
|
|
4757
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4758
|
|
|
|
|
|
|
q{bodyextensions}, |
4759
|
|
|
|
|
|
|
$tracelevel) |
4760
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4761
|
5
|
|
|
|
|
11
|
$item{q{NIL}} = $_tok; |
4762
|
5
|
|
|
|
|
13
|
push @item, $_tok; |
4763
|
|
|
|
|
|
|
|
4764
|
|
|
|
|
|
|
} |
4765
|
|
|
|
|
|
|
|
4766
|
5
|
50
|
|
|
|
14
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
4767
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4768
|
|
|
|
|
|
|
q{bodyextensions}, |
4769
|
|
|
|
|
|
|
$tracelevel) |
4770
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4771
|
|
|
|
|
|
|
|
4772
|
|
|
|
|
|
|
|
4773
|
|
|
|
|
|
|
|
4774
|
5
|
|
|
|
|
9
|
$_matched = 1; |
4775
|
5
|
|
|
|
|
9
|
last; |
4776
|
|
|
|
|
|
|
} |
4777
|
|
|
|
|
|
|
|
4778
|
|
|
|
|
|
|
splice |
4779
|
77
|
100
|
|
|
|
267
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
72
|
|
|
|
|
152
|
|
4780
|
|
|
|
|
|
|
|
4781
|
77
|
|
66
|
|
|
284
|
while (!$_matched && !$commit) |
4782
|
|
|
|
|
|
|
{ |
4783
|
|
|
|
|
|
|
|
4784
|
72
|
50
|
|
|
|
150
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
4785
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4786
|
|
|
|
|
|
|
q{bodyextensions}, |
4787
|
|
|
|
|
|
|
$tracelevel) |
4788
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4789
|
72
|
|
|
|
|
130
|
my $thisprod = $thisrule->{"prods"}[1]; |
4790
|
72
|
|
|
|
|
127
|
$text = $_[1]; |
4791
|
72
|
|
|
|
|
99
|
my $_savetext; |
4792
|
72
|
|
|
|
|
156
|
@item = (q{bodyextensions}); |
4793
|
72
|
|
|
|
|
513
|
%item = (__RULE__ => q{bodyextensions}); |
4794
|
72
|
|
|
|
|
126
|
my $repcount = 0; |
4795
|
|
|
|
|
|
|
|
4796
|
|
|
|
|
|
|
|
4797
|
72
|
50
|
|
|
|
179
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
4798
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4799
|
|
|
|
|
|
|
q{bodyextensions}, |
4800
|
|
|
|
|
|
|
$tracelevel) |
4801
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4802
|
1
|
|
|
1
|
|
7
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
13
|
|
|
1
|
|
|
|
|
494
|
|
|
72
|
|
|
|
|
107
|
|
4803
|
72
|
|
|
|
|
185
|
$expectation->is(q{})->at($text); |
4804
|
72
|
50
|
|
72
|
|
681
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
72
|
|
|
|
|
134
|
|
4805
|
|
|
|
|
|
|
{ |
4806
|
|
|
|
|
|
|
|
4807
|
72
|
50
|
|
|
|
160
|
Parse::RecDescent::_trace(q{<>}, |
4808
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4809
|
|
|
|
|
|
|
q{bodyextensions}, |
4810
|
|
|
|
|
|
|
$tracelevel) |
4811
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4812
|
72
|
|
|
|
|
210
|
$expectation->failed(); |
4813
|
72
|
|
|
|
|
281
|
last; |
4814
|
|
|
|
|
|
|
} |
4815
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
4816
|
|
|
|
|
|
|
. $_tok . q{]}, |
4817
|
|
|
|
|
|
|
|
4818
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4819
|
|
|
|
|
|
|
q{bodyextensions}, |
4820
|
|
|
|
|
|
|
$tracelevel) |
4821
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4822
|
0
|
|
|
|
|
0
|
$item{q{STRING}} = $_tok; |
4823
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
4824
|
|
|
|
|
|
|
|
4825
|
|
|
|
|
|
|
} |
4826
|
|
|
|
|
|
|
|
4827
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
4828
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4829
|
|
|
|
|
|
|
q{bodyextensions}, |
4830
|
|
|
|
|
|
|
$tracelevel) |
4831
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4832
|
|
|
|
|
|
|
|
4833
|
|
|
|
|
|
|
|
4834
|
|
|
|
|
|
|
|
4835
|
0
|
|
|
|
|
0
|
$_matched = 1; |
4836
|
0
|
|
|
|
|
0
|
last; |
4837
|
|
|
|
|
|
|
} |
4838
|
|
|
|
|
|
|
|
4839
|
|
|
|
|
|
|
splice |
4840
|
77
|
100
|
|
|
|
242
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
72
|
|
|
|
|
155
|
|
4841
|
|
|
|
|
|
|
|
4842
|
77
|
100
|
66
|
|
|
251
|
unless ( $_matched || defined($score) ) |
4843
|
|
|
|
|
|
|
{ |
4844
|
72
|
|
|
|
|
120
|
splice @{$thisparser->{deferred}}, $def_at; |
|
72
|
|
|
|
|
139
|
|
4845
|
|
|
|
|
|
|
|
4846
|
|
|
|
|
|
|
|
4847
|
72
|
|
|
|
|
139
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
4848
|
72
|
50
|
|
|
|
159
|
Parse::RecDescent::_trace(q{<>}, |
4849
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4850
|
|
|
|
|
|
|
q{bodyextensions}, |
4851
|
|
|
|
|
|
|
$tracelevel) |
4852
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4853
|
72
|
|
|
|
|
337
|
return undef; |
4854
|
|
|
|
|
|
|
} |
4855
|
5
|
50
|
33
|
|
|
78
|
if (!defined($return) && defined($score)) |
4856
|
|
|
|
|
|
|
{ |
4857
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
4858
|
|
|
|
|
|
|
q{bodyextensions}, |
4859
|
|
|
|
|
|
|
$tracelevel) |
4860
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4861
|
0
|
|
|
|
|
0
|
$return = $score_return; |
4862
|
|
|
|
|
|
|
} |
4863
|
5
|
|
|
|
|
10
|
splice @{$thisparser->{errors}}, $err_at; |
|
5
|
|
|
|
|
11
|
|
4864
|
5
|
50
|
|
|
|
17
|
$return = $item[$#item] unless defined $return; |
4865
|
5
|
50
|
|
|
|
13
|
if (defined $::RD_TRACE) |
4866
|
|
|
|
|
|
|
{ |
4867
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
4868
|
|
|
|
|
|
|
$return . q{])}, "", |
4869
|
|
|
|
|
|
|
q{bodyextensions}, |
4870
|
|
|
|
|
|
|
$tracelevel); |
4871
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
4872
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
4873
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4874
|
|
|
|
|
|
|
, q{bodyextensions}, |
4875
|
|
|
|
|
|
|
$tracelevel) |
4876
|
|
|
|
|
|
|
} |
4877
|
5
|
|
|
|
|
10
|
$_[1] = $text; |
4878
|
5
|
|
|
|
|
28
|
return $return; |
4879
|
|
|
|
|
|
|
} |
4880
|
|
|
|
|
|
|
|
4881
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
4882
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyextra |
4883
|
|
|
|
|
|
|
{ |
4884
|
105
|
|
|
105
|
|
1774
|
my $thisparser = $_[0]; |
4885
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
352
|
|
4886
|
105
|
|
50
|
|
|
263
|
local $tracelevel = ($tracelevel||0)+1; |
4887
|
105
|
|
|
|
|
167
|
$ERRORS = 0; |
4888
|
105
|
|
|
|
|
258
|
my $thisrule = $thisparser->{"rules"}{"bodyextra"}; |
4889
|
|
|
|
|
|
|
|
4890
|
105
|
50
|
|
|
|
249
|
Parse::RecDescent::_trace(q{Trying rule: [bodyextra]}, |
4891
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4892
|
|
|
|
|
|
|
q{bodyextra}, |
4893
|
|
|
|
|
|
|
$tracelevel) |
4894
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4895
|
|
|
|
|
|
|
|
4896
|
105
|
|
|
|
|
155
|
my $def_at = @{$thisparser->{deferred}}; |
|
105
|
|
|
|
|
202
|
|
4897
|
105
|
|
|
|
|
160
|
my $err_at = @{$thisparser->{errors}}; |
|
105
|
|
|
|
|
199
|
|
4898
|
|
|
|
|
|
|
|
4899
|
105
|
|
|
|
|
259
|
my $score; |
4900
|
|
|
|
|
|
|
my $score_return; |
4901
|
105
|
|
|
|
|
0
|
my $_tok; |
4902
|
105
|
|
|
|
|
177
|
my $return = undef; |
4903
|
105
|
|
|
|
|
157
|
my $_matched=0; |
4904
|
105
|
|
|
|
|
157
|
my $commit=0; |
4905
|
105
|
|
|
|
|
160
|
my @item = (); |
4906
|
105
|
|
|
|
|
185
|
my %item = (); |
4907
|
105
|
|
|
|
|
165
|
my $repeating = $_[2]; |
4908
|
105
|
|
|
|
|
164
|
my $_noactions = $_[3]; |
4909
|
105
|
50
|
|
|
|
215
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
105
|
|
|
|
|
148
|
|
|
105
|
|
|
|
|
200
|
|
4910
|
105
|
|
|
|
|
171
|
my $_itempos = $_[5]; |
4911
|
105
|
50
|
|
|
|
242
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
4912
|
105
|
|
|
|
|
275
|
my $text; |
4913
|
|
|
|
|
|
|
my $lastsep; |
4914
|
105
|
|
|
|
|
0
|
my $current_match; |
4915
|
105
|
|
|
|
|
274
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or STRING, or STRINGS}); |
4916
|
105
|
|
|
|
|
742
|
$expectation->at($_[1]); |
4917
|
|
|
|
|
|
|
|
4918
|
105
|
|
|
|
|
479
|
my $thisline; |
4919
|
105
|
|
|
|
|
379
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
4920
|
|
|
|
|
|
|
|
4921
|
|
|
|
|
|
|
|
4922
|
|
|
|
|
|
|
|
4923
|
105
|
|
33
|
|
|
851
|
while (!$_matched && !$commit) |
4924
|
|
|
|
|
|
|
{ |
4925
|
|
|
|
|
|
|
|
4926
|
105
|
50
|
|
|
|
224
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
4927
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4928
|
|
|
|
|
|
|
q{bodyextra}, |
4929
|
|
|
|
|
|
|
$tracelevel) |
4930
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4931
|
105
|
|
|
|
|
263
|
my $thisprod = $thisrule->{"prods"}[0]; |
4932
|
105
|
|
|
|
|
189
|
$text = $_[1]; |
4933
|
105
|
|
|
|
|
147
|
my $_savetext; |
4934
|
105
|
|
|
|
|
204
|
@item = (q{bodyextra}); |
4935
|
105
|
|
|
|
|
203
|
%item = (__RULE__ => q{bodyextra}); |
4936
|
105
|
|
|
|
|
150
|
my $repcount = 0; |
4937
|
|
|
|
|
|
|
|
4938
|
|
|
|
|
|
|
|
4939
|
105
|
50
|
|
|
|
218
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
4940
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4941
|
|
|
|
|
|
|
q{bodyextra}, |
4942
|
|
|
|
|
|
|
$tracelevel) |
4943
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4944
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
314
|
|
|
105
|
|
|
|
|
148
|
|
4945
|
105
|
|
|
|
|
247
|
$expectation->is(q{})->at($text); |
4946
|
105
|
100
|
|
105
|
|
1046
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
105
|
|
|
|
|
206
|
|
4947
|
|
|
|
|
|
|
{ |
4948
|
|
|
|
|
|
|
|
4949
|
47
|
50
|
|
|
|
117
|
Parse::RecDescent::_trace(q{<>}, |
4950
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4951
|
|
|
|
|
|
|
q{bodyextra}, |
4952
|
|
|
|
|
|
|
$tracelevel) |
4953
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4954
|
47
|
|
|
|
|
131
|
$expectation->failed(); |
4955
|
47
|
|
|
|
|
156
|
last; |
4956
|
|
|
|
|
|
|
} |
4957
|
58
|
50
|
|
|
|
238
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
4958
|
|
|
|
|
|
|
. $_tok . q{]}, |
4959
|
|
|
|
|
|
|
|
4960
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4961
|
|
|
|
|
|
|
q{bodyextra}, |
4962
|
|
|
|
|
|
|
$tracelevel) |
4963
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4964
|
58
|
|
|
|
|
155
|
$item{q{NIL}} = $_tok; |
4965
|
58
|
|
|
|
|
122
|
push @item, $_tok; |
4966
|
|
|
|
|
|
|
|
4967
|
|
|
|
|
|
|
} |
4968
|
|
|
|
|
|
|
|
4969
|
58
|
50
|
|
|
|
132
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
4970
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
4971
|
|
|
|
|
|
|
q{bodyextra}, |
4972
|
|
|
|
|
|
|
$tracelevel) |
4973
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4974
|
|
|
|
|
|
|
|
4975
|
|
|
|
|
|
|
|
4976
|
|
|
|
|
|
|
|
4977
|
58
|
|
|
|
|
92
|
$_matched = 1; |
4978
|
58
|
|
|
|
|
102
|
last; |
4979
|
|
|
|
|
|
|
} |
4980
|
|
|
|
|
|
|
|
4981
|
|
|
|
|
|
|
splice |
4982
|
105
|
100
|
|
|
|
297
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
47
|
|
|
|
|
174
|
|
4983
|
|
|
|
|
|
|
|
4984
|
105
|
|
66
|
|
|
328
|
while (!$_matched && !$commit) |
4985
|
|
|
|
|
|
|
{ |
4986
|
|
|
|
|
|
|
|
4987
|
47
|
50
|
|
|
|
103
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
4988
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
4989
|
|
|
|
|
|
|
q{bodyextra}, |
4990
|
|
|
|
|
|
|
$tracelevel) |
4991
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
4992
|
47
|
|
|
|
|
97
|
my $thisprod = $thisrule->{"prods"}[1]; |
4993
|
47
|
|
|
|
|
87
|
$text = $_[1]; |
4994
|
47
|
|
|
|
|
101
|
my $_savetext; |
4995
|
47
|
|
|
|
|
118
|
@item = (q{bodyextra}); |
4996
|
47
|
|
|
|
|
112
|
%item = (__RULE__ => q{bodyextra}); |
4997
|
47
|
|
|
|
|
73
|
my $repcount = 0; |
4998
|
|
|
|
|
|
|
|
4999
|
|
|
|
|
|
|
|
5000
|
47
|
50
|
|
|
|
87
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
5001
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5002
|
|
|
|
|
|
|
q{bodyextra}, |
5003
|
|
|
|
|
|
|
$tracelevel) |
5004
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5005
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
295
|
|
|
47
|
|
|
|
|
77
|
|
5006
|
47
|
|
|
|
|
104
|
$expectation->is(q{})->at($text); |
5007
|
47
|
50
|
|
47
|
|
508
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
47
|
|
|
|
|
91
|
|
5008
|
|
|
|
|
|
|
{ |
5009
|
|
|
|
|
|
|
|
5010
|
47
|
50
|
|
|
|
97
|
Parse::RecDescent::_trace(q{<>}, |
5011
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5012
|
|
|
|
|
|
|
q{bodyextra}, |
5013
|
|
|
|
|
|
|
$tracelevel) |
5014
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5015
|
47
|
|
|
|
|
134
|
$expectation->failed(); |
5016
|
47
|
|
|
|
|
162
|
last; |
5017
|
|
|
|
|
|
|
} |
5018
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
5019
|
|
|
|
|
|
|
. $_tok . q{]}, |
5020
|
|
|
|
|
|
|
|
5021
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5022
|
|
|
|
|
|
|
q{bodyextra}, |
5023
|
|
|
|
|
|
|
$tracelevel) |
5024
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5025
|
0
|
|
|
|
|
0
|
$item{q{STRING}} = $_tok; |
5026
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
5027
|
|
|
|
|
|
|
|
5028
|
|
|
|
|
|
|
} |
5029
|
|
|
|
|
|
|
|
5030
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
5031
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5032
|
|
|
|
|
|
|
q{bodyextra}, |
5033
|
|
|
|
|
|
|
$tracelevel) |
5034
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5035
|
|
|
|
|
|
|
|
5036
|
|
|
|
|
|
|
|
5037
|
|
|
|
|
|
|
|
5038
|
0
|
|
|
|
|
0
|
$_matched = 1; |
5039
|
0
|
|
|
|
|
0
|
last; |
5040
|
|
|
|
|
|
|
} |
5041
|
|
|
|
|
|
|
|
5042
|
|
|
|
|
|
|
splice |
5043
|
105
|
100
|
|
|
|
297
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
47
|
|
|
|
|
106
|
|
5044
|
|
|
|
|
|
|
|
5045
|
105
|
|
66
|
|
|
342
|
while (!$_matched && !$commit) |
5046
|
|
|
|
|
|
|
{ |
5047
|
|
|
|
|
|
|
|
5048
|
47
|
50
|
|
|
|
97
|
Parse::RecDescent::_trace(q{Trying production: [STRINGS]}, |
5049
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
5050
|
|
|
|
|
|
|
q{bodyextra}, |
5051
|
|
|
|
|
|
|
$tracelevel) |
5052
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5053
|
47
|
|
|
|
|
126
|
my $thisprod = $thisrule->{"prods"}[2]; |
5054
|
47
|
|
|
|
|
91
|
$text = $_[1]; |
5055
|
47
|
|
|
|
|
68
|
my $_savetext; |
5056
|
47
|
|
|
|
|
127
|
@item = (q{bodyextra}); |
5057
|
47
|
|
|
|
|
113
|
%item = (__RULE__ => q{bodyextra}); |
5058
|
47
|
|
|
|
|
78
|
my $repcount = 0; |
5059
|
|
|
|
|
|
|
|
5060
|
|
|
|
|
|
|
|
5061
|
47
|
50
|
|
|
|
110
|
Parse::RecDescent::_trace(q{Trying subrule: [STRINGS]}, |
5062
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5063
|
|
|
|
|
|
|
q{bodyextra}, |
5064
|
|
|
|
|
|
|
$tracelevel) |
5065
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5066
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
480
|
|
|
47
|
|
|
|
|
72
|
|
5067
|
47
|
|
|
|
|
113
|
$expectation->is(q{})->at($text); |
5068
|
47
|
50
|
|
47
|
|
479
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRINGS($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
47
|
|
|
|
|
114
|
|
5069
|
|
|
|
|
|
|
{ |
5070
|
|
|
|
|
|
|
|
5071
|
47
|
50
|
|
|
|
99
|
Parse::RecDescent::_trace(q{<>}, |
5072
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5073
|
|
|
|
|
|
|
q{bodyextra}, |
5074
|
|
|
|
|
|
|
$tracelevel) |
5075
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5076
|
47
|
|
|
|
|
132
|
$expectation->failed(); |
5077
|
47
|
|
|
|
|
193
|
last; |
5078
|
|
|
|
|
|
|
} |
5079
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRINGS]<< (return value: [} |
5080
|
|
|
|
|
|
|
. $_tok . q{]}, |
5081
|
|
|
|
|
|
|
|
5082
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5083
|
|
|
|
|
|
|
q{bodyextra}, |
5084
|
|
|
|
|
|
|
$tracelevel) |
5085
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5086
|
0
|
|
|
|
|
0
|
$item{q{STRINGS}} = $_tok; |
5087
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
5088
|
|
|
|
|
|
|
|
5089
|
|
|
|
|
|
|
} |
5090
|
|
|
|
|
|
|
|
5091
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [STRINGS]<<}, |
5092
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5093
|
|
|
|
|
|
|
q{bodyextra}, |
5094
|
|
|
|
|
|
|
$tracelevel) |
5095
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5096
|
|
|
|
|
|
|
|
5097
|
|
|
|
|
|
|
|
5098
|
|
|
|
|
|
|
|
5099
|
0
|
|
|
|
|
0
|
$_matched = 1; |
5100
|
0
|
|
|
|
|
0
|
last; |
5101
|
|
|
|
|
|
|
} |
5102
|
|
|
|
|
|
|
|
5103
|
|
|
|
|
|
|
splice |
5104
|
105
|
100
|
|
|
|
315
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
47
|
|
|
|
|
114
|
|
5105
|
|
|
|
|
|
|
|
5106
|
105
|
100
|
66
|
|
|
310
|
unless ( $_matched || defined($score) ) |
5107
|
|
|
|
|
|
|
{ |
5108
|
47
|
|
|
|
|
84
|
splice @{$thisparser->{deferred}}, $def_at; |
|
47
|
|
|
|
|
98
|
|
5109
|
|
|
|
|
|
|
|
5110
|
|
|
|
|
|
|
|
5111
|
47
|
|
|
|
|
93
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
5112
|
47
|
50
|
|
|
|
106
|
Parse::RecDescent::_trace(q{<>}, |
5113
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
5114
|
|
|
|
|
|
|
q{bodyextra}, |
5115
|
|
|
|
|
|
|
$tracelevel) |
5116
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5117
|
47
|
|
|
|
|
215
|
return undef; |
5118
|
|
|
|
|
|
|
} |
5119
|
58
|
50
|
33
|
|
|
249
|
if (!defined($return) && defined($score)) |
5120
|
|
|
|
|
|
|
{ |
5121
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
5122
|
|
|
|
|
|
|
q{bodyextra}, |
5123
|
|
|
|
|
|
|
$tracelevel) |
5124
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5125
|
0
|
|
|
|
|
0
|
$return = $score_return; |
5126
|
|
|
|
|
|
|
} |
5127
|
58
|
|
|
|
|
105
|
splice @{$thisparser->{errors}}, $err_at; |
|
58
|
|
|
|
|
131
|
|
5128
|
58
|
50
|
|
|
|
171
|
$return = $item[$#item] unless defined $return; |
5129
|
58
|
50
|
|
|
|
135
|
if (defined $::RD_TRACE) |
5130
|
|
|
|
|
|
|
{ |
5131
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
5132
|
|
|
|
|
|
|
$return . q{])}, "", |
5133
|
|
|
|
|
|
|
q{bodyextra}, |
5134
|
|
|
|
|
|
|
$tracelevel); |
5135
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
5136
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
5137
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5138
|
|
|
|
|
|
|
, q{bodyextra}, |
5139
|
|
|
|
|
|
|
$tracelevel) |
5140
|
|
|
|
|
|
|
} |
5141
|
58
|
|
|
|
|
99
|
$_[1] = $text; |
5142
|
58
|
|
|
|
|
282
|
return $return; |
5143
|
|
|
|
|
|
|
} |
5144
|
|
|
|
|
|
|
|
5145
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
5146
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyid |
5147
|
|
|
|
|
|
|
{ |
5148
|
74
|
|
|
74
|
|
938
|
my $thisparser = $_[0]; |
5149
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
539
|
|
5150
|
74
|
|
50
|
|
|
212
|
local $tracelevel = ($tracelevel||0)+1; |
5151
|
74
|
|
|
|
|
124
|
$ERRORS = 0; |
5152
|
74
|
|
|
|
|
165
|
my $thisrule = $thisparser->{"rules"}{"bodyid"}; |
5153
|
|
|
|
|
|
|
|
5154
|
74
|
50
|
|
|
|
174
|
Parse::RecDescent::_trace(q{Trying rule: [bodyid]}, |
5155
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
5156
|
|
|
|
|
|
|
q{bodyid}, |
5157
|
|
|
|
|
|
|
$tracelevel) |
5158
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5159
|
|
|
|
|
|
|
|
5160
|
74
|
|
|
|
|
108
|
my $def_at = @{$thisparser->{deferred}}; |
|
74
|
|
|
|
|
152
|
|
5161
|
74
|
|
|
|
|
113
|
my $err_at = @{$thisparser->{errors}}; |
|
74
|
|
|
|
|
132
|
|
5162
|
|
|
|
|
|
|
|
5163
|
74
|
|
|
|
|
168
|
my $score; |
5164
|
|
|
|
|
|
|
my $score_return; |
5165
|
74
|
|
|
|
|
0
|
my $_tok; |
5166
|
74
|
|
|
|
|
102
|
my $return = undef; |
5167
|
74
|
|
|
|
|
137
|
my $_matched=0; |
5168
|
74
|
|
|
|
|
141
|
my $commit=0; |
5169
|
74
|
|
|
|
|
126
|
my @item = (); |
5170
|
74
|
|
|
|
|
190
|
my %item = (); |
5171
|
74
|
|
|
|
|
114
|
my $repeating = $_[2]; |
5172
|
74
|
|
|
|
|
114
|
my $_noactions = $_[3]; |
5173
|
74
|
50
|
|
|
|
147
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
74
|
|
|
|
|
109
|
|
|
74
|
|
|
|
|
176
|
|
5174
|
74
|
|
|
|
|
119
|
my $_itempos = $_[5]; |
5175
|
74
|
50
|
|
|
|
177
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
5176
|
74
|
|
|
|
|
177
|
my $text; |
5177
|
|
|
|
|
|
|
my $lastsep; |
5178
|
74
|
|
|
|
|
0
|
my $current_match; |
5179
|
74
|
|
|
|
|
200
|
my $expectation = new Parse::RecDescent::Expectation(q{/[()]/, or STRING}); |
5180
|
74
|
|
|
|
|
522
|
$expectation->at($_[1]); |
5181
|
|
|
|
|
|
|
|
5182
|
74
|
|
|
|
|
298
|
my $thisline; |
5183
|
74
|
|
|
|
|
289
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
5184
|
|
|
|
|
|
|
|
5185
|
|
|
|
|
|
|
|
5186
|
|
|
|
|
|
|
|
5187
|
74
|
|
33
|
|
|
623
|
while (!$_matched && !$commit) |
5188
|
|
|
|
|
|
|
{ |
5189
|
|
|
|
|
|
|
|
5190
|
74
|
50
|
|
|
|
211
|
Parse::RecDescent::_trace(q{Trying production: [/[()]/ NIL]}, |
5191
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
5192
|
|
|
|
|
|
|
q{bodyid}, |
5193
|
|
|
|
|
|
|
$tracelevel) |
5194
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5195
|
74
|
|
|
|
|
208
|
my $thisprod = $thisrule->{"prods"}[0]; |
5196
|
74
|
|
|
|
|
140
|
$text = $_[1]; |
5197
|
74
|
|
|
|
|
147
|
my $_savetext; |
5198
|
74
|
|
|
|
|
196
|
@item = (q{bodyid}); |
5199
|
74
|
|
|
|
|
159
|
%item = (__RULE__ => q{bodyid}); |
5200
|
74
|
|
|
|
|
112
|
my $repcount = 0; |
5201
|
|
|
|
|
|
|
|
5202
|
|
|
|
|
|
|
|
5203
|
74
|
50
|
|
|
|
155
|
Parse::RecDescent::_trace(q{Trying terminal: [/[()]/]}, Parse::RecDescent::_tracefirst($text), |
5204
|
|
|
|
|
|
|
q{bodyid}, |
5205
|
|
|
|
|
|
|
$tracelevel) |
5206
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5207
|
74
|
|
|
|
|
161
|
undef $lastsep; |
5208
|
74
|
|
|
|
|
175
|
$expectation->is(q{})->at($text); |
5209
|
74
|
|
|
|
|
501
|
$_savetext = $text; |
5210
|
|
|
|
|
|
|
|
5211
|
74
|
50
|
33
|
|
|
491
|
if ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:[()])/) |
|
74
|
50
|
|
|
|
755
|
|
5212
|
|
|
|
|
|
|
{ |
5213
|
0
|
|
|
|
|
0
|
$text = $_savetext; |
5214
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
5215
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
5216
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
5217
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5218
|
|
|
|
|
|
|
|
5219
|
0
|
|
|
|
|
0
|
last; |
5220
|
|
|
|
|
|
|
} |
5221
|
74
|
|
|
|
|
378
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
5222
|
74
|
|
|
|
|
195
|
substr($text,0,length($current_match),q{}); |
5223
|
74
|
50
|
|
|
|
193
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
5224
|
|
|
|
|
|
|
. $current_match . q{])}, |
5225
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
5226
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5227
|
74
|
|
|
|
|
213
|
push @item, $item{__PATTERN1__}=$current_match; |
5228
|
74
|
|
|
|
|
178
|
$text = $_savetext; |
5229
|
|
|
|
|
|
|
|
5230
|
74
|
50
|
|
|
|
199
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
5231
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5232
|
|
|
|
|
|
|
q{bodyid}, |
5233
|
|
|
|
|
|
|
$tracelevel) |
5234
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5235
|
1
|
|
|
1
|
|
9
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
305
|
|
|
74
|
|
|
|
|
120
|
|
5236
|
74
|
|
|
|
|
198
|
$expectation->is(q{NIL})->at($text); |
5237
|
74
|
100
|
|
74
|
|
766
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
74
|
|
|
|
|
132
|
|
5238
|
|
|
|
|
|
|
{ |
5239
|
|
|
|
|
|
|
|
5240
|
2
|
50
|
|
|
|
7
|
Parse::RecDescent::_trace(q{<>}, |
5241
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5242
|
|
|
|
|
|
|
q{bodyid}, |
5243
|
|
|
|
|
|
|
$tracelevel) |
5244
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5245
|
2
|
|
|
|
|
7
|
$expectation->failed(); |
5246
|
2
|
|
|
|
|
18
|
last; |
5247
|
|
|
|
|
|
|
} |
5248
|
72
|
50
|
|
|
|
266
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
5249
|
|
|
|
|
|
|
. $_tok . q{]}, |
5250
|
|
|
|
|
|
|
|
5251
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5252
|
|
|
|
|
|
|
q{bodyid}, |
5253
|
|
|
|
|
|
|
$tracelevel) |
5254
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5255
|
72
|
|
|
|
|
154
|
$item{q{NIL}} = $_tok; |
5256
|
72
|
|
|
|
|
120
|
push @item, $_tok; |
5257
|
|
|
|
|
|
|
|
5258
|
|
|
|
|
|
|
} |
5259
|
|
|
|
|
|
|
|
5260
|
72
|
50
|
|
|
|
155
|
Parse::RecDescent::_trace(q{>>Matched production: [/[()]/ NIL]<<}, |
5261
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5262
|
|
|
|
|
|
|
q{bodyid}, |
5263
|
|
|
|
|
|
|
$tracelevel) |
5264
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5265
|
|
|
|
|
|
|
|
5266
|
|
|
|
|
|
|
|
5267
|
|
|
|
|
|
|
|
5268
|
72
|
|
|
|
|
135
|
$_matched = 1; |
5269
|
72
|
|
|
|
|
140
|
last; |
5270
|
|
|
|
|
|
|
} |
5271
|
|
|
|
|
|
|
|
5272
|
|
|
|
|
|
|
splice |
5273
|
74
|
100
|
|
|
|
159
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
2
|
|
|
|
|
7
|
|
5274
|
|
|
|
|
|
|
|
5275
|
74
|
|
66
|
|
|
190
|
while (!$_matched && !$commit) |
5276
|
|
|
|
|
|
|
{ |
5277
|
|
|
|
|
|
|
|
5278
|
2
|
50
|
|
|
|
8
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
5279
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
5280
|
|
|
|
|
|
|
q{bodyid}, |
5281
|
|
|
|
|
|
|
$tracelevel) |
5282
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5283
|
2
|
|
|
|
|
5
|
my $thisprod = $thisrule->{"prods"}[1]; |
5284
|
2
|
|
|
|
|
8
|
$text = $_[1]; |
5285
|
2
|
|
|
|
|
5
|
my $_savetext; |
5286
|
2
|
|
|
|
|
8
|
@item = (q{bodyid}); |
5287
|
2
|
|
|
|
|
7
|
%item = (__RULE__ => q{bodyid}); |
5288
|
2
|
|
|
|
|
6
|
my $repcount = 0; |
5289
|
|
|
|
|
|
|
|
5290
|
|
|
|
|
|
|
|
5291
|
2
|
50
|
|
|
|
7
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
5292
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5293
|
|
|
|
|
|
|
q{bodyid}, |
5294
|
|
|
|
|
|
|
$tracelevel) |
5295
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5296
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
524
|
|
|
2
|
|
|
|
|
4
|
|
5297
|
2
|
|
|
|
|
8
|
$expectation->is(q{})->at($text); |
5298
|
2
|
50
|
|
2
|
|
25
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
2
|
|
|
|
|
6
|
|
5299
|
|
|
|
|
|
|
{ |
5300
|
|
|
|
|
|
|
|
5301
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
5302
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5303
|
|
|
|
|
|
|
q{bodyid}, |
5304
|
|
|
|
|
|
|
$tracelevel) |
5305
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5306
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
5307
|
0
|
|
|
|
|
0
|
last; |
5308
|
|
|
|
|
|
|
} |
5309
|
2
|
50
|
|
|
|
9
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
5310
|
|
|
|
|
|
|
. $_tok . q{]}, |
5311
|
|
|
|
|
|
|
|
5312
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5313
|
|
|
|
|
|
|
q{bodyid}, |
5314
|
|
|
|
|
|
|
$tracelevel) |
5315
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5316
|
2
|
|
|
|
|
5
|
$item{q{STRING}} = $_tok; |
5317
|
2
|
|
|
|
|
6
|
push @item, $_tok; |
5318
|
|
|
|
|
|
|
|
5319
|
|
|
|
|
|
|
} |
5320
|
|
|
|
|
|
|
|
5321
|
2
|
50
|
|
|
|
6
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
5322
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5323
|
|
|
|
|
|
|
q{bodyid}, |
5324
|
|
|
|
|
|
|
$tracelevel) |
5325
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5326
|
|
|
|
|
|
|
|
5327
|
|
|
|
|
|
|
|
5328
|
|
|
|
|
|
|
|
5329
|
2
|
|
|
|
|
5
|
$_matched = 1; |
5330
|
2
|
|
|
|
|
4
|
last; |
5331
|
|
|
|
|
|
|
} |
5332
|
|
|
|
|
|
|
|
5333
|
|
|
|
|
|
|
splice |
5334
|
74
|
50
|
|
|
|
142
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
5335
|
|
|
|
|
|
|
|
5336
|
74
|
50
|
33
|
|
|
206
|
unless ( $_matched || defined($score) ) |
5337
|
|
|
|
|
|
|
{ |
5338
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
5339
|
|
|
|
|
|
|
|
5340
|
|
|
|
|
|
|
|
5341
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
5342
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
5343
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
5344
|
|
|
|
|
|
|
q{bodyid}, |
5345
|
|
|
|
|
|
|
$tracelevel) |
5346
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5347
|
0
|
|
|
|
|
0
|
return undef; |
5348
|
|
|
|
|
|
|
} |
5349
|
74
|
50
|
33
|
|
|
262
|
if (!defined($return) && defined($score)) |
5350
|
|
|
|
|
|
|
{ |
5351
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
5352
|
|
|
|
|
|
|
q{bodyid}, |
5353
|
|
|
|
|
|
|
$tracelevel) |
5354
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5355
|
0
|
|
|
|
|
0
|
$return = $score_return; |
5356
|
|
|
|
|
|
|
} |
5357
|
74
|
|
|
|
|
109
|
splice @{$thisparser->{errors}}, $err_at; |
|
74
|
|
|
|
|
142
|
|
5358
|
74
|
50
|
|
|
|
183
|
$return = $item[$#item] unless defined $return; |
5359
|
74
|
50
|
|
|
|
158
|
if (defined $::RD_TRACE) |
5360
|
|
|
|
|
|
|
{ |
5361
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
5362
|
|
|
|
|
|
|
$return . q{])}, "", |
5363
|
|
|
|
|
|
|
q{bodyid}, |
5364
|
|
|
|
|
|
|
$tracelevel); |
5365
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
5366
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
5367
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5368
|
|
|
|
|
|
|
, q{bodyid}, |
5369
|
|
|
|
|
|
|
$tracelevel) |
5370
|
|
|
|
|
|
|
} |
5371
|
74
|
|
|
|
|
143
|
$_[1] = $text; |
5372
|
74
|
|
|
|
|
418
|
return $return; |
5373
|
|
|
|
|
|
|
} |
5374
|
|
|
|
|
|
|
|
5375
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
5376
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodylang |
5377
|
|
|
|
|
|
|
{ |
5378
|
105
|
|
|
105
|
|
1789
|
my $thisparser = $_[0]; |
5379
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
355
|
|
5380
|
105
|
|
50
|
|
|
266
|
local $tracelevel = ($tracelevel||0)+1; |
5381
|
105
|
|
|
|
|
163
|
$ERRORS = 0; |
5382
|
105
|
|
|
|
|
205
|
my $thisrule = $thisparser->{"rules"}{"bodylang"}; |
5383
|
|
|
|
|
|
|
|
5384
|
105
|
50
|
|
|
|
243
|
Parse::RecDescent::_trace(q{Trying rule: [bodylang]}, |
5385
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
5386
|
|
|
|
|
|
|
q{bodylang}, |
5387
|
|
|
|
|
|
|
$tracelevel) |
5388
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5389
|
|
|
|
|
|
|
|
5390
|
105
|
|
|
|
|
175
|
my $def_at = @{$thisparser->{deferred}}; |
|
105
|
|
|
|
|
217
|
|
5391
|
105
|
|
|
|
|
175
|
my $err_at = @{$thisparser->{errors}}; |
|
105
|
|
|
|
|
179
|
|
5392
|
|
|
|
|
|
|
|
5393
|
105
|
|
|
|
|
247
|
my $score; |
5394
|
|
|
|
|
|
|
my $score_return; |
5395
|
105
|
|
|
|
|
0
|
my $_tok; |
5396
|
105
|
|
|
|
|
141
|
my $return = undef; |
5397
|
105
|
|
|
|
|
154
|
my $_matched=0; |
5398
|
105
|
|
|
|
|
167
|
my $commit=0; |
5399
|
105
|
|
|
|
|
223
|
my @item = (); |
5400
|
105
|
|
|
|
|
168
|
my %item = (); |
5401
|
105
|
|
|
|
|
154
|
my $repeating = $_[2]; |
5402
|
105
|
|
|
|
|
175
|
my $_noactions = $_[3]; |
5403
|
105
|
50
|
|
|
|
223
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
105
|
|
|
|
|
136
|
|
|
105
|
|
|
|
|
190
|
|
5404
|
105
|
|
|
|
|
180
|
my $_itempos = $_[5]; |
5405
|
105
|
50
|
|
|
|
246
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
5406
|
105
|
|
|
|
|
252
|
my $text; |
5407
|
|
|
|
|
|
|
my $lastsep; |
5408
|
105
|
|
|
|
|
0
|
my $current_match; |
5409
|
105
|
|
|
|
|
284
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or STRING, or STRINGS}); |
5410
|
105
|
|
|
|
|
736
|
$expectation->at($_[1]); |
5411
|
|
|
|
|
|
|
|
5412
|
105
|
|
|
|
|
419
|
my $thisline; |
5413
|
105
|
|
|
|
|
361
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
5414
|
|
|
|
|
|
|
|
5415
|
|
|
|
|
|
|
|
5416
|
|
|
|
|
|
|
|
5417
|
105
|
|
33
|
|
|
838
|
while (!$_matched && !$commit) |
5418
|
|
|
|
|
|
|
{ |
5419
|
|
|
|
|
|
|
|
5420
|
105
|
50
|
|
|
|
255
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
5421
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
5422
|
|
|
|
|
|
|
q{bodylang}, |
5423
|
|
|
|
|
|
|
$tracelevel) |
5424
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5425
|
105
|
|
|
|
|
263
|
my $thisprod = $thisrule->{"prods"}[0]; |
5426
|
105
|
|
|
|
|
169
|
$text = $_[1]; |
5427
|
105
|
|
|
|
|
142
|
my $_savetext; |
5428
|
105
|
|
|
|
|
199
|
@item = (q{bodylang}); |
5429
|
105
|
|
|
|
|
197
|
%item = (__RULE__ => q{bodylang}); |
5430
|
105
|
|
|
|
|
193
|
my $repcount = 0; |
5431
|
|
|
|
|
|
|
|
5432
|
|
|
|
|
|
|
|
5433
|
105
|
50
|
|
|
|
209
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
5434
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5435
|
|
|
|
|
|
|
q{bodylang}, |
5436
|
|
|
|
|
|
|
$tracelevel) |
5437
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5438
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
10
|
|
|
1
|
|
|
|
|
293
|
|
|
105
|
|
|
|
|
150
|
|
5439
|
105
|
|
|
|
|
311
|
$expectation->is(q{})->at($text); |
5440
|
105
|
100
|
|
105
|
|
956
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
105
|
|
|
|
|
197
|
|
5441
|
|
|
|
|
|
|
{ |
5442
|
|
|
|
|
|
|
|
5443
|
11
|
50
|
|
|
|
28
|
Parse::RecDescent::_trace(q{<>}, |
5444
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5445
|
|
|
|
|
|
|
q{bodylang}, |
5446
|
|
|
|
|
|
|
$tracelevel) |
5447
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5448
|
11
|
|
|
|
|
36
|
$expectation->failed(); |
5449
|
11
|
|
|
|
|
37
|
last; |
5450
|
|
|
|
|
|
|
} |
5451
|
94
|
50
|
|
|
|
381
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
5452
|
|
|
|
|
|
|
. $_tok . q{]}, |
5453
|
|
|
|
|
|
|
|
5454
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5455
|
|
|
|
|
|
|
q{bodylang}, |
5456
|
|
|
|
|
|
|
$tracelevel) |
5457
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5458
|
94
|
|
|
|
|
198
|
$item{q{NIL}} = $_tok; |
5459
|
94
|
|
|
|
|
187
|
push @item, $_tok; |
5460
|
|
|
|
|
|
|
|
5461
|
|
|
|
|
|
|
} |
5462
|
|
|
|
|
|
|
|
5463
|
94
|
50
|
|
|
|
403
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
5464
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5465
|
|
|
|
|
|
|
q{bodylang}, |
5466
|
|
|
|
|
|
|
$tracelevel) |
5467
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5468
|
|
|
|
|
|
|
|
5469
|
|
|
|
|
|
|
|
5470
|
|
|
|
|
|
|
|
5471
|
94
|
|
|
|
|
138
|
$_matched = 1; |
5472
|
94
|
|
|
|
|
156
|
last; |
5473
|
|
|
|
|
|
|
} |
5474
|
|
|
|
|
|
|
|
5475
|
|
|
|
|
|
|
splice |
5476
|
105
|
100
|
|
|
|
264
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
11
|
|
|
|
|
24
|
|
5477
|
|
|
|
|
|
|
|
5478
|
105
|
|
66
|
|
|
273
|
while (!$_matched && !$commit) |
5479
|
|
|
|
|
|
|
{ |
5480
|
|
|
|
|
|
|
|
5481
|
11
|
50
|
|
|
|
27
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
5482
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
5483
|
|
|
|
|
|
|
q{bodylang}, |
5484
|
|
|
|
|
|
|
$tracelevel) |
5485
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5486
|
11
|
|
|
|
|
22
|
my $thisprod = $thisrule->{"prods"}[1]; |
5487
|
11
|
|
|
|
|
20
|
$text = $_[1]; |
5488
|
11
|
|
|
|
|
14
|
my $_savetext; |
5489
|
11
|
|
|
|
|
26
|
@item = (q{bodylang}); |
5490
|
11
|
|
|
|
|
27
|
%item = (__RULE__ => q{bodylang}); |
5491
|
11
|
|
|
|
|
19
|
my $repcount = 0; |
5492
|
|
|
|
|
|
|
|
5493
|
|
|
|
|
|
|
|
5494
|
11
|
50
|
|
|
|
24
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
5495
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5496
|
|
|
|
|
|
|
q{bodylang}, |
5497
|
|
|
|
|
|
|
$tracelevel) |
5498
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5499
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
324
|
|
|
11
|
|
|
|
|
13
|
|
5500
|
11
|
|
|
|
|
28
|
$expectation->is(q{})->at($text); |
5501
|
11
|
50
|
|
11
|
|
108
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
11
|
|
|
|
|
23
|
|
5502
|
|
|
|
|
|
|
{ |
5503
|
|
|
|
|
|
|
|
5504
|
11
|
50
|
|
|
|
27
|
Parse::RecDescent::_trace(q{<>}, |
5505
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5506
|
|
|
|
|
|
|
q{bodylang}, |
5507
|
|
|
|
|
|
|
$tracelevel) |
5508
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5509
|
11
|
|
|
|
|
30
|
$expectation->failed(); |
5510
|
11
|
|
|
|
|
41
|
last; |
5511
|
|
|
|
|
|
|
} |
5512
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
5513
|
|
|
|
|
|
|
. $_tok . q{]}, |
5514
|
|
|
|
|
|
|
|
5515
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5516
|
|
|
|
|
|
|
q{bodylang}, |
5517
|
|
|
|
|
|
|
$tracelevel) |
5518
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5519
|
0
|
|
|
|
|
0
|
$item{q{STRING}} = $_tok; |
5520
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
5521
|
|
|
|
|
|
|
|
5522
|
|
|
|
|
|
|
} |
5523
|
|
|
|
|
|
|
|
5524
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
5525
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5526
|
|
|
|
|
|
|
q{bodylang}, |
5527
|
|
|
|
|
|
|
$tracelevel) |
5528
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5529
|
|
|
|
|
|
|
|
5530
|
|
|
|
|
|
|
|
5531
|
|
|
|
|
|
|
|
5532
|
0
|
|
|
|
|
0
|
$_matched = 1; |
5533
|
0
|
|
|
|
|
0
|
last; |
5534
|
|
|
|
|
|
|
} |
5535
|
|
|
|
|
|
|
|
5536
|
|
|
|
|
|
|
splice |
5537
|
105
|
100
|
|
|
|
231
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
11
|
|
|
|
|
23
|
|
5538
|
|
|
|
|
|
|
|
5539
|
105
|
|
66
|
|
|
249
|
while (!$_matched && !$commit) |
5540
|
|
|
|
|
|
|
{ |
5541
|
|
|
|
|
|
|
|
5542
|
11
|
50
|
|
|
|
25
|
Parse::RecDescent::_trace(q{Trying production: [STRINGS]}, |
5543
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
5544
|
|
|
|
|
|
|
q{bodylang}, |
5545
|
|
|
|
|
|
|
$tracelevel) |
5546
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5547
|
11
|
|
|
|
|
25
|
my $thisprod = $thisrule->{"prods"}[2]; |
5548
|
11
|
|
|
|
|
21
|
$text = $_[1]; |
5549
|
11
|
|
|
|
|
16
|
my $_savetext; |
5550
|
11
|
|
|
|
|
25
|
@item = (q{bodylang}); |
5551
|
11
|
|
|
|
|
28
|
%item = (__RULE__ => q{bodylang}); |
5552
|
11
|
|
|
|
|
14
|
my $repcount = 0; |
5553
|
|
|
|
|
|
|
|
5554
|
|
|
|
|
|
|
|
5555
|
11
|
50
|
|
|
|
24
|
Parse::RecDescent::_trace(q{Trying subrule: [STRINGS]}, |
5556
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5557
|
|
|
|
|
|
|
q{bodylang}, |
5558
|
|
|
|
|
|
|
$tracelevel) |
5559
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5560
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
486
|
|
|
11
|
|
|
|
|
15
|
|
5561
|
11
|
|
|
|
|
26
|
$expectation->is(q{})->at($text); |
5562
|
11
|
100
|
|
11
|
|
108
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRINGS($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
11
|
|
|
|
|
20
|
|
5563
|
|
|
|
|
|
|
{ |
5564
|
|
|
|
|
|
|
|
5565
|
10
|
50
|
|
|
|
22
|
Parse::RecDescent::_trace(q{<>}, |
5566
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5567
|
|
|
|
|
|
|
q{bodylang}, |
5568
|
|
|
|
|
|
|
$tracelevel) |
5569
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5570
|
10
|
|
|
|
|
26
|
$expectation->failed(); |
5571
|
10
|
|
|
|
|
34
|
last; |
5572
|
|
|
|
|
|
|
} |
5573
|
1
|
50
|
|
|
|
6
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRINGS]<< (return value: [} |
5574
|
|
|
|
|
|
|
. $_tok . q{]}, |
5575
|
|
|
|
|
|
|
|
5576
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5577
|
|
|
|
|
|
|
q{bodylang}, |
5578
|
|
|
|
|
|
|
$tracelevel) |
5579
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5580
|
1
|
|
|
|
|
3
|
$item{q{STRINGS}} = $_tok; |
5581
|
1
|
|
|
|
|
3
|
push @item, $_tok; |
5582
|
|
|
|
|
|
|
|
5583
|
|
|
|
|
|
|
} |
5584
|
|
|
|
|
|
|
|
5585
|
1
|
50
|
|
|
|
3
|
Parse::RecDescent::_trace(q{>>Matched production: [STRINGS]<<}, |
5586
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5587
|
|
|
|
|
|
|
q{bodylang}, |
5588
|
|
|
|
|
|
|
$tracelevel) |
5589
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5590
|
|
|
|
|
|
|
|
5591
|
|
|
|
|
|
|
|
5592
|
|
|
|
|
|
|
|
5593
|
1
|
|
|
|
|
3
|
$_matched = 1; |
5594
|
1
|
|
|
|
|
12
|
last; |
5595
|
|
|
|
|
|
|
} |
5596
|
|
|
|
|
|
|
|
5597
|
|
|
|
|
|
|
splice |
5598
|
105
|
100
|
|
|
|
249
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
10
|
|
|
|
|
18
|
|
5599
|
|
|
|
|
|
|
|
5600
|
105
|
100
|
66
|
|
|
248
|
unless ( $_matched || defined($score) ) |
5601
|
|
|
|
|
|
|
{ |
5602
|
10
|
|
|
|
|
13
|
splice @{$thisparser->{deferred}}, $def_at; |
|
10
|
|
|
|
|
20
|
|
5603
|
|
|
|
|
|
|
|
5604
|
|
|
|
|
|
|
|
5605
|
10
|
|
|
|
|
16
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
5606
|
10
|
50
|
|
|
|
31
|
Parse::RecDescent::_trace(q{<>}, |
5607
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
5608
|
|
|
|
|
|
|
q{bodylang}, |
5609
|
|
|
|
|
|
|
$tracelevel) |
5610
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5611
|
10
|
|
|
|
|
59
|
return undef; |
5612
|
|
|
|
|
|
|
} |
5613
|
95
|
50
|
33
|
|
|
324
|
if (!defined($return) && defined($score)) |
5614
|
|
|
|
|
|
|
{ |
5615
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
5616
|
|
|
|
|
|
|
q{bodylang}, |
5617
|
|
|
|
|
|
|
$tracelevel) |
5618
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5619
|
0
|
|
|
|
|
0
|
$return = $score_return; |
5620
|
|
|
|
|
|
|
} |
5621
|
95
|
|
|
|
|
145
|
splice @{$thisparser->{errors}}, $err_at; |
|
95
|
|
|
|
|
183
|
|
5622
|
95
|
50
|
|
|
|
237
|
$return = $item[$#item] unless defined $return; |
5623
|
95
|
50
|
|
|
|
195
|
if (defined $::RD_TRACE) |
5624
|
|
|
|
|
|
|
{ |
5625
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
5626
|
|
|
|
|
|
|
$return . q{])}, "", |
5627
|
|
|
|
|
|
|
q{bodylang}, |
5628
|
|
|
|
|
|
|
$tracelevel); |
5629
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
5630
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
5631
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5632
|
|
|
|
|
|
|
, q{bodylang}, |
5633
|
|
|
|
|
|
|
$tracelevel) |
5634
|
|
|
|
|
|
|
} |
5635
|
95
|
|
|
|
|
143
|
$_[1] = $text; |
5636
|
95
|
|
|
|
|
457
|
return $return; |
5637
|
|
|
|
|
|
|
} |
5638
|
|
|
|
|
|
|
|
5639
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
5640
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyloc |
5641
|
|
|
|
|
|
|
{ |
5642
|
31
|
|
|
31
|
|
511
|
my $thisparser = $_[0]; |
5643
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
364
|
|
5644
|
31
|
|
50
|
|
|
94
|
local $tracelevel = ($tracelevel||0)+1; |
5645
|
31
|
|
|
|
|
53
|
$ERRORS = 0; |
5646
|
31
|
|
|
|
|
71
|
my $thisrule = $thisparser->{"rules"}{"bodyloc"}; |
5647
|
|
|
|
|
|
|
|
5648
|
31
|
50
|
|
|
|
80
|
Parse::RecDescent::_trace(q{Trying rule: [bodyloc]}, |
5649
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
5650
|
|
|
|
|
|
|
q{bodyloc}, |
5651
|
|
|
|
|
|
|
$tracelevel) |
5652
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5653
|
|
|
|
|
|
|
|
5654
|
31
|
|
|
|
|
59
|
my $def_at = @{$thisparser->{deferred}}; |
|
31
|
|
|
|
|
79
|
|
5655
|
31
|
|
|
|
|
61
|
my $err_at = @{$thisparser->{errors}}; |
|
31
|
|
|
|
|
65
|
|
5656
|
|
|
|
|
|
|
|
5657
|
31
|
|
|
|
|
76
|
my $score; |
5658
|
|
|
|
|
|
|
my $score_return; |
5659
|
31
|
|
|
|
|
0
|
my $_tok; |
5660
|
31
|
|
|
|
|
43
|
my $return = undef; |
5661
|
31
|
|
|
|
|
51
|
my $_matched=0; |
5662
|
31
|
|
|
|
|
55
|
my $commit=0; |
5663
|
31
|
|
|
|
|
49
|
my @item = (); |
5664
|
31
|
|
|
|
|
63
|
my %item = (); |
5665
|
31
|
|
|
|
|
55
|
my $repeating = $_[2]; |
5666
|
31
|
|
|
|
|
50
|
my $_noactions = $_[3]; |
5667
|
31
|
50
|
|
|
|
65
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
31
|
|
|
|
|
49
|
|
|
31
|
|
|
|
|
53
|
|
5668
|
31
|
|
|
|
|
51
|
my $_itempos = $_[5]; |
5669
|
31
|
50
|
|
|
|
87
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
5670
|
31
|
|
|
|
|
97
|
my $text; |
5671
|
|
|
|
|
|
|
my $lastsep; |
5672
|
31
|
|
|
|
|
0
|
my $current_match; |
5673
|
31
|
|
|
|
|
98
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or STRING}); |
5674
|
31
|
|
|
|
|
231
|
$expectation->at($_[1]); |
5675
|
|
|
|
|
|
|
|
5676
|
31
|
|
|
|
|
122
|
my $thisline; |
5677
|
31
|
|
|
|
|
119
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
5678
|
|
|
|
|
|
|
|
5679
|
|
|
|
|
|
|
|
5680
|
|
|
|
|
|
|
|
5681
|
31
|
|
33
|
|
|
276
|
while (!$_matched && !$commit) |
5682
|
|
|
|
|
|
|
{ |
5683
|
|
|
|
|
|
|
|
5684
|
31
|
50
|
|
|
|
80
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
5685
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
5686
|
|
|
|
|
|
|
q{bodyloc}, |
5687
|
|
|
|
|
|
|
$tracelevel) |
5688
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5689
|
31
|
|
|
|
|
80
|
my $thisprod = $thisrule->{"prods"}[0]; |
5690
|
31
|
|
|
|
|
62
|
$text = $_[1]; |
5691
|
31
|
|
|
|
|
77
|
my $_savetext; |
5692
|
31
|
|
|
|
|
66
|
@item = (q{bodyloc}); |
5693
|
31
|
|
|
|
|
74
|
%item = (__RULE__ => q{bodyloc}); |
5694
|
31
|
|
|
|
|
49
|
my $repcount = 0; |
5695
|
|
|
|
|
|
|
|
5696
|
|
|
|
|
|
|
|
5697
|
31
|
50
|
|
|
|
77
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
5698
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5699
|
|
|
|
|
|
|
q{bodyloc}, |
5700
|
|
|
|
|
|
|
$tracelevel) |
5701
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5702
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
278
|
|
|
31
|
|
|
|
|
43
|
|
5703
|
31
|
|
|
|
|
82
|
$expectation->is(q{})->at($text); |
5704
|
31
|
100
|
|
31
|
|
333
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
31
|
|
|
|
|
62
|
|
5705
|
|
|
|
|
|
|
{ |
5706
|
|
|
|
|
|
|
|
5707
|
9
|
50
|
|
|
|
24
|
Parse::RecDescent::_trace(q{<>}, |
5708
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5709
|
|
|
|
|
|
|
q{bodyloc}, |
5710
|
|
|
|
|
|
|
$tracelevel) |
5711
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5712
|
9
|
|
|
|
|
22
|
$expectation->failed(); |
5713
|
9
|
|
|
|
|
33
|
last; |
5714
|
|
|
|
|
|
|
} |
5715
|
22
|
50
|
|
|
|
109
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
5716
|
|
|
|
|
|
|
. $_tok . q{]}, |
5717
|
|
|
|
|
|
|
|
5718
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5719
|
|
|
|
|
|
|
q{bodyloc}, |
5720
|
|
|
|
|
|
|
$tracelevel) |
5721
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5722
|
22
|
|
|
|
|
59
|
$item{q{NIL}} = $_tok; |
5723
|
22
|
|
|
|
|
100
|
push @item, $_tok; |
5724
|
|
|
|
|
|
|
|
5725
|
|
|
|
|
|
|
} |
5726
|
|
|
|
|
|
|
|
5727
|
22
|
50
|
|
|
|
106
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
5728
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5729
|
|
|
|
|
|
|
q{bodyloc}, |
5730
|
|
|
|
|
|
|
$tracelevel) |
5731
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5732
|
|
|
|
|
|
|
|
5733
|
|
|
|
|
|
|
|
5734
|
|
|
|
|
|
|
|
5735
|
22
|
|
|
|
|
54
|
$_matched = 1; |
5736
|
22
|
|
|
|
|
52
|
last; |
5737
|
|
|
|
|
|
|
} |
5738
|
|
|
|
|
|
|
|
5739
|
|
|
|
|
|
|
splice |
5740
|
31
|
100
|
|
|
|
92
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
9
|
|
|
|
|
28
|
|
5741
|
|
|
|
|
|
|
|
5742
|
31
|
|
66
|
|
|
117
|
while (!$_matched && !$commit) |
5743
|
|
|
|
|
|
|
{ |
5744
|
|
|
|
|
|
|
|
5745
|
9
|
50
|
|
|
|
22
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
5746
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
5747
|
|
|
|
|
|
|
q{bodyloc}, |
5748
|
|
|
|
|
|
|
$tracelevel) |
5749
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5750
|
9
|
|
|
|
|
20
|
my $thisprod = $thisrule->{"prods"}[1]; |
5751
|
9
|
|
|
|
|
15
|
$text = $_[1]; |
5752
|
9
|
|
|
|
|
13
|
my $_savetext; |
5753
|
9
|
|
|
|
|
21
|
@item = (q{bodyloc}); |
5754
|
9
|
|
|
|
|
20
|
%item = (__RULE__ => q{bodyloc}); |
5755
|
9
|
|
|
|
|
15
|
my $repcount = 0; |
5756
|
|
|
|
|
|
|
|
5757
|
|
|
|
|
|
|
|
5758
|
9
|
50
|
|
|
|
20
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
5759
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5760
|
|
|
|
|
|
|
q{bodyloc}, |
5761
|
|
|
|
|
|
|
$tracelevel) |
5762
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5763
|
1
|
|
|
1
|
|
45
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
4
|
|
|
1
|
|
|
|
|
433
|
|
|
9
|
|
|
|
|
20
|
|
5764
|
9
|
|
|
|
|
23
|
$expectation->is(q{})->at($text); |
5765
|
9
|
50
|
|
9
|
|
105
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
9
|
|
|
|
|
18
|
|
5766
|
|
|
|
|
|
|
{ |
5767
|
|
|
|
|
|
|
|
5768
|
9
|
50
|
|
|
|
27
|
Parse::RecDescent::_trace(q{<>}, |
5769
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5770
|
|
|
|
|
|
|
q{bodyloc}, |
5771
|
|
|
|
|
|
|
$tracelevel) |
5772
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5773
|
9
|
|
|
|
|
28
|
$expectation->failed(); |
5774
|
9
|
|
|
|
|
33
|
last; |
5775
|
|
|
|
|
|
|
} |
5776
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
5777
|
|
|
|
|
|
|
. $_tok . q{]}, |
5778
|
|
|
|
|
|
|
|
5779
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5780
|
|
|
|
|
|
|
q{bodyloc}, |
5781
|
|
|
|
|
|
|
$tracelevel) |
5782
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5783
|
0
|
|
|
|
|
0
|
$item{q{STRING}} = $_tok; |
5784
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
5785
|
|
|
|
|
|
|
|
5786
|
|
|
|
|
|
|
} |
5787
|
|
|
|
|
|
|
|
5788
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
5789
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5790
|
|
|
|
|
|
|
q{bodyloc}, |
5791
|
|
|
|
|
|
|
$tracelevel) |
5792
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5793
|
|
|
|
|
|
|
|
5794
|
|
|
|
|
|
|
|
5795
|
|
|
|
|
|
|
|
5796
|
0
|
|
|
|
|
0
|
$_matched = 1; |
5797
|
0
|
|
|
|
|
0
|
last; |
5798
|
|
|
|
|
|
|
} |
5799
|
|
|
|
|
|
|
|
5800
|
|
|
|
|
|
|
splice |
5801
|
31
|
100
|
|
|
|
89
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
9
|
|
|
|
|
19
|
|
5802
|
|
|
|
|
|
|
|
5803
|
31
|
100
|
66
|
|
|
98
|
unless ( $_matched || defined($score) ) |
5804
|
|
|
|
|
|
|
{ |
5805
|
9
|
|
|
|
|
12
|
splice @{$thisparser->{deferred}}, $def_at; |
|
9
|
|
|
|
|
19
|
|
5806
|
|
|
|
|
|
|
|
5807
|
|
|
|
|
|
|
|
5808
|
9
|
|
|
|
|
16
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
5809
|
9
|
50
|
|
|
|
21
|
Parse::RecDescent::_trace(q{<>}, |
5810
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
5811
|
|
|
|
|
|
|
q{bodyloc}, |
5812
|
|
|
|
|
|
|
$tracelevel) |
5813
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5814
|
9
|
|
|
|
|
40
|
return undef; |
5815
|
|
|
|
|
|
|
} |
5816
|
22
|
50
|
33
|
|
|
106
|
if (!defined($return) && defined($score)) |
5817
|
|
|
|
|
|
|
{ |
5818
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
5819
|
|
|
|
|
|
|
q{bodyloc}, |
5820
|
|
|
|
|
|
|
$tracelevel) |
5821
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5822
|
0
|
|
|
|
|
0
|
$return = $score_return; |
5823
|
|
|
|
|
|
|
} |
5824
|
22
|
|
|
|
|
45
|
splice @{$thisparser->{errors}}, $err_at; |
|
22
|
|
|
|
|
52
|
|
5825
|
22
|
50
|
|
|
|
74
|
$return = $item[$#item] unless defined $return; |
5826
|
22
|
50
|
|
|
|
61
|
if (defined $::RD_TRACE) |
5827
|
|
|
|
|
|
|
{ |
5828
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
5829
|
|
|
|
|
|
|
$return . q{])}, "", |
5830
|
|
|
|
|
|
|
q{bodyloc}, |
5831
|
|
|
|
|
|
|
$tracelevel); |
5832
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
5833
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
5834
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5835
|
|
|
|
|
|
|
, q{bodyloc}, |
5836
|
|
|
|
|
|
|
$tracelevel) |
5837
|
|
|
|
|
|
|
} |
5838
|
22
|
|
|
|
|
44
|
$_[1] = $text; |
5839
|
22
|
|
|
|
|
115
|
return $return; |
5840
|
|
|
|
|
|
|
} |
5841
|
|
|
|
|
|
|
|
5842
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
5843
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyparms |
5844
|
|
|
|
|
|
|
{ |
5845
|
105
|
|
|
105
|
|
1456
|
my $thisparser = $_[0]; |
5846
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
379
|
|
5847
|
105
|
|
50
|
|
|
280
|
local $tracelevel = ($tracelevel||0)+1; |
5848
|
105
|
|
|
|
|
169
|
$ERRORS = 0; |
5849
|
105
|
|
|
|
|
198
|
my $thisrule = $thisparser->{"rules"}{"bodyparms"}; |
5850
|
|
|
|
|
|
|
|
5851
|
105
|
50
|
|
|
|
218
|
Parse::RecDescent::_trace(q{Trying rule: [bodyparms]}, |
5852
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
5853
|
|
|
|
|
|
|
q{bodyparms}, |
5854
|
|
|
|
|
|
|
$tracelevel) |
5855
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5856
|
|
|
|
|
|
|
|
5857
|
105
|
|
|
|
|
150
|
my $def_at = @{$thisparser->{deferred}}; |
|
105
|
|
|
|
|
200
|
|
5858
|
105
|
|
|
|
|
163
|
my $err_at = @{$thisparser->{errors}}; |
|
105
|
|
|
|
|
178
|
|
5859
|
|
|
|
|
|
|
|
5860
|
105
|
|
|
|
|
264
|
my $score; |
5861
|
|
|
|
|
|
|
my $score_return; |
5862
|
105
|
|
|
|
|
0
|
my $_tok; |
5863
|
105
|
|
|
|
|
153
|
my $return = undef; |
5864
|
105
|
|
|
|
|
151
|
my $_matched=0; |
5865
|
105
|
|
|
|
|
148
|
my $commit=0; |
5866
|
105
|
|
|
|
|
193
|
my @item = (); |
5867
|
105
|
|
|
|
|
174
|
my %item = (); |
5868
|
105
|
|
|
|
|
161
|
my $repeating = $_[2]; |
5869
|
105
|
|
|
|
|
171
|
my $_noactions = $_[3]; |
5870
|
105
|
50
|
|
|
|
220
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
105
|
|
|
|
|
150
|
|
|
105
|
|
|
|
|
183
|
|
5871
|
105
|
|
|
|
|
173
|
my $_itempos = $_[5]; |
5872
|
105
|
50
|
|
|
|
246
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
5873
|
105
|
|
|
|
|
234
|
my $text; |
5874
|
|
|
|
|
|
|
my $lastsep; |
5875
|
105
|
|
|
|
|
0
|
my $current_match; |
5876
|
105
|
|
|
|
|
290
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or KVPAIRS}); |
5877
|
105
|
|
|
|
|
725
|
$expectation->at($_[1]); |
5878
|
|
|
|
|
|
|
|
5879
|
105
|
|
|
|
|
427
|
my $thisline; |
5880
|
105
|
|
|
|
|
388
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
5881
|
|
|
|
|
|
|
|
5882
|
|
|
|
|
|
|
|
5883
|
|
|
|
|
|
|
|
5884
|
105
|
|
33
|
|
|
890
|
while (!$_matched && !$commit) |
5885
|
|
|
|
|
|
|
{ |
5886
|
|
|
|
|
|
|
|
5887
|
105
|
50
|
|
|
|
232
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
5888
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
5889
|
|
|
|
|
|
|
q{bodyparms}, |
5890
|
|
|
|
|
|
|
$tracelevel) |
5891
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5892
|
105
|
|
|
|
|
233
|
my $thisprod = $thisrule->{"prods"}[0]; |
5893
|
105
|
|
|
|
|
181
|
$text = $_[1]; |
5894
|
105
|
|
|
|
|
150
|
my $_savetext; |
5895
|
105
|
|
|
|
|
201
|
@item = (q{bodyparms}); |
5896
|
105
|
|
|
|
|
207
|
%item = (__RULE__ => q{bodyparms}); |
5897
|
105
|
|
|
|
|
166
|
my $repcount = 0; |
5898
|
|
|
|
|
|
|
|
5899
|
|
|
|
|
|
|
|
5900
|
105
|
50
|
|
|
|
198
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
5901
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5902
|
|
|
|
|
|
|
q{bodyparms}, |
5903
|
|
|
|
|
|
|
$tracelevel) |
5904
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5905
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
281
|
|
|
105
|
|
|
|
|
162
|
|
5906
|
105
|
|
|
|
|
235
|
$expectation->is(q{})->at($text); |
5907
|
105
|
100
|
|
105
|
|
951
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
105
|
|
|
|
|
199
|
|
5908
|
|
|
|
|
|
|
{ |
5909
|
|
|
|
|
|
|
|
5910
|
82
|
50
|
|
|
|
183
|
Parse::RecDescent::_trace(q{<>}, |
5911
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5912
|
|
|
|
|
|
|
q{bodyparms}, |
5913
|
|
|
|
|
|
|
$tracelevel) |
5914
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5915
|
82
|
|
|
|
|
236
|
$expectation->failed(); |
5916
|
82
|
|
|
|
|
300
|
last; |
5917
|
|
|
|
|
|
|
} |
5918
|
23
|
50
|
|
|
|
111
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
5919
|
|
|
|
|
|
|
. $_tok . q{]}, |
5920
|
|
|
|
|
|
|
|
5921
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5922
|
|
|
|
|
|
|
q{bodyparms}, |
5923
|
|
|
|
|
|
|
$tracelevel) |
5924
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5925
|
23
|
|
|
|
|
63
|
$item{q{NIL}} = $_tok; |
5926
|
23
|
|
|
|
|
56
|
push @item, $_tok; |
5927
|
|
|
|
|
|
|
|
5928
|
|
|
|
|
|
|
} |
5929
|
|
|
|
|
|
|
|
5930
|
23
|
50
|
|
|
|
60
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
5931
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5932
|
|
|
|
|
|
|
q{bodyparms}, |
5933
|
|
|
|
|
|
|
$tracelevel) |
5934
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5935
|
|
|
|
|
|
|
|
5936
|
|
|
|
|
|
|
|
5937
|
|
|
|
|
|
|
|
5938
|
23
|
|
|
|
|
39
|
$_matched = 1; |
5939
|
23
|
|
|
|
|
58
|
last; |
5940
|
|
|
|
|
|
|
} |
5941
|
|
|
|
|
|
|
|
5942
|
|
|
|
|
|
|
splice |
5943
|
105
|
100
|
|
|
|
403
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
82
|
|
|
|
|
190
|
|
5944
|
|
|
|
|
|
|
|
5945
|
105
|
|
66
|
|
|
344
|
while (!$_matched && !$commit) |
5946
|
|
|
|
|
|
|
{ |
5947
|
|
|
|
|
|
|
|
5948
|
82
|
50
|
|
|
|
187
|
Parse::RecDescent::_trace(q{Trying production: [KVPAIRS]}, |
5949
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
5950
|
|
|
|
|
|
|
q{bodyparms}, |
5951
|
|
|
|
|
|
|
$tracelevel) |
5952
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5953
|
82
|
|
|
|
|
156
|
my $thisprod = $thisrule->{"prods"}[1]; |
5954
|
82
|
|
|
|
|
170
|
$text = $_[1]; |
5955
|
82
|
|
|
|
|
133
|
my $_savetext; |
5956
|
82
|
|
|
|
|
186
|
@item = (q{bodyparms}); |
5957
|
82
|
|
|
|
|
212
|
%item = (__RULE__ => q{bodyparms}); |
5958
|
82
|
|
|
|
|
135
|
my $repcount = 0; |
5959
|
|
|
|
|
|
|
|
5960
|
|
|
|
|
|
|
|
5961
|
82
|
50
|
|
|
|
241
|
Parse::RecDescent::_trace(q{Trying subrule: [KVPAIRS]}, |
5962
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5963
|
|
|
|
|
|
|
q{bodyparms}, |
5964
|
|
|
|
|
|
|
$tracelevel) |
5965
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5966
|
1
|
|
|
1
|
|
7
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
16
|
|
|
1
|
|
|
|
|
503
|
|
|
82
|
|
|
|
|
126
|
|
5967
|
82
|
|
|
|
|
200
|
$expectation->is(q{})->at($text); |
5968
|
82
|
100
|
|
82
|
|
782
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::KVPAIRS($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
82
|
|
|
|
|
166
|
|
5969
|
|
|
|
|
|
|
{ |
5970
|
|
|
|
|
|
|
|
5971
|
3
|
50
|
|
|
|
11
|
Parse::RecDescent::_trace(q{<>}, |
5972
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5973
|
|
|
|
|
|
|
q{bodyparms}, |
5974
|
|
|
|
|
|
|
$tracelevel) |
5975
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5976
|
3
|
|
|
|
|
11
|
$expectation->failed(); |
5977
|
3
|
|
|
|
|
10
|
last; |
5978
|
|
|
|
|
|
|
} |
5979
|
79
|
50
|
|
|
|
293
|
Parse::RecDescent::_trace(q{>>Matched subrule: [KVPAIRS]<< (return value: [} |
5980
|
|
|
|
|
|
|
. $_tok . q{]}, |
5981
|
|
|
|
|
|
|
|
5982
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5983
|
|
|
|
|
|
|
q{bodyparms}, |
5984
|
|
|
|
|
|
|
$tracelevel) |
5985
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5986
|
79
|
|
|
|
|
171
|
$item{q{KVPAIRS}} = $_tok; |
5987
|
79
|
|
|
|
|
155
|
push @item, $_tok; |
5988
|
|
|
|
|
|
|
|
5989
|
|
|
|
|
|
|
} |
5990
|
|
|
|
|
|
|
|
5991
|
79
|
50
|
|
|
|
159
|
Parse::RecDescent::_trace(q{>>Matched production: [KVPAIRS]<<}, |
5992
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
5993
|
|
|
|
|
|
|
q{bodyparms}, |
5994
|
|
|
|
|
|
|
$tracelevel) |
5995
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
5996
|
|
|
|
|
|
|
|
5997
|
|
|
|
|
|
|
|
5998
|
|
|
|
|
|
|
|
5999
|
79
|
|
|
|
|
139
|
$_matched = 1; |
6000
|
79
|
|
|
|
|
151
|
last; |
6001
|
|
|
|
|
|
|
} |
6002
|
|
|
|
|
|
|
|
6003
|
|
|
|
|
|
|
splice |
6004
|
105
|
100
|
|
|
|
215
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
3
|
|
|
|
|
7
|
|
6005
|
|
|
|
|
|
|
|
6006
|
105
|
100
|
66
|
|
|
282
|
unless ( $_matched || defined($score) ) |
6007
|
|
|
|
|
|
|
{ |
6008
|
3
|
|
|
|
|
6
|
splice @{$thisparser->{deferred}}, $def_at; |
|
3
|
|
|
|
|
5
|
|
6009
|
|
|
|
|
|
|
|
6010
|
|
|
|
|
|
|
|
6011
|
3
|
|
|
|
|
6
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
6012
|
3
|
50
|
|
|
|
8
|
Parse::RecDescent::_trace(q{<>}, |
6013
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
6014
|
|
|
|
|
|
|
q{bodyparms}, |
6015
|
|
|
|
|
|
|
$tracelevel) |
6016
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6017
|
3
|
|
|
|
|
13
|
return undef; |
6018
|
|
|
|
|
|
|
} |
6019
|
102
|
50
|
33
|
|
|
393
|
if (!defined($return) && defined($score)) |
6020
|
|
|
|
|
|
|
{ |
6021
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
6022
|
|
|
|
|
|
|
q{bodyparms}, |
6023
|
|
|
|
|
|
|
$tracelevel) |
6024
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6025
|
0
|
|
|
|
|
0
|
$return = $score_return; |
6026
|
|
|
|
|
|
|
} |
6027
|
102
|
|
|
|
|
149
|
splice @{$thisparser->{errors}}, $err_at; |
|
102
|
|
|
|
|
222
|
|
6028
|
102
|
50
|
|
|
|
271
|
$return = $item[$#item] unless defined $return; |
6029
|
102
|
50
|
|
|
|
221
|
if (defined $::RD_TRACE) |
6030
|
|
|
|
|
|
|
{ |
6031
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
6032
|
|
|
|
|
|
|
$return . q{])}, "", |
6033
|
|
|
|
|
|
|
q{bodyparms}, |
6034
|
|
|
|
|
|
|
$tracelevel); |
6035
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
6036
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
6037
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6038
|
|
|
|
|
|
|
, q{bodyparms}, |
6039
|
|
|
|
|
|
|
$tracelevel) |
6040
|
|
|
|
|
|
|
} |
6041
|
102
|
|
|
|
|
168
|
$_[1] = $text; |
6042
|
102
|
|
|
|
|
564
|
return $return; |
6043
|
|
|
|
|
|
|
} |
6044
|
|
|
|
|
|
|
|
6045
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
6046
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodysize |
6047
|
|
|
|
|
|
|
{ |
6048
|
74
|
|
|
74
|
|
913
|
my $thisparser = $_[0]; |
6049
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
521
|
|
6050
|
74
|
|
50
|
|
|
180
|
local $tracelevel = ($tracelevel||0)+1; |
6051
|
74
|
|
|
|
|
109
|
$ERRORS = 0; |
6052
|
74
|
|
|
|
|
164
|
my $thisrule = $thisparser->{"rules"}{"bodysize"}; |
6053
|
|
|
|
|
|
|
|
6054
|
74
|
50
|
|
|
|
178
|
Parse::RecDescent::_trace(q{Trying rule: [bodysize]}, |
6055
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
6056
|
|
|
|
|
|
|
q{bodysize}, |
6057
|
|
|
|
|
|
|
$tracelevel) |
6058
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6059
|
|
|
|
|
|
|
|
6060
|
74
|
|
|
|
|
104
|
my $def_at = @{$thisparser->{deferred}}; |
|
74
|
|
|
|
|
147
|
|
6061
|
74
|
|
|
|
|
116
|
my $err_at = @{$thisparser->{errors}}; |
|
74
|
|
|
|
|
121
|
|
6062
|
|
|
|
|
|
|
|
6063
|
74
|
|
|
|
|
179
|
my $score; |
6064
|
|
|
|
|
|
|
my $score_return; |
6065
|
74
|
|
|
|
|
0
|
my $_tok; |
6066
|
74
|
|
|
|
|
114
|
my $return = undef; |
6067
|
74
|
|
|
|
|
109
|
my $_matched=0; |
6068
|
74
|
|
|
|
|
122
|
my $commit=0; |
6069
|
74
|
|
|
|
|
147
|
my @item = (); |
6070
|
74
|
|
|
|
|
145
|
my %item = (); |
6071
|
74
|
|
|
|
|
124
|
my $repeating = $_[2]; |
6072
|
74
|
|
|
|
|
99
|
my $_noactions = $_[3]; |
6073
|
74
|
50
|
|
|
|
165
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
74
|
|
|
|
|
114
|
|
|
74
|
|
|
|
|
197
|
|
6074
|
74
|
|
|
|
|
115
|
my $_itempos = $_[5]; |
6075
|
74
|
50
|
|
|
|
190
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
6076
|
74
|
|
|
|
|
356
|
my $text; |
6077
|
|
|
|
|
|
|
my $lastsep; |
6078
|
74
|
|
|
|
|
0
|
my $current_match; |
6079
|
74
|
|
|
|
|
203
|
my $expectation = new Parse::RecDescent::Expectation(q{/[()]/, or NUMBER}); |
6080
|
74
|
|
|
|
|
505
|
$expectation->at($_[1]); |
6081
|
|
|
|
|
|
|
|
6082
|
74
|
|
|
|
|
290
|
my $thisline; |
6083
|
74
|
|
|
|
|
284
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
6084
|
|
|
|
|
|
|
|
6085
|
|
|
|
|
|
|
|
6086
|
|
|
|
|
|
|
|
6087
|
74
|
|
33
|
|
|
655
|
while (!$_matched && !$commit) |
6088
|
|
|
|
|
|
|
{ |
6089
|
|
|
|
|
|
|
|
6090
|
74
|
50
|
|
|
|
175
|
Parse::RecDescent::_trace(q{Trying production: [/[()]/ NIL]}, |
6091
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
6092
|
|
|
|
|
|
|
q{bodysize}, |
6093
|
|
|
|
|
|
|
$tracelevel) |
6094
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6095
|
74
|
|
|
|
|
162
|
my $thisprod = $thisrule->{"prods"}[0]; |
6096
|
74
|
|
|
|
|
148
|
$text = $_[1]; |
6097
|
74
|
|
|
|
|
110
|
my $_savetext; |
6098
|
74
|
|
|
|
|
154
|
@item = (q{bodysize}); |
6099
|
74
|
|
|
|
|
143
|
%item = (__RULE__ => q{bodysize}); |
6100
|
74
|
|
|
|
|
124
|
my $repcount = 0; |
6101
|
|
|
|
|
|
|
|
6102
|
|
|
|
|
|
|
|
6103
|
74
|
50
|
|
|
|
176
|
Parse::RecDescent::_trace(q{Trying terminal: [/[()]/]}, Parse::RecDescent::_tracefirst($text), |
6104
|
|
|
|
|
|
|
q{bodysize}, |
6105
|
|
|
|
|
|
|
$tracelevel) |
6106
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6107
|
74
|
|
|
|
|
129
|
undef $lastsep; |
6108
|
74
|
|
|
|
|
173
|
$expectation->is(q{})->at($text); |
6109
|
74
|
|
|
|
|
556
|
$_savetext = $text; |
6110
|
|
|
|
|
|
|
|
6111
|
74
|
50
|
33
|
|
|
490
|
if ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:[()])/) |
|
74
|
50
|
|
|
|
754
|
|
6112
|
|
|
|
|
|
|
{ |
6113
|
0
|
|
|
|
|
0
|
$text = $_savetext; |
6114
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
6115
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
6116
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
6117
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6118
|
|
|
|
|
|
|
|
6119
|
0
|
|
|
|
|
0
|
last; |
6120
|
|
|
|
|
|
|
} |
6121
|
74
|
|
|
|
|
345
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
6122
|
74
|
|
|
|
|
199
|
substr($text,0,length($current_match),q{}); |
6123
|
74
|
50
|
|
|
|
156
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
6124
|
|
|
|
|
|
|
. $current_match . q{])}, |
6125
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
6126
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6127
|
74
|
|
|
|
|
191
|
push @item, $item{__PATTERN1__}=$current_match; |
6128
|
74
|
|
|
|
|
157
|
$text = $_savetext; |
6129
|
|
|
|
|
|
|
|
6130
|
74
|
50
|
|
|
|
167
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
6131
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6132
|
|
|
|
|
|
|
q{bodysize}, |
6133
|
|
|
|
|
|
|
$tracelevel) |
6134
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6135
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
320
|
|
|
74
|
|
|
|
|
105
|
|
6136
|
74
|
|
|
|
|
202
|
$expectation->is(q{NIL})->at($text); |
6137
|
74
|
50
|
|
74
|
|
756
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
74
|
|
|
|
|
151
|
|
6138
|
|
|
|
|
|
|
{ |
6139
|
|
|
|
|
|
|
|
6140
|
74
|
50
|
|
|
|
149
|
Parse::RecDescent::_trace(q{<>}, |
6141
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6142
|
|
|
|
|
|
|
q{bodysize}, |
6143
|
|
|
|
|
|
|
$tracelevel) |
6144
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6145
|
74
|
|
|
|
|
230
|
$expectation->failed(); |
6146
|
74
|
|
|
|
|
650
|
last; |
6147
|
|
|
|
|
|
|
} |
6148
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
6149
|
|
|
|
|
|
|
. $_tok . q{]}, |
6150
|
|
|
|
|
|
|
|
6151
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6152
|
|
|
|
|
|
|
q{bodysize}, |
6153
|
|
|
|
|
|
|
$tracelevel) |
6154
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6155
|
0
|
|
|
|
|
0
|
$item{q{NIL}} = $_tok; |
6156
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
6157
|
|
|
|
|
|
|
|
6158
|
|
|
|
|
|
|
} |
6159
|
|
|
|
|
|
|
|
6160
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [/[()]/ NIL]<<}, |
6161
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6162
|
|
|
|
|
|
|
q{bodysize}, |
6163
|
|
|
|
|
|
|
$tracelevel) |
6164
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6165
|
|
|
|
|
|
|
|
6166
|
|
|
|
|
|
|
|
6167
|
|
|
|
|
|
|
|
6168
|
0
|
|
|
|
|
0
|
$_matched = 1; |
6169
|
0
|
|
|
|
|
0
|
last; |
6170
|
|
|
|
|
|
|
} |
6171
|
|
|
|
|
|
|
|
6172
|
|
|
|
|
|
|
splice |
6173
|
74
|
50
|
|
|
|
265
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
74
|
|
|
|
|
156
|
|
6174
|
|
|
|
|
|
|
|
6175
|
74
|
|
33
|
|
|
280
|
while (!$_matched && !$commit) |
6176
|
|
|
|
|
|
|
{ |
6177
|
|
|
|
|
|
|
|
6178
|
74
|
50
|
|
|
|
160
|
Parse::RecDescent::_trace(q{Trying production: [NUMBER]}, |
6179
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
6180
|
|
|
|
|
|
|
q{bodysize}, |
6181
|
|
|
|
|
|
|
$tracelevel) |
6182
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6183
|
74
|
|
|
|
|
137
|
my $thisprod = $thisrule->{"prods"}[1]; |
6184
|
74
|
|
|
|
|
160
|
$text = $_[1]; |
6185
|
74
|
|
|
|
|
129
|
my $_savetext; |
6186
|
74
|
|
|
|
|
177
|
@item = (q{bodysize}); |
6187
|
74
|
|
|
|
|
190
|
%item = (__RULE__ => q{bodysize}); |
6188
|
74
|
|
|
|
|
123
|
my $repcount = 0; |
6189
|
|
|
|
|
|
|
|
6190
|
|
|
|
|
|
|
|
6191
|
74
|
50
|
|
|
|
156
|
Parse::RecDescent::_trace(q{Trying subrule: [NUMBER]}, |
6192
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6193
|
|
|
|
|
|
|
q{bodysize}, |
6194
|
|
|
|
|
|
|
$tracelevel) |
6195
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6196
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
508
|
|
|
74
|
|
|
|
|
126
|
|
6197
|
74
|
|
|
|
|
200
|
$expectation->is(q{})->at($text); |
6198
|
74
|
50
|
|
74
|
|
722
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NUMBER($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
74
|
|
|
|
|
155
|
|
6199
|
|
|
|
|
|
|
{ |
6200
|
|
|
|
|
|
|
|
6201
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
6202
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6203
|
|
|
|
|
|
|
q{bodysize}, |
6204
|
|
|
|
|
|
|
$tracelevel) |
6205
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6206
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
6207
|
0
|
|
|
|
|
0
|
last; |
6208
|
|
|
|
|
|
|
} |
6209
|
74
|
50
|
|
|
|
275
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NUMBER]<< (return value: [} |
6210
|
|
|
|
|
|
|
. $_tok . q{]}, |
6211
|
|
|
|
|
|
|
|
6212
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6213
|
|
|
|
|
|
|
q{bodysize}, |
6214
|
|
|
|
|
|
|
$tracelevel) |
6215
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6216
|
74
|
|
|
|
|
201
|
$item{q{NUMBER}} = $_tok; |
6217
|
74
|
|
|
|
|
126
|
push @item, $_tok; |
6218
|
|
|
|
|
|
|
|
6219
|
|
|
|
|
|
|
} |
6220
|
|
|
|
|
|
|
|
6221
|
74
|
50
|
|
|
|
151
|
Parse::RecDescent::_trace(q{>>Matched production: [NUMBER]<<}, |
6222
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6223
|
|
|
|
|
|
|
q{bodysize}, |
6224
|
|
|
|
|
|
|
$tracelevel) |
6225
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6226
|
|
|
|
|
|
|
|
6227
|
|
|
|
|
|
|
|
6228
|
|
|
|
|
|
|
|
6229
|
74
|
|
|
|
|
115
|
$_matched = 1; |
6230
|
74
|
|
|
|
|
122
|
last; |
6231
|
|
|
|
|
|
|
} |
6232
|
|
|
|
|
|
|
|
6233
|
|
|
|
|
|
|
splice |
6234
|
74
|
50
|
|
|
|
155
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
6235
|
|
|
|
|
|
|
|
6236
|
74
|
50
|
33
|
|
|
178
|
unless ( $_matched || defined($score) ) |
6237
|
|
|
|
|
|
|
{ |
6238
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
6239
|
|
|
|
|
|
|
|
6240
|
|
|
|
|
|
|
|
6241
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
6242
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
6243
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
6244
|
|
|
|
|
|
|
q{bodysize}, |
6245
|
|
|
|
|
|
|
$tracelevel) |
6246
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6247
|
0
|
|
|
|
|
0
|
return undef; |
6248
|
|
|
|
|
|
|
} |
6249
|
74
|
50
|
33
|
|
|
256
|
if (!defined($return) && defined($score)) |
6250
|
|
|
|
|
|
|
{ |
6251
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
6252
|
|
|
|
|
|
|
q{bodysize}, |
6253
|
|
|
|
|
|
|
$tracelevel) |
6254
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6255
|
0
|
|
|
|
|
0
|
$return = $score_return; |
6256
|
|
|
|
|
|
|
} |
6257
|
74
|
|
|
|
|
111
|
splice @{$thisparser->{errors}}, $err_at; |
|
74
|
|
|
|
|
178
|
|
6258
|
74
|
50
|
|
|
|
196
|
$return = $item[$#item] unless defined $return; |
6259
|
74
|
50
|
|
|
|
178
|
if (defined $::RD_TRACE) |
6260
|
|
|
|
|
|
|
{ |
6261
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
6262
|
|
|
|
|
|
|
$return . q{])}, "", |
6263
|
|
|
|
|
|
|
q{bodysize}, |
6264
|
|
|
|
|
|
|
$tracelevel); |
6265
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
6266
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
6267
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6268
|
|
|
|
|
|
|
, q{bodysize}, |
6269
|
|
|
|
|
|
|
$tracelevel) |
6270
|
|
|
|
|
|
|
} |
6271
|
74
|
|
|
|
|
135
|
$_[1] = $text; |
6272
|
74
|
|
|
|
|
418
|
return $return; |
6273
|
|
|
|
|
|
|
} |
6274
|
|
|
|
|
|
|
|
6275
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
6276
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodystructure |
6277
|
|
|
|
|
|
|
{ |
6278
|
21
|
|
|
21
|
|
443
|
my $thisparser = $_[0]; |
6279
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
1208
|
|
6280
|
21
|
|
50
|
|
|
65
|
local $tracelevel = ($tracelevel||0)+1; |
6281
|
21
|
|
|
|
|
42
|
$ERRORS = 0; |
6282
|
21
|
|
|
|
|
81
|
my $thisrule = $thisparser->{"rules"}{"bodystructure"}; |
6283
|
|
|
|
|
|
|
|
6284
|
21
|
50
|
|
|
|
52
|
Parse::RecDescent::_trace(q{Trying rule: [bodystructure]}, |
6285
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
6286
|
|
|
|
|
|
|
q{bodystructure}, |
6287
|
|
|
|
|
|
|
$tracelevel) |
6288
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6289
|
|
|
|
|
|
|
|
6290
|
21
|
|
|
|
|
39
|
my $def_at = @{$thisparser->{deferred}}; |
|
21
|
|
|
|
|
47
|
|
6291
|
21
|
|
|
|
|
38
|
my $err_at = @{$thisparser->{errors}}; |
|
21
|
|
|
|
|
45
|
|
6292
|
|
|
|
|
|
|
|
6293
|
21
|
|
|
|
|
62
|
my $score; |
6294
|
|
|
|
|
|
|
my $score_return; |
6295
|
21
|
|
|
|
|
0
|
my $_tok; |
6296
|
21
|
|
|
|
|
38
|
my $return = undef; |
6297
|
21
|
|
|
|
|
38
|
my $_matched=0; |
6298
|
21
|
|
|
|
|
35
|
my $commit=0; |
6299
|
21
|
|
|
|
|
45
|
my @item = (); |
6300
|
21
|
|
|
|
|
47
|
my %item = (); |
6301
|
21
|
|
|
|
|
40
|
my $repeating = $_[2]; |
6302
|
21
|
|
|
|
|
34
|
my $_noactions = $_[3]; |
6303
|
21
|
50
|
|
|
|
64
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
21
|
|
|
|
|
34
|
|
|
21
|
|
|
|
|
38
|
|
6304
|
21
|
|
|
|
|
40
|
my $_itempos = $_[5]; |
6305
|
21
|
50
|
|
|
|
66
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
6306
|
21
|
|
|
|
|
60
|
my $text; |
6307
|
|
|
|
|
|
|
my $lastsep; |
6308
|
21
|
|
|
|
|
0
|
my $current_match; |
6309
|
21
|
|
|
|
|
54
|
my $expectation = new Parse::RecDescent::Expectation(q{'('}); |
6310
|
21
|
|
|
|
|
159
|
$expectation->at($_[1]); |
6311
|
|
|
|
|
|
|
|
6312
|
21
|
|
|
|
|
97
|
my $thisline; |
6313
|
21
|
|
|
|
|
92
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
6314
|
|
|
|
|
|
|
|
6315
|
|
|
|
|
|
|
|
6316
|
|
|
|
|
|
|
|
6317
|
21
|
|
33
|
|
|
217
|
while (!$_matched && !$commit) |
6318
|
|
|
|
|
|
|
{ |
6319
|
|
|
|
|
|
|
|
6320
|
21
|
50
|
|
|
|
53
|
Parse::RecDescent::_trace(q{Trying production: ['(' part ')']}, |
6321
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
6322
|
|
|
|
|
|
|
q{bodystructure}, |
6323
|
|
|
|
|
|
|
$tracelevel) |
6324
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6325
|
21
|
|
|
|
|
60
|
my $thisprod = $thisrule->{"prods"}[0]; |
6326
|
21
|
|
|
|
|
51
|
$text = $_[1]; |
6327
|
21
|
|
|
|
|
38
|
my $_savetext; |
6328
|
21
|
|
|
|
|
64
|
@item = (q{bodystructure}); |
6329
|
21
|
|
|
|
|
47
|
%item = (__RULE__ => q{bodystructure}); |
6330
|
21
|
|
|
|
|
40
|
my $repcount = 0; |
6331
|
|
|
|
|
|
|
|
6332
|
|
|
|
|
|
|
|
6333
|
21
|
50
|
|
|
|
49
|
Parse::RecDescent::_trace(q{Trying terminal: ['(']}, |
6334
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6335
|
|
|
|
|
|
|
q{bodystructure}, |
6336
|
|
|
|
|
|
|
$tracelevel) |
6337
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6338
|
21
|
|
|
|
|
45
|
undef $lastsep; |
6339
|
21
|
|
|
|
|
51
|
$expectation->is(q{})->at($text); |
6340
|
|
|
|
|
|
|
|
6341
|
|
|
|
|
|
|
|
6342
|
21
|
100
|
33
|
|
|
333
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and do { $_tok = "("; 1 } and |
|
21
|
100
|
66
|
|
|
181
|
|
|
21
|
|
66
|
|
|
45
|
|
|
21
|
|
|
|
|
134
|
|
6343
|
|
|
|
|
|
|
substr($text,0,length($_tok)) eq $_tok and |
6344
|
20
|
|
|
|
|
49
|
do { substr($text,0,length($_tok)) = ""; 1; } |
|
20
|
|
|
|
|
66
|
|
6345
|
|
|
|
|
|
|
) |
6346
|
|
|
|
|
|
|
{ |
6347
|
1
|
50
|
|
|
|
10
|
$text = $lastsep . $text if defined $lastsep; |
6348
|
|
|
|
|
|
|
|
6349
|
1
|
|
|
|
|
4
|
$expectation->failed(); |
6350
|
1
|
50
|
|
|
|
6
|
Parse::RecDescent::_trace(q{<>}, |
6351
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
6352
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6353
|
1
|
|
|
|
|
3
|
last; |
6354
|
|
|
|
|
|
|
} |
6355
|
20
|
50
|
|
|
|
65
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
6356
|
|
|
|
|
|
|
. $_tok . q{])}, |
6357
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
6358
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6359
|
20
|
|
|
|
|
61
|
push @item, $item{__STRING1__}=$_tok; |
6360
|
|
|
|
|
|
|
|
6361
|
|
|
|
|
|
|
|
6362
|
20
|
50
|
|
|
|
51
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [part]}, |
6363
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6364
|
|
|
|
|
|
|
q{bodystructure}, |
6365
|
|
|
|
|
|
|
$tracelevel) |
6366
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6367
|
20
|
|
|
|
|
69
|
$expectation->is(q{part})->at($text); |
6368
|
|
|
|
|
|
|
|
6369
|
20
|
50
|
|
40
|
|
324
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::part, 1, 100000000, $_noactions,$expectation,sub { \@arg },undef))) |
|
40
|
|
|
|
|
83
|
|
6370
|
|
|
|
|
|
|
{ |
6371
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
6372
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6373
|
|
|
|
|
|
|
q{bodystructure}, |
6374
|
|
|
|
|
|
|
$tracelevel) |
6375
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6376
|
0
|
|
|
|
|
0
|
last; |
6377
|
|
|
|
|
|
|
} |
6378
|
20
|
50
|
|
|
|
336
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [part]<< (} |
6379
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
6380
|
|
|
|
|
|
|
|
6381
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6382
|
|
|
|
|
|
|
q{bodystructure}, |
6383
|
|
|
|
|
|
|
$tracelevel) |
6384
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6385
|
20
|
|
|
|
|
66
|
$item{q{part(s)}} = $_tok; |
6386
|
20
|
|
|
|
|
51
|
push @item, $_tok; |
6387
|
|
|
|
|
|
|
|
6388
|
|
|
|
|
|
|
|
6389
|
|
|
|
|
|
|
|
6390
|
20
|
50
|
|
|
|
47
|
Parse::RecDescent::_trace(q{Trying terminal: [')']}, |
6391
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6392
|
|
|
|
|
|
|
q{bodystructure}, |
6393
|
|
|
|
|
|
|
$tracelevel) |
6394
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6395
|
20
|
|
|
|
|
38
|
undef $lastsep; |
6396
|
20
|
|
|
|
|
48
|
$expectation->is(q{')'})->at($text); |
6397
|
|
|
|
|
|
|
|
6398
|
|
|
|
|
|
|
|
6399
|
20
|
50
|
33
|
|
|
288
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and do { $_tok = ")"; 1 } and |
|
20
|
50
|
33
|
|
|
156
|
|
|
20
|
|
33
|
|
|
52
|
|
|
20
|
|
|
|
|
141
|
|
6400
|
|
|
|
|
|
|
substr($text,0,length($_tok)) eq $_tok and |
6401
|
20
|
|
|
|
|
53
|
do { substr($text,0,length($_tok)) = ""; 1; } |
|
20
|
|
|
|
|
74
|
|
6402
|
|
|
|
|
|
|
) |
6403
|
|
|
|
|
|
|
{ |
6404
|
0
|
0
|
|
|
|
0
|
$text = $lastsep . $text if defined $lastsep; |
6405
|
|
|
|
|
|
|
|
6406
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
6407
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
6408
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
6409
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6410
|
0
|
|
|
|
|
0
|
last; |
6411
|
|
|
|
|
|
|
} |
6412
|
20
|
50
|
|
|
|
63
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
6413
|
|
|
|
|
|
|
. $_tok . q{])}, |
6414
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
6415
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6416
|
20
|
|
|
|
|
64
|
push @item, $item{__STRING2__}=$_tok; |
6417
|
|
|
|
|
|
|
|
6418
|
|
|
|
|
|
|
|
6419
|
20
|
50
|
|
|
|
46
|
Parse::RecDescent::_trace(q{Trying action}, |
6420
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6421
|
|
|
|
|
|
|
q{bodystructure}, |
6422
|
|
|
|
|
|
|
$tracelevel) |
6423
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6424
|
|
|
|
|
|
|
|
6425
|
|
|
|
|
|
|
|
6426
|
20
|
50
|
|
|
|
55
|
$_tok = ($_noactions) ? 0 : do { $return = $item{'part(s)'} }; |
|
20
|
|
|
|
|
41
|
|
6427
|
20
|
50
|
|
|
|
55
|
unless (defined $_tok) |
6428
|
|
|
|
|
|
|
{ |
6429
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
6430
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6431
|
0
|
|
|
|
|
0
|
last; |
6432
|
|
|
|
|
|
|
} |
6433
|
20
|
50
|
|
|
|
62
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
6434
|
|
|
|
|
|
|
. $_tok . q{])}, |
6435
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
6436
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6437
|
20
|
|
|
|
|
42
|
push @item, $_tok; |
6438
|
20
|
|
|
|
|
46
|
$item{__ACTION1__}=$_tok; |
6439
|
|
|
|
|
|
|
|
6440
|
|
|
|
|
|
|
|
6441
|
20
|
50
|
|
|
|
41
|
Parse::RecDescent::_trace(q{>>Matched production: ['(' part ')']<<}, |
6442
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6443
|
|
|
|
|
|
|
q{bodystructure}, |
6444
|
|
|
|
|
|
|
$tracelevel) |
6445
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6446
|
|
|
|
|
|
|
|
6447
|
|
|
|
|
|
|
|
6448
|
|
|
|
|
|
|
|
6449
|
20
|
|
|
|
|
43
|
$_matched = 1; |
6450
|
20
|
|
|
|
|
48
|
last; |
6451
|
|
|
|
|
|
|
} |
6452
|
|
|
|
|
|
|
|
6453
|
|
|
|
|
|
|
splice |
6454
|
21
|
100
|
|
|
|
51
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
1
|
|
|
|
|
4
|
|
6455
|
|
|
|
|
|
|
|
6456
|
21
|
100
|
66
|
|
|
66
|
unless ( $_matched || defined($score) ) |
6457
|
|
|
|
|
|
|
{ |
6458
|
1
|
|
|
|
|
2
|
splice @{$thisparser->{deferred}}, $def_at; |
|
1
|
|
|
|
|
3
|
|
6459
|
|
|
|
|
|
|
|
6460
|
|
|
|
|
|
|
|
6461
|
1
|
|
|
|
|
3
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
6462
|
1
|
50
|
|
|
|
4
|
Parse::RecDescent::_trace(q{<>}, |
6463
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
6464
|
|
|
|
|
|
|
q{bodystructure}, |
6465
|
|
|
|
|
|
|
$tracelevel) |
6466
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6467
|
1
|
|
|
|
|
6
|
return undef; |
6468
|
|
|
|
|
|
|
} |
6469
|
20
|
50
|
33
|
|
|
78
|
if (!defined($return) && defined($score)) |
6470
|
|
|
|
|
|
|
{ |
6471
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
6472
|
|
|
|
|
|
|
q{bodystructure}, |
6473
|
|
|
|
|
|
|
$tracelevel) |
6474
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6475
|
0
|
|
|
|
|
0
|
$return = $score_return; |
6476
|
|
|
|
|
|
|
} |
6477
|
20
|
|
|
|
|
50
|
splice @{$thisparser->{errors}}, $err_at; |
|
20
|
|
|
|
|
58
|
|
6478
|
20
|
50
|
|
|
|
53
|
$return = $item[$#item] unless defined $return; |
6479
|
20
|
50
|
|
|
|
62
|
if (defined $::RD_TRACE) |
6480
|
|
|
|
|
|
|
{ |
6481
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
6482
|
|
|
|
|
|
|
$return . q{])}, "", |
6483
|
|
|
|
|
|
|
q{bodystructure}, |
6484
|
|
|
|
|
|
|
$tracelevel); |
6485
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
6486
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
6487
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6488
|
|
|
|
|
|
|
, q{bodystructure}, |
6489
|
|
|
|
|
|
|
$tracelevel) |
6490
|
|
|
|
|
|
|
} |
6491
|
20
|
|
|
|
|
71
|
$_[1] = $text; |
6492
|
20
|
|
|
|
|
146
|
return $return; |
6493
|
|
|
|
|
|
|
} |
6494
|
|
|
|
|
|
|
|
6495
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
6496
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodysubtype |
6497
|
|
|
|
|
|
|
{ |
6498
|
84
|
|
|
84
|
|
151
|
my $thisparser = $_[0]; |
6499
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
352
|
|
6500
|
84
|
|
50
|
|
|
216
|
local $tracelevel = ($tracelevel||0)+1; |
6501
|
84
|
|
|
|
|
149
|
$ERRORS = 0; |
6502
|
84
|
|
|
|
|
190
|
my $thisrule = $thisparser->{"rules"}{"bodysubtype"}; |
6503
|
|
|
|
|
|
|
|
6504
|
84
|
50
|
|
|
|
167
|
Parse::RecDescent::_trace(q{Trying rule: [bodysubtype]}, |
6505
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
6506
|
|
|
|
|
|
|
q{bodysubtype}, |
6507
|
|
|
|
|
|
|
$tracelevel) |
6508
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6509
|
|
|
|
|
|
|
|
6510
|
84
|
|
|
|
|
131
|
my $def_at = @{$thisparser->{deferred}}; |
|
84
|
|
|
|
|
168
|
|
6511
|
84
|
|
|
|
|
139
|
my $err_at = @{$thisparser->{errors}}; |
|
84
|
|
|
|
|
156
|
|
6512
|
|
|
|
|
|
|
|
6513
|
84
|
|
|
|
|
216
|
my $score; |
6514
|
|
|
|
|
|
|
my $score_return; |
6515
|
84
|
|
|
|
|
0
|
my $_tok; |
6516
|
84
|
|
|
|
|
183
|
my $return = undef; |
6517
|
84
|
|
|
|
|
121
|
my $_matched=0; |
6518
|
84
|
|
|
|
|
118
|
my $commit=0; |
6519
|
84
|
|
|
|
|
143
|
my @item = (); |
6520
|
84
|
|
|
|
|
145
|
my %item = (); |
6521
|
84
|
|
|
|
|
128
|
my $repeating = $_[2]; |
6522
|
84
|
|
|
|
|
147
|
my $_noactions = $_[3]; |
6523
|
84
|
50
|
|
|
|
188
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
84
|
|
|
|
|
301
|
|
|
84
|
|
|
|
|
185
|
|
6524
|
84
|
|
|
|
|
145
|
my $_itempos = $_[5]; |
6525
|
84
|
50
|
|
|
|
198
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
6526
|
84
|
|
|
|
|
205
|
my $text; |
6527
|
|
|
|
|
|
|
my $lastsep; |
6528
|
84
|
|
|
|
|
0
|
my $current_match; |
6529
|
84
|
|
|
|
|
204
|
my $expectation = new Parse::RecDescent::Expectation(q{PLAIN, or HTML, or NIL, or STRING}); |
6530
|
84
|
|
|
|
|
566
|
$expectation->at($_[1]); |
6531
|
|
|
|
|
|
|
|
6532
|
84
|
|
|
|
|
347
|
my $thisline; |
6533
|
84
|
|
|
|
|
276
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
6534
|
|
|
|
|
|
|
|
6535
|
|
|
|
|
|
|
|
6536
|
|
|
|
|
|
|
|
6537
|
84
|
|
33
|
|
|
655
|
while (!$_matched && !$commit) |
6538
|
|
|
|
|
|
|
{ |
6539
|
|
|
|
|
|
|
|
6540
|
84
|
50
|
|
|
|
223
|
Parse::RecDescent::_trace(q{Trying production: [PLAIN]}, |
6541
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
6542
|
|
|
|
|
|
|
q{bodysubtype}, |
6543
|
|
|
|
|
|
|
$tracelevel) |
6544
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6545
|
84
|
|
|
|
|
194
|
my $thisprod = $thisrule->{"prods"}[0]; |
6546
|
84
|
|
|
|
|
149
|
$text = $_[1]; |
6547
|
84
|
|
|
|
|
142
|
my $_savetext; |
6548
|
84
|
|
|
|
|
243
|
@item = (q{bodysubtype}); |
6549
|
84
|
|
|
|
|
160
|
%item = (__RULE__ => q{bodysubtype}); |
6550
|
84
|
|
|
|
|
138
|
my $repcount = 0; |
6551
|
|
|
|
|
|
|
|
6552
|
|
|
|
|
|
|
|
6553
|
84
|
50
|
|
|
|
166
|
Parse::RecDescent::_trace(q{Trying subrule: [PLAIN]}, |
6554
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6555
|
|
|
|
|
|
|
q{bodysubtype}, |
6556
|
|
|
|
|
|
|
$tracelevel) |
6557
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6558
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
296
|
|
|
84
|
|
|
|
|
155
|
|
6559
|
84
|
|
|
|
|
189
|
$expectation->is(q{})->at($text); |
6560
|
84
|
100
|
|
84
|
|
781
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::PLAIN($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
84
|
|
|
|
|
168
|
|
6561
|
|
|
|
|
|
|
{ |
6562
|
|
|
|
|
|
|
|
6563
|
53
|
50
|
|
|
|
123
|
Parse::RecDescent::_trace(q{<>}, |
6564
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6565
|
|
|
|
|
|
|
q{bodysubtype}, |
6566
|
|
|
|
|
|
|
$tracelevel) |
6567
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6568
|
53
|
|
|
|
|
153
|
$expectation->failed(); |
6569
|
53
|
|
|
|
|
191
|
last; |
6570
|
|
|
|
|
|
|
} |
6571
|
31
|
50
|
|
|
|
120
|
Parse::RecDescent::_trace(q{>>Matched subrule: [PLAIN]<< (return value: [} |
6572
|
|
|
|
|
|
|
. $_tok . q{]}, |
6573
|
|
|
|
|
|
|
|
6574
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6575
|
|
|
|
|
|
|
q{bodysubtype}, |
6576
|
|
|
|
|
|
|
$tracelevel) |
6577
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6578
|
31
|
|
|
|
|
81
|
$item{q{PLAIN}} = $_tok; |
6579
|
31
|
|
|
|
|
72
|
push @item, $_tok; |
6580
|
|
|
|
|
|
|
|
6581
|
|
|
|
|
|
|
} |
6582
|
|
|
|
|
|
|
|
6583
|
31
|
50
|
|
|
|
63
|
Parse::RecDescent::_trace(q{>>Matched production: [PLAIN]<<}, |
6584
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6585
|
|
|
|
|
|
|
q{bodysubtype}, |
6586
|
|
|
|
|
|
|
$tracelevel) |
6587
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6588
|
|
|
|
|
|
|
|
6589
|
|
|
|
|
|
|
|
6590
|
|
|
|
|
|
|
|
6591
|
31
|
|
|
|
|
60
|
$_matched = 1; |
6592
|
31
|
|
|
|
|
52
|
last; |
6593
|
|
|
|
|
|
|
} |
6594
|
|
|
|
|
|
|
|
6595
|
|
|
|
|
|
|
splice |
6596
|
84
|
100
|
|
|
|
270
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
53
|
|
|
|
|
119
|
|
6597
|
|
|
|
|
|
|
|
6598
|
84
|
|
66
|
|
|
295
|
while (!$_matched && !$commit) |
6599
|
|
|
|
|
|
|
{ |
6600
|
|
|
|
|
|
|
|
6601
|
53
|
50
|
|
|
|
118
|
Parse::RecDescent::_trace(q{Trying production: [HTML]}, |
6602
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
6603
|
|
|
|
|
|
|
q{bodysubtype}, |
6604
|
|
|
|
|
|
|
$tracelevel) |
6605
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6606
|
53
|
|
|
|
|
103
|
my $thisprod = $thisrule->{"prods"}[1]; |
6607
|
53
|
|
|
|
|
99
|
$text = $_[1]; |
6608
|
53
|
|
|
|
|
81
|
my $_savetext; |
6609
|
53
|
|
|
|
|
147
|
@item = (q{bodysubtype}); |
6610
|
53
|
|
|
|
|
138
|
%item = (__RULE__ => q{bodysubtype}); |
6611
|
53
|
|
|
|
|
86
|
my $repcount = 0; |
6612
|
|
|
|
|
|
|
|
6613
|
|
|
|
|
|
|
|
6614
|
53
|
50
|
|
|
|
109
|
Parse::RecDescent::_trace(q{Trying subrule: [HTML]}, |
6615
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6616
|
|
|
|
|
|
|
q{bodysubtype}, |
6617
|
|
|
|
|
|
|
$tracelevel) |
6618
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6619
|
1
|
|
|
1
|
|
7
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
292
|
|
|
53
|
|
|
|
|
104
|
|
6620
|
53
|
|
|
|
|
130
|
$expectation->is(q{})->at($text); |
6621
|
53
|
100
|
|
53
|
|
580
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::HTML($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
53
|
|
|
|
|
108
|
|
6622
|
|
|
|
|
|
|
{ |
6623
|
|
|
|
|
|
|
|
6624
|
44
|
50
|
|
|
|
106
|
Parse::RecDescent::_trace(q{<>}, |
6625
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6626
|
|
|
|
|
|
|
q{bodysubtype}, |
6627
|
|
|
|
|
|
|
$tracelevel) |
6628
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6629
|
44
|
|
|
|
|
144
|
$expectation->failed(); |
6630
|
44
|
|
|
|
|
186
|
last; |
6631
|
|
|
|
|
|
|
} |
6632
|
9
|
50
|
|
|
|
39
|
Parse::RecDescent::_trace(q{>>Matched subrule: [HTML]<< (return value: [} |
6633
|
|
|
|
|
|
|
. $_tok . q{]}, |
6634
|
|
|
|
|
|
|
|
6635
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6636
|
|
|
|
|
|
|
q{bodysubtype}, |
6637
|
|
|
|
|
|
|
$tracelevel) |
6638
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6639
|
9
|
|
|
|
|
24
|
$item{q{HTML}} = $_tok; |
6640
|
9
|
|
|
|
|
24
|
push @item, $_tok; |
6641
|
|
|
|
|
|
|
|
6642
|
|
|
|
|
|
|
} |
6643
|
|
|
|
|
|
|
|
6644
|
9
|
50
|
|
|
|
21
|
Parse::RecDescent::_trace(q{>>Matched production: [HTML]<<}, |
6645
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6646
|
|
|
|
|
|
|
q{bodysubtype}, |
6647
|
|
|
|
|
|
|
$tracelevel) |
6648
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6649
|
|
|
|
|
|
|
|
6650
|
|
|
|
|
|
|
|
6651
|
|
|
|
|
|
|
|
6652
|
9
|
|
|
|
|
15
|
$_matched = 1; |
6653
|
9
|
|
|
|
|
20
|
last; |
6654
|
|
|
|
|
|
|
} |
6655
|
|
|
|
|
|
|
|
6656
|
|
|
|
|
|
|
splice |
6657
|
84
|
100
|
|
|
|
265
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
44
|
|
|
|
|
101
|
|
6658
|
|
|
|
|
|
|
|
6659
|
84
|
|
66
|
|
|
275
|
while (!$_matched && !$commit) |
6660
|
|
|
|
|
|
|
{ |
6661
|
|
|
|
|
|
|
|
6662
|
44
|
50
|
|
|
|
111
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
6663
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
6664
|
|
|
|
|
|
|
q{bodysubtype}, |
6665
|
|
|
|
|
|
|
$tracelevel) |
6666
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6667
|
44
|
|
|
|
|
159
|
my $thisprod = $thisrule->{"prods"}[2]; |
6668
|
44
|
|
|
|
|
84
|
$text = $_[1]; |
6669
|
44
|
|
|
|
|
72
|
my $_savetext; |
6670
|
44
|
|
|
|
|
112
|
@item = (q{bodysubtype}); |
6671
|
44
|
|
|
|
|
146
|
%item = (__RULE__ => q{bodysubtype}); |
6672
|
44
|
|
|
|
|
79
|
my $repcount = 0; |
6673
|
|
|
|
|
|
|
|
6674
|
|
|
|
|
|
|
|
6675
|
44
|
50
|
|
|
|
91
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
6676
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6677
|
|
|
|
|
|
|
q{bodysubtype}, |
6678
|
|
|
|
|
|
|
$tracelevel) |
6679
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6680
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
350
|
|
|
44
|
|
|
|
|
66
|
|
6681
|
44
|
|
|
|
|
117
|
$expectation->is(q{})->at($text); |
6682
|
44
|
50
|
|
44
|
|
448
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
44
|
|
|
|
|
91
|
|
6683
|
|
|
|
|
|
|
{ |
6684
|
|
|
|
|
|
|
|
6685
|
44
|
50
|
|
|
|
106
|
Parse::RecDescent::_trace(q{<>}, |
6686
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6687
|
|
|
|
|
|
|
q{bodysubtype}, |
6688
|
|
|
|
|
|
|
$tracelevel) |
6689
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6690
|
44
|
|
|
|
|
135
|
$expectation->failed(); |
6691
|
44
|
|
|
|
|
162
|
last; |
6692
|
|
|
|
|
|
|
} |
6693
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
6694
|
|
|
|
|
|
|
. $_tok . q{]}, |
6695
|
|
|
|
|
|
|
|
6696
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6697
|
|
|
|
|
|
|
q{bodysubtype}, |
6698
|
|
|
|
|
|
|
$tracelevel) |
6699
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6700
|
0
|
|
|
|
|
0
|
$item{q{NIL}} = $_tok; |
6701
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
6702
|
|
|
|
|
|
|
|
6703
|
|
|
|
|
|
|
} |
6704
|
|
|
|
|
|
|
|
6705
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
6706
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6707
|
|
|
|
|
|
|
q{bodysubtype}, |
6708
|
|
|
|
|
|
|
$tracelevel) |
6709
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6710
|
|
|
|
|
|
|
|
6711
|
|
|
|
|
|
|
|
6712
|
|
|
|
|
|
|
|
6713
|
0
|
|
|
|
|
0
|
$_matched = 1; |
6714
|
0
|
|
|
|
|
0
|
last; |
6715
|
|
|
|
|
|
|
} |
6716
|
|
|
|
|
|
|
|
6717
|
|
|
|
|
|
|
splice |
6718
|
84
|
100
|
|
|
|
256
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
44
|
|
|
|
|
94
|
|
6719
|
|
|
|
|
|
|
|
6720
|
84
|
|
66
|
|
|
261
|
while (!$_matched && !$commit) |
6721
|
|
|
|
|
|
|
{ |
6722
|
|
|
|
|
|
|
|
6723
|
44
|
50
|
|
|
|
106
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
6724
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
6725
|
|
|
|
|
|
|
q{bodysubtype}, |
6726
|
|
|
|
|
|
|
$tracelevel) |
6727
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6728
|
44
|
|
|
|
|
97
|
my $thisprod = $thisrule->{"prods"}[3]; |
6729
|
44
|
|
|
|
|
83
|
$text = $_[1]; |
6730
|
44
|
|
|
|
|
74
|
my $_savetext; |
6731
|
44
|
|
|
|
|
103
|
@item = (q{bodysubtype}); |
6732
|
44
|
|
|
|
|
101
|
%item = (__RULE__ => q{bodysubtype}); |
6733
|
44
|
|
|
|
|
72
|
my $repcount = 0; |
6734
|
|
|
|
|
|
|
|
6735
|
|
|
|
|
|
|
|
6736
|
44
|
50
|
|
|
|
114
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
6737
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6738
|
|
|
|
|
|
|
q{bodysubtype}, |
6739
|
|
|
|
|
|
|
$tracelevel) |
6740
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6741
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
538
|
|
|
44
|
|
|
|
|
72
|
|
6742
|
44
|
|
|
|
|
114
|
$expectation->is(q{})->at($text); |
6743
|
44
|
50
|
|
44
|
|
773
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
44
|
|
|
|
|
91
|
|
6744
|
|
|
|
|
|
|
{ |
6745
|
|
|
|
|
|
|
|
6746
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
6747
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6748
|
|
|
|
|
|
|
q{bodysubtype}, |
6749
|
|
|
|
|
|
|
$tracelevel) |
6750
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6751
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
6752
|
0
|
|
|
|
|
0
|
last; |
6753
|
|
|
|
|
|
|
} |
6754
|
44
|
50
|
|
|
|
170
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
6755
|
|
|
|
|
|
|
. $_tok . q{]}, |
6756
|
|
|
|
|
|
|
|
6757
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6758
|
|
|
|
|
|
|
q{bodysubtype}, |
6759
|
|
|
|
|
|
|
$tracelevel) |
6760
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6761
|
44
|
|
|
|
|
108
|
$item{q{STRING}} = $_tok; |
6762
|
44
|
|
|
|
|
90
|
push @item, $_tok; |
6763
|
|
|
|
|
|
|
|
6764
|
|
|
|
|
|
|
} |
6765
|
|
|
|
|
|
|
|
6766
|
44
|
50
|
|
|
|
95
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
6767
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6768
|
|
|
|
|
|
|
q{bodysubtype}, |
6769
|
|
|
|
|
|
|
$tracelevel) |
6770
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6771
|
|
|
|
|
|
|
|
6772
|
|
|
|
|
|
|
|
6773
|
|
|
|
|
|
|
|
6774
|
44
|
|
|
|
|
83
|
$_matched = 1; |
6775
|
44
|
|
|
|
|
83
|
last; |
6776
|
|
|
|
|
|
|
} |
6777
|
|
|
|
|
|
|
|
6778
|
|
|
|
|
|
|
splice |
6779
|
84
|
50
|
|
|
|
199
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
6780
|
|
|
|
|
|
|
|
6781
|
84
|
50
|
33
|
|
|
188
|
unless ( $_matched || defined($score) ) |
6782
|
|
|
|
|
|
|
{ |
6783
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
6784
|
|
|
|
|
|
|
|
6785
|
|
|
|
|
|
|
|
6786
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
6787
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
6788
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
6789
|
|
|
|
|
|
|
q{bodysubtype}, |
6790
|
|
|
|
|
|
|
$tracelevel) |
6791
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6792
|
0
|
|
|
|
|
0
|
return undef; |
6793
|
|
|
|
|
|
|
} |
6794
|
84
|
50
|
33
|
|
|
307
|
if (!defined($return) && defined($score)) |
6795
|
|
|
|
|
|
|
{ |
6796
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
6797
|
|
|
|
|
|
|
q{bodysubtype}, |
6798
|
|
|
|
|
|
|
$tracelevel) |
6799
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6800
|
0
|
|
|
|
|
0
|
$return = $score_return; |
6801
|
|
|
|
|
|
|
} |
6802
|
84
|
|
|
|
|
150
|
splice @{$thisparser->{errors}}, $err_at; |
|
84
|
|
|
|
|
162
|
|
6803
|
84
|
50
|
|
|
|
234
|
$return = $item[$#item] unless defined $return; |
6804
|
84
|
50
|
|
|
|
212
|
if (defined $::RD_TRACE) |
6805
|
|
|
|
|
|
|
{ |
6806
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
6807
|
|
|
|
|
|
|
$return . q{])}, "", |
6808
|
|
|
|
|
|
|
q{bodysubtype}, |
6809
|
|
|
|
|
|
|
$tracelevel); |
6810
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
6811
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
6812
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6813
|
|
|
|
|
|
|
, q{bodysubtype}, |
6814
|
|
|
|
|
|
|
$tracelevel) |
6815
|
|
|
|
|
|
|
} |
6816
|
84
|
|
|
|
|
156
|
$_[1] = $text; |
6817
|
84
|
|
|
|
|
495
|
return $return; |
6818
|
|
|
|
|
|
|
} |
6819
|
|
|
|
|
|
|
|
6820
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
6821
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodytype |
6822
|
|
|
|
|
|
|
{ |
6823
|
32
|
|
|
32
|
|
69
|
my $thisparser = $_[0]; |
6824
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
356
|
|
6825
|
32
|
|
50
|
|
|
101
|
local $tracelevel = ($tracelevel||0)+1; |
6826
|
32
|
|
|
|
|
59
|
$ERRORS = 0; |
6827
|
32
|
|
|
|
|
71
|
my $thisrule = $thisparser->{"rules"}{"bodytype"}; |
6828
|
|
|
|
|
|
|
|
6829
|
32
|
50
|
|
|
|
77
|
Parse::RecDescent::_trace(q{Trying rule: [bodytype]}, |
6830
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
6831
|
|
|
|
|
|
|
q{bodytype}, |
6832
|
|
|
|
|
|
|
$tracelevel) |
6833
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6834
|
|
|
|
|
|
|
|
6835
|
32
|
|
|
|
|
50
|
my $def_at = @{$thisparser->{deferred}}; |
|
32
|
|
|
|
|
66
|
|
6836
|
32
|
|
|
|
|
56
|
my $err_at = @{$thisparser->{errors}}; |
|
32
|
|
|
|
|
63
|
|
6837
|
|
|
|
|
|
|
|
6838
|
32
|
|
|
|
|
85
|
my $score; |
6839
|
|
|
|
|
|
|
my $score_return; |
6840
|
32
|
|
|
|
|
0
|
my $_tok; |
6841
|
32
|
|
|
|
|
46
|
my $return = undef; |
6842
|
32
|
|
|
|
|
51
|
my $_matched=0; |
6843
|
32
|
|
|
|
|
51
|
my $commit=0; |
6844
|
32
|
|
|
|
|
61
|
my @item = (); |
6845
|
32
|
|
|
|
|
54
|
my %item = (); |
6846
|
32
|
|
|
|
|
66
|
my $repeating = $_[2]; |
6847
|
32
|
|
|
|
|
52
|
my $_noactions = $_[3]; |
6848
|
32
|
50
|
|
|
|
77
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
32
|
|
|
|
|
49
|
|
|
32
|
|
|
|
|
59
|
|
6849
|
32
|
|
|
|
|
59
|
my $_itempos = $_[5]; |
6850
|
32
|
50
|
|
|
|
118
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
6851
|
32
|
|
|
|
|
82
|
my $text; |
6852
|
|
|
|
|
|
|
my $lastsep; |
6853
|
32
|
|
|
|
|
0
|
my $current_match; |
6854
|
32
|
|
|
|
|
79
|
my $expectation = new Parse::RecDescent::Expectation(q{STRING}); |
6855
|
32
|
|
|
|
|
221
|
$expectation->at($_[1]); |
6856
|
|
|
|
|
|
|
|
6857
|
32
|
|
|
|
|
130
|
my $thisline; |
6858
|
32
|
|
|
|
|
131
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
6859
|
|
|
|
|
|
|
|
6860
|
|
|
|
|
|
|
|
6861
|
|
|
|
|
|
|
|
6862
|
32
|
|
33
|
|
|
256
|
while (!$_matched && !$commit) |
6863
|
|
|
|
|
|
|
{ |
6864
|
|
|
|
|
|
|
|
6865
|
32
|
50
|
|
|
|
74
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
6866
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
6867
|
|
|
|
|
|
|
q{bodytype}, |
6868
|
|
|
|
|
|
|
$tracelevel) |
6869
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6870
|
32
|
|
|
|
|
83
|
my $thisprod = $thisrule->{"prods"}[0]; |
6871
|
32
|
|
|
|
|
63
|
$text = $_[1]; |
6872
|
32
|
|
|
|
|
45
|
my $_savetext; |
6873
|
32
|
|
|
|
|
70
|
@item = (q{bodytype}); |
6874
|
32
|
|
|
|
|
72
|
%item = (__RULE__ => q{bodytype}); |
6875
|
32
|
|
|
|
|
55
|
my $repcount = 0; |
6876
|
|
|
|
|
|
|
|
6877
|
|
|
|
|
|
|
|
6878
|
32
|
50
|
|
|
|
68
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
6879
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6880
|
|
|
|
|
|
|
q{bodytype}, |
6881
|
|
|
|
|
|
|
$tracelevel) |
6882
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6883
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
499
|
|
|
32
|
|
|
|
|
54
|
|
6884
|
32
|
|
|
|
|
99
|
$expectation->is(q{})->at($text); |
6885
|
32
|
100
|
|
32
|
|
339
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
32
|
|
|
|
|
62
|
|
6886
|
|
|
|
|
|
|
{ |
6887
|
|
|
|
|
|
|
|
6888
|
20
|
50
|
|
|
|
72
|
Parse::RecDescent::_trace(q{<>}, |
6889
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6890
|
|
|
|
|
|
|
q{bodytype}, |
6891
|
|
|
|
|
|
|
$tracelevel) |
6892
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6893
|
20
|
|
|
|
|
62
|
$expectation->failed(); |
6894
|
20
|
|
|
|
|
78
|
last; |
6895
|
|
|
|
|
|
|
} |
6896
|
12
|
50
|
|
|
|
58
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
6897
|
|
|
|
|
|
|
. $_tok . q{]}, |
6898
|
|
|
|
|
|
|
|
6899
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6900
|
|
|
|
|
|
|
q{bodytype}, |
6901
|
|
|
|
|
|
|
$tracelevel) |
6902
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6903
|
12
|
|
|
|
|
36
|
$item{q{STRING}} = $_tok; |
6904
|
12
|
|
|
|
|
26
|
push @item, $_tok; |
6905
|
|
|
|
|
|
|
|
6906
|
|
|
|
|
|
|
} |
6907
|
|
|
|
|
|
|
|
6908
|
12
|
50
|
|
|
|
34
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
6909
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6910
|
|
|
|
|
|
|
q{bodytype}, |
6911
|
|
|
|
|
|
|
$tracelevel) |
6912
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6913
|
|
|
|
|
|
|
|
6914
|
|
|
|
|
|
|
|
6915
|
|
|
|
|
|
|
|
6916
|
12
|
|
|
|
|
22
|
$_matched = 1; |
6917
|
12
|
|
|
|
|
23
|
last; |
6918
|
|
|
|
|
|
|
} |
6919
|
|
|
|
|
|
|
|
6920
|
|
|
|
|
|
|
splice |
6921
|
32
|
100
|
|
|
|
99
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
20
|
|
|
|
|
57
|
|
6922
|
|
|
|
|
|
|
|
6923
|
32
|
100
|
66
|
|
|
131
|
unless ( $_matched || defined($score) ) |
6924
|
|
|
|
|
|
|
{ |
6925
|
20
|
|
|
|
|
35
|
splice @{$thisparser->{deferred}}, $def_at; |
|
20
|
|
|
|
|
52
|
|
6926
|
|
|
|
|
|
|
|
6927
|
|
|
|
|
|
|
|
6928
|
20
|
|
|
|
|
46
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
6929
|
20
|
50
|
|
|
|
48
|
Parse::RecDescent::_trace(q{<>}, |
6930
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
6931
|
|
|
|
|
|
|
q{bodytype}, |
6932
|
|
|
|
|
|
|
$tracelevel) |
6933
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6934
|
20
|
|
|
|
|
111
|
return undef; |
6935
|
|
|
|
|
|
|
} |
6936
|
12
|
50
|
33
|
|
|
68
|
if (!defined($return) && defined($score)) |
6937
|
|
|
|
|
|
|
{ |
6938
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
6939
|
|
|
|
|
|
|
q{bodytype}, |
6940
|
|
|
|
|
|
|
$tracelevel) |
6941
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6942
|
0
|
|
|
|
|
0
|
$return = $score_return; |
6943
|
|
|
|
|
|
|
} |
6944
|
12
|
|
|
|
|
25
|
splice @{$thisparser->{errors}}, $err_at; |
|
12
|
|
|
|
|
30
|
|
6945
|
12
|
50
|
|
|
|
46
|
$return = $item[$#item] unless defined $return; |
6946
|
12
|
50
|
|
|
|
40
|
if (defined $::RD_TRACE) |
6947
|
|
|
|
|
|
|
{ |
6948
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
6949
|
|
|
|
|
|
|
$return . q{])}, "", |
6950
|
|
|
|
|
|
|
q{bodytype}, |
6951
|
|
|
|
|
|
|
$tracelevel); |
6952
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
6953
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
6954
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
6955
|
|
|
|
|
|
|
, q{bodytype}, |
6956
|
|
|
|
|
|
|
$tracelevel) |
6957
|
|
|
|
|
|
|
} |
6958
|
12
|
|
|
|
|
28
|
$_[1] = $text; |
6959
|
12
|
|
|
|
|
72
|
return $return; |
6960
|
|
|
|
|
|
|
} |
6961
|
|
|
|
|
|
|
|
6962
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
6963
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::cc |
6964
|
|
|
|
|
|
|
{ |
6965
|
24
|
|
|
24
|
|
58
|
my $thisparser = $_[0]; |
6966
|
1
|
|
|
1
|
|
10
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
557
|
|
6967
|
24
|
|
50
|
|
|
76
|
local $tracelevel = ($tracelevel||0)+1; |
6968
|
24
|
|
|
|
|
51
|
$ERRORS = 0; |
6969
|
24
|
|
|
|
|
100
|
my $thisrule = $thisparser->{"rules"}{"cc"}; |
6970
|
|
|
|
|
|
|
|
6971
|
24
|
50
|
|
|
|
61
|
Parse::RecDescent::_trace(q{Trying rule: [cc]}, |
6972
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
6973
|
|
|
|
|
|
|
q{cc}, |
6974
|
|
|
|
|
|
|
$tracelevel) |
6975
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
6976
|
|
|
|
|
|
|
|
6977
|
24
|
|
|
|
|
41
|
my $def_at = @{$thisparser->{deferred}}; |
|
24
|
|
|
|
|
79
|
|
6978
|
24
|
|
|
|
|
48
|
my $err_at = @{$thisparser->{errors}}; |
|
24
|
|
|
|
|
62
|
|
6979
|
|
|
|
|
|
|
|
6980
|
24
|
|
|
|
|
78
|
my $score; |
6981
|
|
|
|
|
|
|
my $score_return; |
6982
|
24
|
|
|
|
|
0
|
my $_tok; |
6983
|
24
|
|
|
|
|
44
|
my $return = undef; |
6984
|
24
|
|
|
|
|
37
|
my $_matched=0; |
6985
|
24
|
|
|
|
|
40
|
my $commit=0; |
6986
|
24
|
|
|
|
|
52
|
my @item = (); |
6987
|
24
|
|
|
|
|
45
|
my %item = (); |
6988
|
24
|
|
|
|
|
37
|
my $repeating = $_[2]; |
6989
|
24
|
|
|
|
|
52
|
my $_noactions = $_[3]; |
6990
|
24
|
50
|
|
|
|
76
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
24
|
|
|
|
|
40
|
|
|
24
|
|
|
|
|
47
|
|
6991
|
24
|
|
|
|
|
56
|
my $_itempos = $_[5]; |
6992
|
24
|
50
|
|
|
|
72
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
6993
|
24
|
|
|
|
|
100
|
my $text; |
6994
|
|
|
|
|
|
|
my $lastsep; |
6995
|
24
|
|
|
|
|
0
|
my $current_match; |
6996
|
24
|
|
|
|
|
73
|
my $expectation = new Parse::RecDescent::Expectation(q{ADDRESSES}); |
6997
|
24
|
|
|
|
|
189
|
$expectation->at($_[1]); |
6998
|
|
|
|
|
|
|
|
6999
|
24
|
|
|
|
|
106
|
my $thisline; |
7000
|
24
|
|
|
|
|
103
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
7001
|
|
|
|
|
|
|
|
7002
|
|
|
|
|
|
|
|
7003
|
|
|
|
|
|
|
|
7004
|
24
|
|
33
|
|
|
218
|
while (!$_matched && !$commit) |
7005
|
|
|
|
|
|
|
{ |
7006
|
|
|
|
|
|
|
|
7007
|
24
|
50
|
|
|
|
72
|
Parse::RecDescent::_trace(q{Trying production: [ADDRESSES]}, |
7008
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
7009
|
|
|
|
|
|
|
q{cc}, |
7010
|
|
|
|
|
|
|
$tracelevel) |
7011
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7012
|
24
|
|
|
|
|
73
|
my $thisprod = $thisrule->{"prods"}[0]; |
7013
|
24
|
|
|
|
|
49
|
$text = $_[1]; |
7014
|
24
|
|
|
|
|
38
|
my $_savetext; |
7015
|
24
|
|
|
|
|
53
|
@item = (q{cc}); |
7016
|
24
|
|
|
|
|
65
|
%item = (__RULE__ => q{cc}); |
7017
|
24
|
|
|
|
|
37
|
my $repcount = 0; |
7018
|
|
|
|
|
|
|
|
7019
|
|
|
|
|
|
|
|
7020
|
24
|
50
|
|
|
|
56
|
Parse::RecDescent::_trace(q{Trying subrule: [ADDRESSES]}, |
7021
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7022
|
|
|
|
|
|
|
q{cc}, |
7023
|
|
|
|
|
|
|
$tracelevel) |
7024
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7025
|
1
|
|
|
1
|
|
9
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
460
|
|
|
24
|
|
|
|
|
39
|
|
7026
|
24
|
|
|
|
|
61
|
$expectation->is(q{})->at($text); |
7027
|
24
|
50
|
|
24
|
|
270
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::ADDRESSES($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
48
|
|
7028
|
|
|
|
|
|
|
{ |
7029
|
|
|
|
|
|
|
|
7030
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7031
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7032
|
|
|
|
|
|
|
q{cc}, |
7033
|
|
|
|
|
|
|
$tracelevel) |
7034
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7035
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
7036
|
0
|
|
|
|
|
0
|
last; |
7037
|
|
|
|
|
|
|
} |
7038
|
24
|
50
|
|
|
|
100
|
Parse::RecDescent::_trace(q{>>Matched subrule: [ADDRESSES]<< (return value: [} |
7039
|
|
|
|
|
|
|
. $_tok . q{]}, |
7040
|
|
|
|
|
|
|
|
7041
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7042
|
|
|
|
|
|
|
q{cc}, |
7043
|
|
|
|
|
|
|
$tracelevel) |
7044
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7045
|
24
|
|
|
|
|
58
|
$item{q{ADDRESSES}} = $_tok; |
7046
|
24
|
|
|
|
|
52
|
push @item, $_tok; |
7047
|
|
|
|
|
|
|
|
7048
|
|
|
|
|
|
|
} |
7049
|
|
|
|
|
|
|
|
7050
|
24
|
50
|
|
|
|
52
|
Parse::RecDescent::_trace(q{>>Matched production: [ADDRESSES]<<}, |
7051
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7052
|
|
|
|
|
|
|
q{cc}, |
7053
|
|
|
|
|
|
|
$tracelevel) |
7054
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7055
|
|
|
|
|
|
|
|
7056
|
|
|
|
|
|
|
|
7057
|
|
|
|
|
|
|
|
7058
|
24
|
|
|
|
|
36
|
$_matched = 1; |
7059
|
24
|
|
|
|
|
54
|
last; |
7060
|
|
|
|
|
|
|
} |
7061
|
|
|
|
|
|
|
|
7062
|
|
|
|
|
|
|
splice |
7063
|
24
|
50
|
|
|
|
62
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
7064
|
|
|
|
|
|
|
|
7065
|
24
|
50
|
33
|
|
|
69
|
unless ( $_matched || defined($score) ) |
7066
|
|
|
|
|
|
|
{ |
7067
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
7068
|
|
|
|
|
|
|
|
7069
|
|
|
|
|
|
|
|
7070
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
7071
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7072
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
7073
|
|
|
|
|
|
|
q{cc}, |
7074
|
|
|
|
|
|
|
$tracelevel) |
7075
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7076
|
0
|
|
|
|
|
0
|
return undef; |
7077
|
|
|
|
|
|
|
} |
7078
|
24
|
50
|
33
|
|
|
117
|
if (!defined($return) && defined($score)) |
7079
|
|
|
|
|
|
|
{ |
7080
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
7081
|
|
|
|
|
|
|
q{cc}, |
7082
|
|
|
|
|
|
|
$tracelevel) |
7083
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7084
|
0
|
|
|
|
|
0
|
$return = $score_return; |
7085
|
|
|
|
|
|
|
} |
7086
|
24
|
|
|
|
|
40
|
splice @{$thisparser->{errors}}, $err_at; |
|
24
|
|
|
|
|
48
|
|
7087
|
24
|
50
|
|
|
|
77
|
$return = $item[$#item] unless defined $return; |
7088
|
24
|
50
|
|
|
|
67
|
if (defined $::RD_TRACE) |
7089
|
|
|
|
|
|
|
{ |
7090
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
7091
|
|
|
|
|
|
|
$return . q{])}, "", |
7092
|
|
|
|
|
|
|
q{cc}, |
7093
|
|
|
|
|
|
|
$tracelevel); |
7094
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
7095
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
7096
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7097
|
|
|
|
|
|
|
, q{cc}, |
7098
|
|
|
|
|
|
|
$tracelevel) |
7099
|
|
|
|
|
|
|
} |
7100
|
24
|
|
|
|
|
58
|
$_[1] = $text; |
7101
|
24
|
|
|
|
|
151
|
return $return; |
7102
|
|
|
|
|
|
|
} |
7103
|
|
|
|
|
|
|
|
7104
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
7105
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::date |
7106
|
|
|
|
|
|
|
{ |
7107
|
24
|
|
|
24
|
|
52
|
my $thisparser = $_[0]; |
7108
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
401
|
|
7109
|
24
|
|
50
|
|
|
69
|
local $tracelevel = ($tracelevel||0)+1; |
7110
|
24
|
|
|
|
|
48
|
$ERRORS = 0; |
7111
|
24
|
|
|
|
|
217
|
my $thisrule = $thisparser->{"rules"}{"date"}; |
7112
|
|
|
|
|
|
|
|
7113
|
24
|
50
|
|
|
|
81
|
Parse::RecDescent::_trace(q{Trying rule: [date]}, |
7114
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
7115
|
|
|
|
|
|
|
q{date}, |
7116
|
|
|
|
|
|
|
$tracelevel) |
7117
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7118
|
|
|
|
|
|
|
|
7119
|
24
|
|
|
|
|
38
|
my $def_at = @{$thisparser->{deferred}}; |
|
24
|
|
|
|
|
59
|
|
7120
|
24
|
|
|
|
|
43
|
my $err_at = @{$thisparser->{errors}}; |
|
24
|
|
|
|
|
54
|
|
7121
|
|
|
|
|
|
|
|
7122
|
24
|
|
|
|
|
68
|
my $score; |
7123
|
|
|
|
|
|
|
my $score_return; |
7124
|
24
|
|
|
|
|
0
|
my $_tok; |
7125
|
24
|
|
|
|
|
44
|
my $return = undef; |
7126
|
24
|
|
|
|
|
36
|
my $_matched=0; |
7127
|
24
|
|
|
|
|
42
|
my $commit=0; |
7128
|
24
|
|
|
|
|
46
|
my @item = (); |
7129
|
24
|
|
|
|
|
44
|
my %item = (); |
7130
|
24
|
|
|
|
|
44
|
my $repeating = $_[2]; |
7131
|
24
|
|
|
|
|
38
|
my $_noactions = $_[3]; |
7132
|
24
|
50
|
|
|
|
57
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
24
|
|
|
|
|
34
|
|
|
24
|
|
|
|
|
47
|
|
7133
|
24
|
|
|
|
|
51
|
my $_itempos = $_[5]; |
7134
|
24
|
50
|
|
|
|
78
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
7135
|
24
|
|
|
|
|
71
|
my $text; |
7136
|
|
|
|
|
|
|
my $lastsep; |
7137
|
24
|
|
|
|
|
0
|
my $current_match; |
7138
|
24
|
|
|
|
|
68
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or STRING}); |
7139
|
24
|
|
|
|
|
173
|
$expectation->at($_[1]); |
7140
|
|
|
|
|
|
|
|
7141
|
24
|
|
|
|
|
179
|
my $thisline; |
7142
|
24
|
|
|
|
|
94
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
7143
|
|
|
|
|
|
|
|
7144
|
|
|
|
|
|
|
|
7145
|
|
|
|
|
|
|
|
7146
|
24
|
|
33
|
|
|
226
|
while (!$_matched && !$commit) |
7147
|
|
|
|
|
|
|
{ |
7148
|
|
|
|
|
|
|
|
7149
|
24
|
50
|
|
|
|
61
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
7150
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
7151
|
|
|
|
|
|
|
q{date}, |
7152
|
|
|
|
|
|
|
$tracelevel) |
7153
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7154
|
24
|
|
|
|
|
82
|
my $thisprod = $thisrule->{"prods"}[0]; |
7155
|
24
|
|
|
|
|
93
|
$text = $_[1]; |
7156
|
24
|
|
|
|
|
65
|
my $_savetext; |
7157
|
24
|
|
|
|
|
67
|
@item = (q{date}); |
7158
|
24
|
|
|
|
|
62
|
%item = (__RULE__ => q{date}); |
7159
|
24
|
|
|
|
|
45
|
my $repcount = 0; |
7160
|
|
|
|
|
|
|
|
7161
|
|
|
|
|
|
|
|
7162
|
24
|
50
|
|
|
|
67
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
7163
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7164
|
|
|
|
|
|
|
q{date}, |
7165
|
|
|
|
|
|
|
$tracelevel) |
7166
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7167
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
291
|
|
|
24
|
|
|
|
|
44
|
|
7168
|
24
|
|
|
|
|
64
|
$expectation->is(q{})->at($text); |
7169
|
24
|
50
|
|
24
|
|
255
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
86
|
|
7170
|
|
|
|
|
|
|
{ |
7171
|
|
|
|
|
|
|
|
7172
|
24
|
50
|
|
|
|
85
|
Parse::RecDescent::_trace(q{<>}, |
7173
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7174
|
|
|
|
|
|
|
q{date}, |
7175
|
|
|
|
|
|
|
$tracelevel) |
7176
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7177
|
24
|
|
|
|
|
83
|
$expectation->failed(); |
7178
|
24
|
|
|
|
|
92
|
last; |
7179
|
|
|
|
|
|
|
} |
7180
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
7181
|
|
|
|
|
|
|
. $_tok . q{]}, |
7182
|
|
|
|
|
|
|
|
7183
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7184
|
|
|
|
|
|
|
q{date}, |
7185
|
|
|
|
|
|
|
$tracelevel) |
7186
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7187
|
0
|
|
|
|
|
0
|
$item{q{NIL}} = $_tok; |
7188
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
7189
|
|
|
|
|
|
|
|
7190
|
|
|
|
|
|
|
} |
7191
|
|
|
|
|
|
|
|
7192
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
7193
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7194
|
|
|
|
|
|
|
q{date}, |
7195
|
|
|
|
|
|
|
$tracelevel) |
7196
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7197
|
|
|
|
|
|
|
|
7198
|
|
|
|
|
|
|
|
7199
|
|
|
|
|
|
|
|
7200
|
0
|
|
|
|
|
0
|
$_matched = 1; |
7201
|
0
|
|
|
|
|
0
|
last; |
7202
|
|
|
|
|
|
|
} |
7203
|
|
|
|
|
|
|
|
7204
|
|
|
|
|
|
|
splice |
7205
|
24
|
50
|
|
|
|
103
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
24
|
|
|
|
|
76
|
|
7206
|
|
|
|
|
|
|
|
7207
|
24
|
|
33
|
|
|
132
|
while (!$_matched && !$commit) |
7208
|
|
|
|
|
|
|
{ |
7209
|
|
|
|
|
|
|
|
7210
|
24
|
50
|
|
|
|
63
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
7211
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
7212
|
|
|
|
|
|
|
q{date}, |
7213
|
|
|
|
|
|
|
$tracelevel) |
7214
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7215
|
24
|
|
|
|
|
56
|
my $thisprod = $thisrule->{"prods"}[1]; |
7216
|
24
|
|
|
|
|
59
|
$text = $_[1]; |
7217
|
24
|
|
|
|
|
39
|
my $_savetext; |
7218
|
24
|
|
|
|
|
65
|
@item = (q{date}); |
7219
|
24
|
|
|
|
|
61
|
%item = (__RULE__ => q{date}); |
7220
|
24
|
|
|
|
|
50
|
my $repcount = 0; |
7221
|
|
|
|
|
|
|
|
7222
|
|
|
|
|
|
|
|
7223
|
24
|
50
|
|
|
|
59
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
7224
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7225
|
|
|
|
|
|
|
q{date}, |
7226
|
|
|
|
|
|
|
$tracelevel) |
7227
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7228
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
445
|
|
|
24
|
|
|
|
|
35
|
|
7229
|
24
|
|
|
|
|
67
|
$expectation->is(q{})->at($text); |
7230
|
24
|
50
|
|
24
|
|
293
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
70
|
|
7231
|
|
|
|
|
|
|
{ |
7232
|
|
|
|
|
|
|
|
7233
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7234
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7235
|
|
|
|
|
|
|
q{date}, |
7236
|
|
|
|
|
|
|
$tracelevel) |
7237
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7238
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
7239
|
0
|
|
|
|
|
0
|
last; |
7240
|
|
|
|
|
|
|
} |
7241
|
24
|
50
|
|
|
|
135
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
7242
|
|
|
|
|
|
|
. $_tok . q{]}, |
7243
|
|
|
|
|
|
|
|
7244
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7245
|
|
|
|
|
|
|
q{date}, |
7246
|
|
|
|
|
|
|
$tracelevel) |
7247
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7248
|
24
|
|
|
|
|
61
|
$item{q{STRING}} = $_tok; |
7249
|
24
|
|
|
|
|
48
|
push @item, $_tok; |
7250
|
|
|
|
|
|
|
|
7251
|
|
|
|
|
|
|
} |
7252
|
|
|
|
|
|
|
|
7253
|
24
|
50
|
|
|
|
70
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
7254
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7255
|
|
|
|
|
|
|
q{date}, |
7256
|
|
|
|
|
|
|
$tracelevel) |
7257
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7258
|
|
|
|
|
|
|
|
7259
|
|
|
|
|
|
|
|
7260
|
|
|
|
|
|
|
|
7261
|
24
|
|
|
|
|
46
|
$_matched = 1; |
7262
|
24
|
|
|
|
|
53
|
last; |
7263
|
|
|
|
|
|
|
} |
7264
|
|
|
|
|
|
|
|
7265
|
|
|
|
|
|
|
splice |
7266
|
24
|
50
|
|
|
|
63
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
7267
|
|
|
|
|
|
|
|
7268
|
24
|
50
|
33
|
|
|
64
|
unless ( $_matched || defined($score) ) |
7269
|
|
|
|
|
|
|
{ |
7270
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
7271
|
|
|
|
|
|
|
|
7272
|
|
|
|
|
|
|
|
7273
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
7274
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7275
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
7276
|
|
|
|
|
|
|
q{date}, |
7277
|
|
|
|
|
|
|
$tracelevel) |
7278
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7279
|
0
|
|
|
|
|
0
|
return undef; |
7280
|
|
|
|
|
|
|
} |
7281
|
24
|
50
|
33
|
|
|
108
|
if (!defined($return) && defined($score)) |
7282
|
|
|
|
|
|
|
{ |
7283
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
7284
|
|
|
|
|
|
|
q{date}, |
7285
|
|
|
|
|
|
|
$tracelevel) |
7286
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7287
|
0
|
|
|
|
|
0
|
$return = $score_return; |
7288
|
|
|
|
|
|
|
} |
7289
|
24
|
|
|
|
|
42
|
splice @{$thisparser->{errors}}, $err_at; |
|
24
|
|
|
|
|
82
|
|
7290
|
24
|
50
|
|
|
|
84
|
$return = $item[$#item] unless defined $return; |
7291
|
24
|
50
|
|
|
|
73
|
if (defined $::RD_TRACE) |
7292
|
|
|
|
|
|
|
{ |
7293
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
7294
|
|
|
|
|
|
|
$return . q{])}, "", |
7295
|
|
|
|
|
|
|
q{date}, |
7296
|
|
|
|
|
|
|
$tracelevel); |
7297
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
7298
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
7299
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7300
|
|
|
|
|
|
|
, q{date}, |
7301
|
|
|
|
|
|
|
$tracelevel) |
7302
|
|
|
|
|
|
|
} |
7303
|
24
|
|
|
|
|
64
|
$_[1] = $text; |
7304
|
24
|
|
|
|
|
138
|
return $return; |
7305
|
|
|
|
|
|
|
} |
7306
|
|
|
|
|
|
|
|
7307
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
7308
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::envelope |
7309
|
|
|
|
|
|
|
{ |
7310
|
1
|
|
|
1
|
|
93
|
my $thisparser = $_[0]; |
7311
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
11
|
|
|
1
|
|
|
|
|
590
|
|
7312
|
1
|
|
50
|
|
|
7
|
local $tracelevel = ($tracelevel||0)+1; |
7313
|
1
|
|
|
|
|
2
|
$ERRORS = 0; |
7314
|
1
|
|
|
|
|
4
|
my $thisrule = $thisparser->{"rules"}{"envelope"}; |
7315
|
|
|
|
|
|
|
|
7316
|
1
|
50
|
|
|
|
5
|
Parse::RecDescent::_trace(q{Trying rule: [envelope]}, |
7317
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
7318
|
|
|
|
|
|
|
q{envelope}, |
7319
|
|
|
|
|
|
|
$tracelevel) |
7320
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7321
|
|
|
|
|
|
|
|
7322
|
1
|
|
|
|
|
2
|
my $def_at = @{$thisparser->{deferred}}; |
|
1
|
|
|
|
|
4
|
|
7323
|
1
|
|
|
|
|
2
|
my $err_at = @{$thisparser->{errors}}; |
|
1
|
|
|
|
|
3
|
|
7324
|
|
|
|
|
|
|
|
7325
|
1
|
|
|
|
|
4
|
my $score; |
7326
|
|
|
|
|
|
|
my $score_return; |
7327
|
1
|
|
|
|
|
0
|
my $_tok; |
7328
|
1
|
|
|
|
|
3
|
my $return = undef; |
7329
|
1
|
|
|
|
|
2
|
my $_matched=0; |
7330
|
1
|
|
|
|
|
2
|
my $commit=0; |
7331
|
1
|
|
|
|
|
3
|
my @item = (); |
7332
|
1
|
|
|
|
|
3
|
my %item = (); |
7333
|
1
|
|
|
|
|
2
|
my $repeating = $_[2]; |
7334
|
1
|
|
|
|
|
2
|
my $_noactions = $_[3]; |
7335
|
1
|
50
|
|
|
|
4
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
3
|
|
7336
|
1
|
|
|
|
|
5
|
my $_itempos = $_[5]; |
7337
|
1
|
50
|
|
|
|
4
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
7338
|
1
|
|
|
|
|
4
|
my $text; |
7339
|
|
|
|
|
|
|
my $lastsep; |
7340
|
1
|
|
|
|
|
0
|
my $current_match; |
7341
|
1
|
|
|
|
|
4
|
my $expectation = new Parse::RecDescent::Expectation(q{/.*?\\(.*?ENVELOPE/}); |
7342
|
1
|
|
|
|
|
11
|
$expectation->at($_[1]); |
7343
|
|
|
|
|
|
|
|
7344
|
1
|
|
|
|
|
4
|
my $thisline; |
7345
|
1
|
|
|
|
|
5
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
7346
|
|
|
|
|
|
|
|
7347
|
|
|
|
|
|
|
|
7348
|
|
|
|
|
|
|
|
7349
|
1
|
|
33
|
|
|
13
|
while (!$_matched && !$commit) |
7350
|
|
|
|
|
|
|
{ |
7351
|
|
|
|
|
|
|
|
7352
|
1
|
50
|
|
|
|
4
|
Parse::RecDescent::_trace(q{Trying production: [/.*?\\(.*?ENVELOPE/ envelopestruct /.*\\)/]}, |
7353
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
7354
|
|
|
|
|
|
|
q{envelope}, |
7355
|
|
|
|
|
|
|
$tracelevel) |
7356
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7357
|
1
|
|
|
|
|
3
|
my $thisprod = $thisrule->{"prods"}[0]; |
7358
|
1
|
|
|
|
|
2
|
$text = $_[1]; |
7359
|
1
|
|
|
|
|
3
|
my $_savetext; |
7360
|
1
|
|
|
|
|
3
|
@item = (q{envelope}); |
7361
|
1
|
|
|
|
|
4
|
%item = (__RULE__ => q{envelope}); |
7362
|
1
|
|
|
|
|
2
|
my $repcount = 0; |
7363
|
|
|
|
|
|
|
|
7364
|
|
|
|
|
|
|
|
7365
|
1
|
50
|
|
|
|
3
|
Parse::RecDescent::_trace(q{Trying terminal: [/.*?\\(.*?ENVELOPE/]}, Parse::RecDescent::_tracefirst($text), |
7366
|
|
|
|
|
|
|
q{envelope}, |
7367
|
|
|
|
|
|
|
$tracelevel) |
7368
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7369
|
1
|
|
|
|
|
3
|
undef $lastsep; |
7370
|
1
|
|
|
|
|
4
|
$expectation->is(q{})->at($text); |
7371
|
|
|
|
|
|
|
|
7372
|
|
|
|
|
|
|
|
7373
|
1
|
50
|
33
|
|
|
44
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:.*?\(.*?ENVELOPE)/) |
|
1
|
50
|
|
|
|
16
|
|
7374
|
|
|
|
|
|
|
{ |
7375
|
0
|
0
|
|
|
|
0
|
$text = $lastsep . $text if defined $lastsep; |
7376
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
7377
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7378
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
7379
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7380
|
|
|
|
|
|
|
|
7381
|
0
|
|
|
|
|
0
|
last; |
7382
|
|
|
|
|
|
|
} |
7383
|
1
|
|
|
|
|
7
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
7384
|
1
|
|
|
|
|
5
|
substr($text,0,length($current_match),q{}); |
7385
|
1
|
50
|
|
|
|
3
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
7386
|
|
|
|
|
|
|
. $current_match . q{])}, |
7387
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
7388
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7389
|
1
|
|
|
|
|
5
|
push @item, $item{__PATTERN1__}=$current_match; |
7390
|
|
|
|
|
|
|
|
7391
|
|
|
|
|
|
|
|
7392
|
1
|
50
|
|
|
|
3
|
Parse::RecDescent::_trace(q{Trying subrule: [envelopestruct]}, |
7393
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7394
|
|
|
|
|
|
|
q{envelope}, |
7395
|
|
|
|
|
|
|
$tracelevel) |
7396
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7397
|
1
|
|
|
1
|
|
9
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
744
|
|
|
1
|
|
|
|
|
2
|
|
7398
|
1
|
|
|
|
|
5
|
$expectation->is(q{envelopestruct})->at($text); |
7399
|
1
|
50
|
|
1
|
|
14
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::envelopestruct($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
1
|
|
|
|
|
3
|
|
7400
|
|
|
|
|
|
|
{ |
7401
|
|
|
|
|
|
|
|
7402
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7403
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7404
|
|
|
|
|
|
|
q{envelope}, |
7405
|
|
|
|
|
|
|
$tracelevel) |
7406
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7407
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
7408
|
0
|
|
|
|
|
0
|
last; |
7409
|
|
|
|
|
|
|
} |
7410
|
1
|
50
|
|
|
|
6
|
Parse::RecDescent::_trace(q{>>Matched subrule: [envelopestruct]<< (return value: [} |
7411
|
|
|
|
|
|
|
. $_tok . q{]}, |
7412
|
|
|
|
|
|
|
|
7413
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7414
|
|
|
|
|
|
|
q{envelope}, |
7415
|
|
|
|
|
|
|
$tracelevel) |
7416
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7417
|
1
|
|
|
|
|
3
|
$item{q{envelopestruct}} = $_tok; |
7418
|
1
|
|
|
|
|
3
|
push @item, $_tok; |
7419
|
|
|
|
|
|
|
|
7420
|
|
|
|
|
|
|
} |
7421
|
|
|
|
|
|
|
|
7422
|
1
|
50
|
|
|
|
4
|
Parse::RecDescent::_trace(q{Trying terminal: [/.*\\)/]}, Parse::RecDescent::_tracefirst($text), |
7423
|
|
|
|
|
|
|
q{envelope}, |
7424
|
|
|
|
|
|
|
$tracelevel) |
7425
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7426
|
1
|
|
|
|
|
2
|
undef $lastsep; |
7427
|
1
|
|
|
|
|
5
|
$expectation->is(q{/.*\\)/})->at($text); |
7428
|
|
|
|
|
|
|
|
7429
|
|
|
|
|
|
|
|
7430
|
1
|
50
|
33
|
|
|
27
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:.*\))/) |
|
1
|
50
|
|
|
|
15
|
|
7431
|
|
|
|
|
|
|
{ |
7432
|
0
|
0
|
|
|
|
0
|
$text = $lastsep . $text if defined $lastsep; |
7433
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
7434
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7435
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
7436
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7437
|
|
|
|
|
|
|
|
7438
|
0
|
|
|
|
|
0
|
last; |
7439
|
|
|
|
|
|
|
} |
7440
|
1
|
|
|
|
|
6
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
7441
|
1
|
|
|
|
|
5
|
substr($text,0,length($current_match),q{}); |
7442
|
1
|
50
|
|
|
|
4
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
7443
|
|
|
|
|
|
|
. $current_match . q{])}, |
7444
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
7445
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7446
|
1
|
|
|
|
|
4
|
push @item, $item{__PATTERN2__}=$current_match; |
7447
|
|
|
|
|
|
|
|
7448
|
|
|
|
|
|
|
|
7449
|
1
|
50
|
|
|
|
5
|
Parse::RecDescent::_trace(q{Trying action}, |
7450
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7451
|
|
|
|
|
|
|
q{envelope}, |
7452
|
|
|
|
|
|
|
$tracelevel) |
7453
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7454
|
|
|
|
|
|
|
|
7455
|
|
|
|
|
|
|
|
7456
|
1
|
50
|
|
|
|
5
|
$_tok = ($_noactions) ? 0 : do { $return = $item{envelopestruct} }; |
|
1
|
|
|
|
|
3
|
|
7457
|
1
|
50
|
|
|
|
5
|
unless (defined $_tok) |
7458
|
|
|
|
|
|
|
{ |
7459
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
7460
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7461
|
0
|
|
|
|
|
0
|
last; |
7462
|
|
|
|
|
|
|
} |
7463
|
1
|
50
|
|
|
|
4
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
7464
|
|
|
|
|
|
|
. $_tok . q{])}, |
7465
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
7466
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7467
|
1
|
|
|
|
|
3
|
push @item, $_tok; |
7468
|
1
|
|
|
|
|
3
|
$item{__ACTION1__}=$_tok; |
7469
|
|
|
|
|
|
|
|
7470
|
|
|
|
|
|
|
|
7471
|
1
|
50
|
|
|
|
5
|
Parse::RecDescent::_trace(q{>>Matched production: [/.*?\\(.*?ENVELOPE/ envelopestruct /.*\\)/]<<}, |
7472
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7473
|
|
|
|
|
|
|
q{envelope}, |
7474
|
|
|
|
|
|
|
$tracelevel) |
7475
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7476
|
|
|
|
|
|
|
|
7477
|
|
|
|
|
|
|
|
7478
|
|
|
|
|
|
|
|
7479
|
1
|
|
|
|
|
2
|
$_matched = 1; |
7480
|
1
|
|
|
|
|
3
|
last; |
7481
|
|
|
|
|
|
|
} |
7482
|
|
|
|
|
|
|
|
7483
|
|
|
|
|
|
|
splice |
7484
|
1
|
50
|
|
|
|
4
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
7485
|
|
|
|
|
|
|
|
7486
|
1
|
50
|
33
|
|
|
6
|
unless ( $_matched || defined($score) ) |
7487
|
|
|
|
|
|
|
{ |
7488
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
7489
|
|
|
|
|
|
|
|
7490
|
|
|
|
|
|
|
|
7491
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
7492
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7493
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
7494
|
|
|
|
|
|
|
q{envelope}, |
7495
|
|
|
|
|
|
|
$tracelevel) |
7496
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7497
|
0
|
|
|
|
|
0
|
return undef; |
7498
|
|
|
|
|
|
|
} |
7499
|
1
|
50
|
33
|
|
|
104
|
if (!defined($return) && defined($score)) |
7500
|
|
|
|
|
|
|
{ |
7501
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
7502
|
|
|
|
|
|
|
q{envelope}, |
7503
|
|
|
|
|
|
|
$tracelevel) |
7504
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7505
|
0
|
|
|
|
|
0
|
$return = $score_return; |
7506
|
|
|
|
|
|
|
} |
7507
|
1
|
|
|
|
|
3
|
splice @{$thisparser->{errors}}, $err_at; |
|
1
|
|
|
|
|
4
|
|
7508
|
1
|
50
|
|
|
|
5
|
$return = $item[$#item] unless defined $return; |
7509
|
1
|
50
|
|
|
|
4
|
if (defined $::RD_TRACE) |
7510
|
|
|
|
|
|
|
{ |
7511
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
7512
|
|
|
|
|
|
|
$return . q{])}, "", |
7513
|
|
|
|
|
|
|
q{envelope}, |
7514
|
|
|
|
|
|
|
$tracelevel); |
7515
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
7516
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
7517
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7518
|
|
|
|
|
|
|
, q{envelope}, |
7519
|
|
|
|
|
|
|
$tracelevel) |
7520
|
|
|
|
|
|
|
} |
7521
|
1
|
|
|
|
|
3
|
$_[1] = $text; |
7522
|
1
|
|
|
|
|
11
|
return $return; |
7523
|
|
|
|
|
|
|
} |
7524
|
|
|
|
|
|
|
|
7525
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
7526
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::envelopestruct |
7527
|
|
|
|
|
|
|
{ |
7528
|
25
|
|
|
25
|
|
600
|
my $thisparser = $_[0]; |
7529
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
581
|
|
7530
|
25
|
|
100
|
|
|
93
|
local $tracelevel = ($tracelevel||0)+1; |
7531
|
25
|
|
|
|
|
54
|
$ERRORS = 0; |
7532
|
25
|
|
|
|
|
78
|
my $thisrule = $thisparser->{"rules"}{"envelopestruct"}; |
7533
|
|
|
|
|
|
|
|
7534
|
25
|
50
|
|
|
|
82
|
Parse::RecDescent::_trace(q{Trying rule: [envelopestruct]}, |
7535
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
7536
|
|
|
|
|
|
|
q{envelopestruct}, |
7537
|
|
|
|
|
|
|
$tracelevel) |
7538
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7539
|
|
|
|
|
|
|
|
7540
|
25
|
|
|
|
|
48
|
my $def_at = @{$thisparser->{deferred}}; |
|
25
|
|
|
|
|
59
|
|
7541
|
25
|
|
|
|
|
47
|
my $err_at = @{$thisparser->{errors}}; |
|
25
|
|
|
|
|
60
|
|
7542
|
|
|
|
|
|
|
|
7543
|
25
|
|
|
|
|
70
|
my $score; |
7544
|
|
|
|
|
|
|
my $score_return; |
7545
|
25
|
|
|
|
|
0
|
my $_tok; |
7546
|
25
|
|
|
|
|
31
|
my $return = undef; |
7547
|
25
|
|
|
|
|
44
|
my $_matched=0; |
7548
|
25
|
|
|
|
|
62
|
my $commit=0; |
7549
|
25
|
|
|
|
|
47
|
my @item = (); |
7550
|
25
|
|
|
|
|
47
|
my %item = (); |
7551
|
25
|
|
|
|
|
46
|
my $repeating = $_[2]; |
7552
|
25
|
|
|
|
|
52
|
my $_noactions = $_[3]; |
7553
|
25
|
50
|
|
|
|
64
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
25
|
|
|
|
|
39
|
|
|
25
|
|
|
|
|
50
|
|
7554
|
25
|
|
|
|
|
59
|
my $_itempos = $_[5]; |
7555
|
25
|
50
|
|
|
|
83
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
7556
|
25
|
|
|
|
|
65
|
my $text; |
7557
|
|
|
|
|
|
|
my $lastsep; |
7558
|
25
|
|
|
|
|
0
|
my $current_match; |
7559
|
25
|
|
|
|
|
81
|
my $expectation = new Parse::RecDescent::Expectation(q{'('}); |
7560
|
25
|
|
|
|
|
189
|
$expectation->at($_[1]); |
7561
|
|
|
|
|
|
|
|
7562
|
25
|
|
|
|
|
105
|
my $thisline; |
7563
|
25
|
|
|
|
|
95
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
7564
|
|
|
|
|
|
|
|
7565
|
|
|
|
|
|
|
|
7566
|
|
|
|
|
|
|
|
7567
|
25
|
|
33
|
|
|
258
|
while (!$_matched && !$commit) |
7568
|
|
|
|
|
|
|
{ |
7569
|
|
|
|
|
|
|
|
7570
|
25
|
50
|
|
|
|
82
|
Parse::RecDescent::_trace(q{Trying production: ['(' date subject from sender replyto to cc bcc inreplyto messageid ')']}, |
7571
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
7572
|
|
|
|
|
|
|
q{envelopestruct}, |
7573
|
|
|
|
|
|
|
$tracelevel) |
7574
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7575
|
25
|
|
|
|
|
75
|
my $thisprod = $thisrule->{"prods"}[0]; |
7576
|
25
|
|
|
|
|
57
|
$text = $_[1]; |
7577
|
25
|
|
|
|
|
42
|
my $_savetext; |
7578
|
25
|
|
|
|
|
59
|
@item = (q{envelopestruct}); |
7579
|
25
|
|
|
|
|
56
|
%item = (__RULE__ => q{envelopestruct}); |
7580
|
25
|
|
|
|
|
55
|
my $repcount = 0; |
7581
|
|
|
|
|
|
|
|
7582
|
|
|
|
|
|
|
|
7583
|
25
|
50
|
|
|
|
60
|
Parse::RecDescent::_trace(q{Trying terminal: ['(']}, |
7584
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7585
|
|
|
|
|
|
|
q{envelopestruct}, |
7586
|
|
|
|
|
|
|
$tracelevel) |
7587
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7588
|
25
|
|
|
|
|
53
|
undef $lastsep; |
7589
|
25
|
|
|
|
|
60
|
$expectation->is(q{})->at($text); |
7590
|
|
|
|
|
|
|
|
7591
|
|
|
|
|
|
|
|
7592
|
25
|
100
|
33
|
|
|
331
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and do { $_tok = "("; 1 } and |
|
25
|
100
|
66
|
|
|
232
|
|
|
25
|
|
66
|
|
|
48
|
|
|
25
|
|
|
|
|
191
|
|
7593
|
|
|
|
|
|
|
substr($text,0,length($_tok)) eq $_tok and |
7594
|
24
|
|
|
|
|
60
|
do { substr($text,0,length($_tok)) = ""; 1; } |
|
24
|
|
|
|
|
76
|
|
7595
|
|
|
|
|
|
|
) |
7596
|
|
|
|
|
|
|
{ |
7597
|
1
|
50
|
|
|
|
6
|
$text = $lastsep . $text if defined $lastsep; |
7598
|
|
|
|
|
|
|
|
7599
|
1
|
|
|
|
|
5
|
$expectation->failed(); |
7600
|
1
|
50
|
|
|
|
6
|
Parse::RecDescent::_trace(q{<>}, |
7601
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
7602
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7603
|
1
|
|
|
|
|
3
|
last; |
7604
|
|
|
|
|
|
|
} |
7605
|
24
|
50
|
|
|
|
79
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
7606
|
|
|
|
|
|
|
. $_tok . q{])}, |
7607
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
7608
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7609
|
24
|
|
|
|
|
72
|
push @item, $item{__STRING1__}=$_tok; |
7610
|
|
|
|
|
|
|
|
7611
|
|
|
|
|
|
|
|
7612
|
24
|
50
|
|
|
|
56
|
Parse::RecDescent::_trace(q{Trying subrule: [date]}, |
7613
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7614
|
|
|
|
|
|
|
q{envelopestruct}, |
7615
|
|
|
|
|
|
|
$tracelevel) |
7616
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7617
|
1
|
|
|
1
|
|
9
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
161
|
|
|
24
|
|
|
|
|
46
|
|
7618
|
24
|
|
|
|
|
79
|
$expectation->is(q{date})->at($text); |
7619
|
24
|
50
|
|
24
|
|
303
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::date($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
54
|
|
7620
|
|
|
|
|
|
|
{ |
7621
|
|
|
|
|
|
|
|
7622
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7623
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7624
|
|
|
|
|
|
|
q{envelopestruct}, |
7625
|
|
|
|
|
|
|
$tracelevel) |
7626
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7627
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
7628
|
0
|
|
|
|
|
0
|
last; |
7629
|
|
|
|
|
|
|
} |
7630
|
24
|
50
|
|
|
|
90
|
Parse::RecDescent::_trace(q{>>Matched subrule: [date]<< (return value: [} |
7631
|
|
|
|
|
|
|
. $_tok . q{]}, |
7632
|
|
|
|
|
|
|
|
7633
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7634
|
|
|
|
|
|
|
q{envelopestruct}, |
7635
|
|
|
|
|
|
|
$tracelevel) |
7636
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7637
|
24
|
|
|
|
|
66
|
$item{q{date}} = $_tok; |
7638
|
24
|
|
|
|
|
47
|
push @item, $_tok; |
7639
|
|
|
|
|
|
|
|
7640
|
|
|
|
|
|
|
} |
7641
|
|
|
|
|
|
|
|
7642
|
24
|
50
|
|
|
|
61
|
Parse::RecDescent::_trace(q{Trying subrule: [subject]}, |
7643
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7644
|
|
|
|
|
|
|
q{envelopestruct}, |
7645
|
|
|
|
|
|
|
$tracelevel) |
7646
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7647
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
192
|
|
|
24
|
|
|
|
|
43
|
|
7648
|
24
|
|
|
|
|
83
|
$expectation->is(q{subject})->at($text); |
7649
|
24
|
50
|
|
24
|
|
335
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::subject($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
60
|
|
7650
|
|
|
|
|
|
|
{ |
7651
|
|
|
|
|
|
|
|
7652
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7653
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7654
|
|
|
|
|
|
|
q{envelopestruct}, |
7655
|
|
|
|
|
|
|
$tracelevel) |
7656
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7657
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
7658
|
0
|
|
|
|
|
0
|
last; |
7659
|
|
|
|
|
|
|
} |
7660
|
24
|
50
|
|
|
|
93
|
Parse::RecDescent::_trace(q{>>Matched subrule: [subject]<< (return value: [} |
7661
|
|
|
|
|
|
|
. $_tok . q{]}, |
7662
|
|
|
|
|
|
|
|
7663
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7664
|
|
|
|
|
|
|
q{envelopestruct}, |
7665
|
|
|
|
|
|
|
$tracelevel) |
7666
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7667
|
24
|
|
|
|
|
60
|
$item{q{subject}} = $_tok; |
7668
|
24
|
|
|
|
|
62
|
push @item, $_tok; |
7669
|
|
|
|
|
|
|
|
7670
|
|
|
|
|
|
|
} |
7671
|
|
|
|
|
|
|
|
7672
|
24
|
50
|
|
|
|
66
|
Parse::RecDescent::_trace(q{Trying subrule: [from]}, |
7673
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7674
|
|
|
|
|
|
|
q{envelopestruct}, |
7675
|
|
|
|
|
|
|
$tracelevel) |
7676
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7677
|
1
|
|
|
1
|
|
9
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
1
|
|
|
1
|
|
|
|
|
183
|
|
|
24
|
|
|
|
|
37
|
|
7678
|
24
|
|
|
|
|
94
|
$expectation->is(q{from})->at($text); |
7679
|
24
|
50
|
|
24
|
|
343
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::from($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
71
|
|
7680
|
|
|
|
|
|
|
{ |
7681
|
|
|
|
|
|
|
|
7682
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7683
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7684
|
|
|
|
|
|
|
q{envelopestruct}, |
7685
|
|
|
|
|
|
|
$tracelevel) |
7686
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7687
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
7688
|
0
|
|
|
|
|
0
|
last; |
7689
|
|
|
|
|
|
|
} |
7690
|
24
|
50
|
|
|
|
93
|
Parse::RecDescent::_trace(q{>>Matched subrule: [from]<< (return value: [} |
7691
|
|
|
|
|
|
|
. $_tok . q{]}, |
7692
|
|
|
|
|
|
|
|
7693
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7694
|
|
|
|
|
|
|
q{envelopestruct}, |
7695
|
|
|
|
|
|
|
$tracelevel) |
7696
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7697
|
24
|
|
|
|
|
60
|
$item{q{from}} = $_tok; |
7698
|
24
|
|
|
|
|
52
|
push @item, $_tok; |
7699
|
|
|
|
|
|
|
|
7700
|
|
|
|
|
|
|
} |
7701
|
|
|
|
|
|
|
|
7702
|
24
|
50
|
|
|
|
63
|
Parse::RecDescent::_trace(q{Trying subrule: [sender]}, |
7703
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7704
|
|
|
|
|
|
|
q{envelopestruct}, |
7705
|
|
|
|
|
|
|
$tracelevel) |
7706
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7707
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
191
|
|
|
24
|
|
|
|
|
42
|
|
7708
|
24
|
|
|
|
|
71
|
$expectation->is(q{sender})->at($text); |
7709
|
24
|
50
|
|
24
|
|
332
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::sender($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
54
|
|
7710
|
|
|
|
|
|
|
{ |
7711
|
|
|
|
|
|
|
|
7712
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7713
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7714
|
|
|
|
|
|
|
q{envelopestruct}, |
7715
|
|
|
|
|
|
|
$tracelevel) |
7716
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7717
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
7718
|
0
|
|
|
|
|
0
|
last; |
7719
|
|
|
|
|
|
|
} |
7720
|
24
|
50
|
|
|
|
102
|
Parse::RecDescent::_trace(q{>>Matched subrule: [sender]<< (return value: [} |
7721
|
|
|
|
|
|
|
. $_tok . q{]}, |
7722
|
|
|
|
|
|
|
|
7723
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7724
|
|
|
|
|
|
|
q{envelopestruct}, |
7725
|
|
|
|
|
|
|
$tracelevel) |
7726
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7727
|
24
|
|
|
|
|
63
|
$item{q{sender}} = $_tok; |
7728
|
24
|
|
|
|
|
53
|
push @item, $_tok; |
7729
|
|
|
|
|
|
|
|
7730
|
|
|
|
|
|
|
} |
7731
|
|
|
|
|
|
|
|
7732
|
24
|
50
|
|
|
|
67
|
Parse::RecDescent::_trace(q{Trying subrule: [replyto]}, |
7733
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7734
|
|
|
|
|
|
|
q{envelopestruct}, |
7735
|
|
|
|
|
|
|
$tracelevel) |
7736
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7737
|
1
|
|
|
1
|
|
7
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
149
|
|
|
24
|
|
|
|
|
39
|
|
7738
|
24
|
|
|
|
|
74
|
$expectation->is(q{replyto})->at($text); |
7739
|
24
|
50
|
|
24
|
|
287
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::replyto($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
55
|
|
7740
|
|
|
|
|
|
|
{ |
7741
|
|
|
|
|
|
|
|
7742
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7743
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7744
|
|
|
|
|
|
|
q{envelopestruct}, |
7745
|
|
|
|
|
|
|
$tracelevel) |
7746
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7747
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
7748
|
0
|
|
|
|
|
0
|
last; |
7749
|
|
|
|
|
|
|
} |
7750
|
24
|
50
|
|
|
|
89
|
Parse::RecDescent::_trace(q{>>Matched subrule: [replyto]<< (return value: [} |
7751
|
|
|
|
|
|
|
. $_tok . q{]}, |
7752
|
|
|
|
|
|
|
|
7753
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7754
|
|
|
|
|
|
|
q{envelopestruct}, |
7755
|
|
|
|
|
|
|
$tracelevel) |
7756
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7757
|
24
|
|
|
|
|
60
|
$item{q{replyto}} = $_tok; |
7758
|
24
|
|
|
|
|
53
|
push @item, $_tok; |
7759
|
|
|
|
|
|
|
|
7760
|
|
|
|
|
|
|
} |
7761
|
|
|
|
|
|
|
|
7762
|
24
|
50
|
|
|
|
67
|
Parse::RecDescent::_trace(q{Trying subrule: [to]}, |
7763
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7764
|
|
|
|
|
|
|
q{envelopestruct}, |
7765
|
|
|
|
|
|
|
$tracelevel) |
7766
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7767
|
1
|
|
|
1
|
|
7
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
177
|
|
|
24
|
|
|
|
|
36
|
|
7768
|
24
|
|
|
|
|
80
|
$expectation->is(q{to})->at($text); |
7769
|
24
|
50
|
|
24
|
|
291
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::to($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
50
|
|
7770
|
|
|
|
|
|
|
{ |
7771
|
|
|
|
|
|
|
|
7772
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7773
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7774
|
|
|
|
|
|
|
q{envelopestruct}, |
7775
|
|
|
|
|
|
|
$tracelevel) |
7776
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7777
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
7778
|
0
|
|
|
|
|
0
|
last; |
7779
|
|
|
|
|
|
|
} |
7780
|
24
|
50
|
|
|
|
94
|
Parse::RecDescent::_trace(q{>>Matched subrule: [to]<< (return value: [} |
7781
|
|
|
|
|
|
|
. $_tok . q{]}, |
7782
|
|
|
|
|
|
|
|
7783
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7784
|
|
|
|
|
|
|
q{envelopestruct}, |
7785
|
|
|
|
|
|
|
$tracelevel) |
7786
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7787
|
24
|
|
|
|
|
71
|
$item{q{to}} = $_tok; |
7788
|
24
|
|
|
|
|
55
|
push @item, $_tok; |
7789
|
|
|
|
|
|
|
|
7790
|
|
|
|
|
|
|
} |
7791
|
|
|
|
|
|
|
|
7792
|
24
|
50
|
|
|
|
66
|
Parse::RecDescent::_trace(q{Trying subrule: [cc]}, |
7793
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7794
|
|
|
|
|
|
|
q{envelopestruct}, |
7795
|
|
|
|
|
|
|
$tracelevel) |
7796
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7797
|
1
|
|
|
1
|
|
7
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
190
|
|
|
24
|
|
|
|
|
38
|
|
7798
|
24
|
|
|
|
|
86
|
$expectation->is(q{cc})->at($text); |
7799
|
24
|
50
|
|
24
|
|
304
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::cc($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
60
|
|
7800
|
|
|
|
|
|
|
{ |
7801
|
|
|
|
|
|
|
|
7802
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7803
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7804
|
|
|
|
|
|
|
q{envelopestruct}, |
7805
|
|
|
|
|
|
|
$tracelevel) |
7806
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7807
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
7808
|
0
|
|
|
|
|
0
|
last; |
7809
|
|
|
|
|
|
|
} |
7810
|
24
|
50
|
|
|
|
89
|
Parse::RecDescent::_trace(q{>>Matched subrule: [cc]<< (return value: [} |
7811
|
|
|
|
|
|
|
. $_tok . q{]}, |
7812
|
|
|
|
|
|
|
|
7813
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7814
|
|
|
|
|
|
|
q{envelopestruct}, |
7815
|
|
|
|
|
|
|
$tracelevel) |
7816
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7817
|
24
|
|
|
|
|
70
|
$item{q{cc}} = $_tok; |
7818
|
24
|
|
|
|
|
88
|
push @item, $_tok; |
7819
|
|
|
|
|
|
|
|
7820
|
|
|
|
|
|
|
} |
7821
|
|
|
|
|
|
|
|
7822
|
24
|
50
|
|
|
|
64
|
Parse::RecDescent::_trace(q{Trying subrule: [bcc]}, |
7823
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7824
|
|
|
|
|
|
|
q{envelopestruct}, |
7825
|
|
|
|
|
|
|
$tracelevel) |
7826
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7827
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
194
|
|
|
24
|
|
|
|
|
38
|
|
7828
|
24
|
|
|
|
|
82
|
$expectation->is(q{bcc})->at($text); |
7829
|
24
|
50
|
|
24
|
|
292
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bcc($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
55
|
|
7830
|
|
|
|
|
|
|
{ |
7831
|
|
|
|
|
|
|
|
7832
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7833
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7834
|
|
|
|
|
|
|
q{envelopestruct}, |
7835
|
|
|
|
|
|
|
$tracelevel) |
7836
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7837
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
7838
|
0
|
|
|
|
|
0
|
last; |
7839
|
|
|
|
|
|
|
} |
7840
|
24
|
50
|
|
|
|
95
|
Parse::RecDescent::_trace(q{>>Matched subrule: [bcc]<< (return value: [} |
7841
|
|
|
|
|
|
|
. $_tok . q{]}, |
7842
|
|
|
|
|
|
|
|
7843
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7844
|
|
|
|
|
|
|
q{envelopestruct}, |
7845
|
|
|
|
|
|
|
$tracelevel) |
7846
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7847
|
24
|
|
|
|
|
70
|
$item{q{bcc}} = $_tok; |
7848
|
24
|
|
|
|
|
54
|
push @item, $_tok; |
7849
|
|
|
|
|
|
|
|
7850
|
|
|
|
|
|
|
} |
7851
|
|
|
|
|
|
|
|
7852
|
24
|
50
|
|
|
|
74
|
Parse::RecDescent::_trace(q{Trying subrule: [inreplyto]}, |
7853
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7854
|
|
|
|
|
|
|
q{envelopestruct}, |
7855
|
|
|
|
|
|
|
$tracelevel) |
7856
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7857
|
1
|
|
|
1
|
|
7
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
176
|
|
|
24
|
|
|
|
|
37
|
|
7858
|
24
|
|
|
|
|
114
|
$expectation->is(q{inreplyto})->at($text); |
7859
|
24
|
50
|
|
24
|
|
289
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::inreplyto($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
58
|
|
7860
|
|
|
|
|
|
|
{ |
7861
|
|
|
|
|
|
|
|
7862
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7863
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7864
|
|
|
|
|
|
|
q{envelopestruct}, |
7865
|
|
|
|
|
|
|
$tracelevel) |
7866
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7867
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
7868
|
0
|
|
|
|
|
0
|
last; |
7869
|
|
|
|
|
|
|
} |
7870
|
24
|
50
|
|
|
|
83
|
Parse::RecDescent::_trace(q{>>Matched subrule: [inreplyto]<< (return value: [} |
7871
|
|
|
|
|
|
|
. $_tok . q{]}, |
7872
|
|
|
|
|
|
|
|
7873
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7874
|
|
|
|
|
|
|
q{envelopestruct}, |
7875
|
|
|
|
|
|
|
$tracelevel) |
7876
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7877
|
24
|
|
|
|
|
65
|
$item{q{inreplyto}} = $_tok; |
7878
|
24
|
|
|
|
|
53
|
push @item, $_tok; |
7879
|
|
|
|
|
|
|
|
7880
|
|
|
|
|
|
|
} |
7881
|
|
|
|
|
|
|
|
7882
|
24
|
50
|
|
|
|
62
|
Parse::RecDescent::_trace(q{Trying subrule: [messageid]}, |
7883
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7884
|
|
|
|
|
|
|
q{envelopestruct}, |
7885
|
|
|
|
|
|
|
$tracelevel) |
7886
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7887
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
831
|
|
|
24
|
|
|
|
|
41
|
|
7888
|
24
|
|
|
|
|
93
|
$expectation->is(q{messageid})->at($text); |
7889
|
24
|
50
|
|
24
|
|
298
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::messageid($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
55
|
|
7890
|
|
|
|
|
|
|
{ |
7891
|
|
|
|
|
|
|
|
7892
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7893
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7894
|
|
|
|
|
|
|
q{envelopestruct}, |
7895
|
|
|
|
|
|
|
$tracelevel) |
7896
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7897
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
7898
|
0
|
|
|
|
|
0
|
last; |
7899
|
|
|
|
|
|
|
} |
7900
|
24
|
50
|
|
|
|
91
|
Parse::RecDescent::_trace(q{>>Matched subrule: [messageid]<< (return value: [} |
7901
|
|
|
|
|
|
|
. $_tok . q{]}, |
7902
|
|
|
|
|
|
|
|
7903
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7904
|
|
|
|
|
|
|
q{envelopestruct}, |
7905
|
|
|
|
|
|
|
$tracelevel) |
7906
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7907
|
24
|
|
|
|
|
65
|
$item{q{messageid}} = $_tok; |
7908
|
24
|
|
|
|
|
50
|
push @item, $_tok; |
7909
|
|
|
|
|
|
|
|
7910
|
|
|
|
|
|
|
} |
7911
|
|
|
|
|
|
|
|
7912
|
24
|
50
|
|
|
|
62
|
Parse::RecDescent::_trace(q{Trying terminal: [')']}, |
7913
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7914
|
|
|
|
|
|
|
q{envelopestruct}, |
7915
|
|
|
|
|
|
|
$tracelevel) |
7916
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7917
|
24
|
|
|
|
|
44
|
undef $lastsep; |
7918
|
24
|
|
|
|
|
87
|
$expectation->is(q{')'})->at($text); |
7919
|
|
|
|
|
|
|
|
7920
|
|
|
|
|
|
|
|
7921
|
24
|
50
|
33
|
|
|
308
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and do { $_tok = ")"; 1 } and |
|
24
|
50
|
33
|
|
|
199
|
|
|
24
|
|
33
|
|
|
57
|
|
|
24
|
|
|
|
|
158
|
|
7922
|
|
|
|
|
|
|
substr($text,0,length($_tok)) eq $_tok and |
7923
|
24
|
|
|
|
|
53
|
do { substr($text,0,length($_tok)) = ""; 1; } |
|
24
|
|
|
|
|
78
|
|
7924
|
|
|
|
|
|
|
) |
7925
|
|
|
|
|
|
|
{ |
7926
|
0
|
0
|
|
|
|
0
|
$text = $lastsep . $text if defined $lastsep; |
7927
|
|
|
|
|
|
|
|
7928
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
7929
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
7930
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
7931
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7932
|
0
|
|
|
|
|
0
|
last; |
7933
|
|
|
|
|
|
|
} |
7934
|
24
|
50
|
|
|
|
73
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
7935
|
|
|
|
|
|
|
. $_tok . q{])}, |
7936
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
7937
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7938
|
24
|
|
|
|
|
71
|
push @item, $item{__STRING2__}=$_tok; |
7939
|
|
|
|
|
|
|
|
7940
|
|
|
|
|
|
|
|
7941
|
24
|
50
|
|
|
|
73
|
Parse::RecDescent::_trace(q{Trying action}, |
7942
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7943
|
|
|
|
|
|
|
q{envelopestruct}, |
7944
|
|
|
|
|
|
|
$tracelevel) |
7945
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7946
|
|
|
|
|
|
|
|
7947
|
|
|
|
|
|
|
|
7948
|
24
|
50
|
|
|
|
53
|
$_tok = ($_noactions) ? 0 : do { $return = bless {}, "Mail::IMAPClient::BodyStructure::Envelope"; |
|
24
|
|
|
|
|
76
|
|
7949
|
|
|
|
|
|
|
$return->{$_} = $item{$_} |
7950
|
24
|
|
|
|
|
341
|
for qw/date subject from sender replyto to cc/ |
7951
|
|
|
|
|
|
|
, qw/bcc inreplyto messageid/; |
7952
|
24
|
|
|
|
|
56
|
1; |
7953
|
|
|
|
|
|
|
}; |
7954
|
24
|
50
|
|
|
|
100
|
unless (defined $_tok) |
7955
|
|
|
|
|
|
|
{ |
7956
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
7957
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7958
|
0
|
|
|
|
|
0
|
last; |
7959
|
|
|
|
|
|
|
} |
7960
|
24
|
50
|
|
|
|
70
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
7961
|
|
|
|
|
|
|
. $_tok . q{])}, |
7962
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
7963
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7964
|
24
|
|
|
|
|
49
|
push @item, $_tok; |
7965
|
24
|
|
|
|
|
80
|
$item{__ACTION1__}=$_tok; |
7966
|
|
|
|
|
|
|
|
7967
|
|
|
|
|
|
|
|
7968
|
24
|
50
|
|
|
|
60
|
Parse::RecDescent::_trace(q{>>Matched production: ['(' date subject from sender replyto to cc bcc inreplyto messageid ')']<<}, |
7969
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
7970
|
|
|
|
|
|
|
q{envelopestruct}, |
7971
|
|
|
|
|
|
|
$tracelevel) |
7972
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7973
|
|
|
|
|
|
|
|
7974
|
|
|
|
|
|
|
|
7975
|
|
|
|
|
|
|
|
7976
|
24
|
|
|
|
|
46
|
$_matched = 1; |
7977
|
24
|
|
|
|
|
55
|
last; |
7978
|
|
|
|
|
|
|
} |
7979
|
|
|
|
|
|
|
|
7980
|
|
|
|
|
|
|
splice |
7981
|
25
|
100
|
|
|
|
67
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
1
|
|
|
|
|
4
|
|
7982
|
|
|
|
|
|
|
|
7983
|
25
|
100
|
66
|
|
|
91
|
unless ( $_matched || defined($score) ) |
7984
|
|
|
|
|
|
|
{ |
7985
|
1
|
|
|
|
|
2
|
splice @{$thisparser->{deferred}}, $def_at; |
|
1
|
|
|
|
|
4
|
|
7986
|
|
|
|
|
|
|
|
7987
|
|
|
|
|
|
|
|
7988
|
1
|
|
|
|
|
3
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
7989
|
1
|
50
|
|
|
|
3
|
Parse::RecDescent::_trace(q{<>}, |
7990
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
7991
|
|
|
|
|
|
|
q{envelopestruct}, |
7992
|
|
|
|
|
|
|
$tracelevel) |
7993
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
7994
|
1
|
|
|
|
|
6
|
return undef; |
7995
|
|
|
|
|
|
|
} |
7996
|
24
|
50
|
33
|
|
|
81
|
if (!defined($return) && defined($score)) |
7997
|
|
|
|
|
|
|
{ |
7998
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
7999
|
|
|
|
|
|
|
q{envelopestruct}, |
8000
|
|
|
|
|
|
|
$tracelevel) |
8001
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8002
|
0
|
|
|
|
|
0
|
$return = $score_return; |
8003
|
|
|
|
|
|
|
} |
8004
|
24
|
|
|
|
|
40
|
splice @{$thisparser->{errors}}, $err_at; |
|
24
|
|
|
|
|
65
|
|
8005
|
24
|
50
|
|
|
|
55
|
$return = $item[$#item] unless defined $return; |
8006
|
24
|
50
|
|
|
|
65
|
if (defined $::RD_TRACE) |
8007
|
|
|
|
|
|
|
{ |
8008
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
8009
|
|
|
|
|
|
|
$return . q{])}, "", |
8010
|
|
|
|
|
|
|
q{envelopestruct}, |
8011
|
|
|
|
|
|
|
$tracelevel); |
8012
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
8013
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
8014
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8015
|
|
|
|
|
|
|
, q{envelopestruct}, |
8016
|
|
|
|
|
|
|
$tracelevel) |
8017
|
|
|
|
|
|
|
} |
8018
|
24
|
|
|
|
|
76
|
$_[1] = $text; |
8019
|
24
|
|
|
|
|
217
|
return $return; |
8020
|
|
|
|
|
|
|
} |
8021
|
|
|
|
|
|
|
|
8022
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
8023
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::from |
8024
|
|
|
|
|
|
|
{ |
8025
|
24
|
|
|
24
|
|
50
|
my $thisparser = $_[0]; |
8026
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
381
|
|
8027
|
24
|
|
50
|
|
|
74
|
local $tracelevel = ($tracelevel||0)+1; |
8028
|
24
|
|
|
|
|
46
|
$ERRORS = 0; |
8029
|
24
|
|
|
|
|
77
|
my $thisrule = $thisparser->{"rules"}{"from"}; |
8030
|
|
|
|
|
|
|
|
8031
|
24
|
50
|
|
|
|
63
|
Parse::RecDescent::_trace(q{Trying rule: [from]}, |
8032
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8033
|
|
|
|
|
|
|
q{from}, |
8034
|
|
|
|
|
|
|
$tracelevel) |
8035
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8036
|
|
|
|
|
|
|
|
8037
|
24
|
|
|
|
|
44
|
my $def_at = @{$thisparser->{deferred}}; |
|
24
|
|
|
|
|
94
|
|
8038
|
24
|
|
|
|
|
44
|
my $err_at = @{$thisparser->{errors}}; |
|
24
|
|
|
|
|
56
|
|
8039
|
|
|
|
|
|
|
|
8040
|
24
|
|
|
|
|
71
|
my $score; |
8041
|
|
|
|
|
|
|
my $score_return; |
8042
|
24
|
|
|
|
|
0
|
my $_tok; |
8043
|
24
|
|
|
|
|
37
|
my $return = undef; |
8044
|
24
|
|
|
|
|
43
|
my $_matched=0; |
8045
|
24
|
|
|
|
|
36
|
my $commit=0; |
8046
|
24
|
|
|
|
|
49
|
my @item = (); |
8047
|
24
|
|
|
|
|
56
|
my %item = (); |
8048
|
24
|
|
|
|
|
38
|
my $repeating = $_[2]; |
8049
|
24
|
|
|
|
|
53
|
my $_noactions = $_[3]; |
8050
|
24
|
50
|
|
|
|
67
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
24
|
|
|
|
|
40
|
|
|
24
|
|
|
|
|
48
|
|
8051
|
24
|
|
|
|
|
44
|
my $_itempos = $_[5]; |
8052
|
24
|
50
|
|
|
|
83
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
8053
|
24
|
|
|
|
|
68
|
my $text; |
8054
|
|
|
|
|
|
|
my $lastsep; |
8055
|
24
|
|
|
|
|
0
|
my $current_match; |
8056
|
24
|
|
|
|
|
83
|
my $expectation = new Parse::RecDescent::Expectation(q{ADDRESSES}); |
8057
|
24
|
|
|
|
|
190
|
$expectation->at($_[1]); |
8058
|
|
|
|
|
|
|
|
8059
|
24
|
|
|
|
|
135
|
my $thisline; |
8060
|
24
|
|
|
|
|
104
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
8061
|
|
|
|
|
|
|
|
8062
|
|
|
|
|
|
|
|
8063
|
|
|
|
|
|
|
|
8064
|
24
|
|
33
|
|
|
232
|
while (!$_matched && !$commit) |
8065
|
|
|
|
|
|
|
{ |
8066
|
|
|
|
|
|
|
|
8067
|
24
|
50
|
|
|
|
76
|
Parse::RecDescent::_trace(q{Trying production: [ADDRESSES]}, |
8068
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8069
|
|
|
|
|
|
|
q{from}, |
8070
|
|
|
|
|
|
|
$tracelevel) |
8071
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8072
|
24
|
|
|
|
|
73
|
my $thisprod = $thisrule->{"prods"}[0]; |
8073
|
24
|
|
|
|
|
62
|
$text = $_[1]; |
8074
|
24
|
|
|
|
|
38
|
my $_savetext; |
8075
|
24
|
|
|
|
|
51
|
@item = (q{from}); |
8076
|
24
|
|
|
|
|
70
|
%item = (__RULE__ => q{from}); |
8077
|
24
|
|
|
|
|
49
|
my $repcount = 0; |
8078
|
|
|
|
|
|
|
|
8079
|
|
|
|
|
|
|
|
8080
|
24
|
50
|
|
|
|
53
|
Parse::RecDescent::_trace(q{Trying subrule: [ADDRESSES]}, |
8081
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8082
|
|
|
|
|
|
|
q{from}, |
8083
|
|
|
|
|
|
|
$tracelevel) |
8084
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8085
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
432
|
|
|
24
|
|
|
|
|
41
|
|
8086
|
24
|
|
|
|
|
74
|
$expectation->is(q{})->at($text); |
8087
|
24
|
50
|
|
24
|
|
307
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::ADDRESSES($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
63
|
|
8088
|
|
|
|
|
|
|
{ |
8089
|
|
|
|
|
|
|
|
8090
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
8091
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8092
|
|
|
|
|
|
|
q{from}, |
8093
|
|
|
|
|
|
|
$tracelevel) |
8094
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8095
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
8096
|
0
|
|
|
|
|
0
|
last; |
8097
|
|
|
|
|
|
|
} |
8098
|
24
|
50
|
|
|
|
104
|
Parse::RecDescent::_trace(q{>>Matched subrule: [ADDRESSES]<< (return value: [} |
8099
|
|
|
|
|
|
|
. $_tok . q{]}, |
8100
|
|
|
|
|
|
|
|
8101
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8102
|
|
|
|
|
|
|
q{from}, |
8103
|
|
|
|
|
|
|
$tracelevel) |
8104
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8105
|
24
|
|
|
|
|
59
|
$item{q{ADDRESSES}} = $_tok; |
8106
|
24
|
|
|
|
|
51
|
push @item, $_tok; |
8107
|
|
|
|
|
|
|
|
8108
|
|
|
|
|
|
|
} |
8109
|
|
|
|
|
|
|
|
8110
|
24
|
50
|
|
|
|
52
|
Parse::RecDescent::_trace(q{>>Matched production: [ADDRESSES]<<}, |
8111
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8112
|
|
|
|
|
|
|
q{from}, |
8113
|
|
|
|
|
|
|
$tracelevel) |
8114
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8115
|
|
|
|
|
|
|
|
8116
|
|
|
|
|
|
|
|
8117
|
|
|
|
|
|
|
|
8118
|
24
|
|
|
|
|
36
|
$_matched = 1; |
8119
|
24
|
|
|
|
|
40
|
last; |
8120
|
|
|
|
|
|
|
} |
8121
|
|
|
|
|
|
|
|
8122
|
|
|
|
|
|
|
splice |
8123
|
24
|
50
|
|
|
|
74
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
8124
|
|
|
|
|
|
|
|
8125
|
24
|
50
|
33
|
|
|
72
|
unless ( $_matched || defined($score) ) |
8126
|
|
|
|
|
|
|
{ |
8127
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
8128
|
|
|
|
|
|
|
|
8129
|
|
|
|
|
|
|
|
8130
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
8131
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
8132
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8133
|
|
|
|
|
|
|
q{from}, |
8134
|
|
|
|
|
|
|
$tracelevel) |
8135
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8136
|
0
|
|
|
|
|
0
|
return undef; |
8137
|
|
|
|
|
|
|
} |
8138
|
24
|
50
|
33
|
|
|
98
|
if (!defined($return) && defined($score)) |
8139
|
|
|
|
|
|
|
{ |
8140
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
8141
|
|
|
|
|
|
|
q{from}, |
8142
|
|
|
|
|
|
|
$tracelevel) |
8143
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8144
|
0
|
|
|
|
|
0
|
$return = $score_return; |
8145
|
|
|
|
|
|
|
} |
8146
|
24
|
|
|
|
|
47
|
splice @{$thisparser->{errors}}, $err_at; |
|
24
|
|
|
|
|
62
|
|
8147
|
24
|
50
|
|
|
|
71
|
$return = $item[$#item] unless defined $return; |
8148
|
24
|
50
|
|
|
|
54
|
if (defined $::RD_TRACE) |
8149
|
|
|
|
|
|
|
{ |
8150
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
8151
|
|
|
|
|
|
|
$return . q{])}, "", |
8152
|
|
|
|
|
|
|
q{from}, |
8153
|
|
|
|
|
|
|
$tracelevel); |
8154
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
8155
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
8156
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8157
|
|
|
|
|
|
|
, q{from}, |
8158
|
|
|
|
|
|
|
$tracelevel) |
8159
|
|
|
|
|
|
|
} |
8160
|
24
|
|
|
|
|
57
|
$_[1] = $text; |
8161
|
24
|
|
|
|
|
146
|
return $return; |
8162
|
|
|
|
|
|
|
} |
8163
|
|
|
|
|
|
|
|
8164
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
8165
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::hostname |
8166
|
|
|
|
|
|
|
{ |
8167
|
94
|
|
|
94
|
|
177
|
my $thisparser = $_[0]; |
8168
|
1
|
|
|
1
|
|
11
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
379
|
|
8169
|
94
|
|
50
|
|
|
228
|
local $tracelevel = ($tracelevel||0)+1; |
8170
|
94
|
|
|
|
|
156
|
$ERRORS = 0; |
8171
|
94
|
|
|
|
|
200
|
my $thisrule = $thisparser->{"rules"}{"hostname"}; |
8172
|
|
|
|
|
|
|
|
8173
|
94
|
50
|
|
|
|
195
|
Parse::RecDescent::_trace(q{Trying rule: [hostname]}, |
8174
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8175
|
|
|
|
|
|
|
q{hostname}, |
8176
|
|
|
|
|
|
|
$tracelevel) |
8177
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8178
|
|
|
|
|
|
|
|
8179
|
94
|
|
|
|
|
136
|
my $def_at = @{$thisparser->{deferred}}; |
|
94
|
|
|
|
|
169
|
|
8180
|
94
|
|
|
|
|
170
|
my $err_at = @{$thisparser->{errors}}; |
|
94
|
|
|
|
|
176
|
|
8181
|
|
|
|
|
|
|
|
8182
|
94
|
|
|
|
|
222
|
my $score; |
8183
|
|
|
|
|
|
|
my $score_return; |
8184
|
94
|
|
|
|
|
0
|
my $_tok; |
8185
|
94
|
|
|
|
|
146
|
my $return = undef; |
8186
|
94
|
|
|
|
|
264
|
my $_matched=0; |
8187
|
94
|
|
|
|
|
141
|
my $commit=0; |
8188
|
94
|
|
|
|
|
166
|
my @item = (); |
8189
|
94
|
|
|
|
|
150
|
my %item = (); |
8190
|
94
|
|
|
|
|
126
|
my $repeating = $_[2]; |
8191
|
94
|
|
|
|
|
142
|
my $_noactions = $_[3]; |
8192
|
94
|
50
|
|
|
|
221
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
94
|
|
|
|
|
166
|
|
|
94
|
|
|
|
|
178
|
|
8193
|
94
|
|
|
|
|
154
|
my $_itempos = $_[5]; |
8194
|
94
|
50
|
|
|
|
206
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
8195
|
94
|
|
|
|
|
224
|
my $text; |
8196
|
|
|
|
|
|
|
my $lastsep; |
8197
|
94
|
|
|
|
|
0
|
my $current_match; |
8198
|
94
|
|
|
|
|
253
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or STRING}); |
8199
|
94
|
|
|
|
|
648
|
$expectation->at($_[1]); |
8200
|
|
|
|
|
|
|
|
8201
|
94
|
|
|
|
|
401
|
my $thisline; |
8202
|
94
|
|
|
|
|
352
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
8203
|
|
|
|
|
|
|
|
8204
|
|
|
|
|
|
|
|
8205
|
|
|
|
|
|
|
|
8206
|
94
|
|
33
|
|
|
788
|
while (!$_matched && !$commit) |
8207
|
|
|
|
|
|
|
{ |
8208
|
|
|
|
|
|
|
|
8209
|
94
|
50
|
|
|
|
215
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
8210
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8211
|
|
|
|
|
|
|
q{hostname}, |
8212
|
|
|
|
|
|
|
$tracelevel) |
8213
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8214
|
94
|
|
|
|
|
209
|
my $thisprod = $thisrule->{"prods"}[0]; |
8215
|
94
|
|
|
|
|
161
|
$text = $_[1]; |
8216
|
94
|
|
|
|
|
152
|
my $_savetext; |
8217
|
94
|
|
|
|
|
194
|
@item = (q{hostname}); |
8218
|
94
|
|
|
|
|
186
|
%item = (__RULE__ => q{hostname}); |
8219
|
94
|
|
|
|
|
205
|
my $repcount = 0; |
8220
|
|
|
|
|
|
|
|
8221
|
|
|
|
|
|
|
|
8222
|
94
|
50
|
|
|
|
185
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
8223
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8224
|
|
|
|
|
|
|
q{hostname}, |
8225
|
|
|
|
|
|
|
$tracelevel) |
8226
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8227
|
1
|
|
|
1
|
|
9
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
296
|
|
|
94
|
|
|
|
|
138
|
|
8228
|
94
|
|
|
|
|
220
|
$expectation->is(q{})->at($text); |
8229
|
94
|
50
|
|
94
|
|
877
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
94
|
|
|
|
|
182
|
|
8230
|
|
|
|
|
|
|
{ |
8231
|
|
|
|
|
|
|
|
8232
|
94
|
50
|
|
|
|
234
|
Parse::RecDescent::_trace(q{<>}, |
8233
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8234
|
|
|
|
|
|
|
q{hostname}, |
8235
|
|
|
|
|
|
|
$tracelevel) |
8236
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8237
|
94
|
|
|
|
|
264
|
$expectation->failed(); |
8238
|
94
|
|
|
|
|
334
|
last; |
8239
|
|
|
|
|
|
|
} |
8240
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
8241
|
|
|
|
|
|
|
. $_tok . q{]}, |
8242
|
|
|
|
|
|
|
|
8243
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8244
|
|
|
|
|
|
|
q{hostname}, |
8245
|
|
|
|
|
|
|
$tracelevel) |
8246
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8247
|
0
|
|
|
|
|
0
|
$item{q{NIL}} = $_tok; |
8248
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
8249
|
|
|
|
|
|
|
|
8250
|
|
|
|
|
|
|
} |
8251
|
|
|
|
|
|
|
|
8252
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
8253
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8254
|
|
|
|
|
|
|
q{hostname}, |
8255
|
|
|
|
|
|
|
$tracelevel) |
8256
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8257
|
|
|
|
|
|
|
|
8258
|
|
|
|
|
|
|
|
8259
|
|
|
|
|
|
|
|
8260
|
0
|
|
|
|
|
0
|
$_matched = 1; |
8261
|
0
|
|
|
|
|
0
|
last; |
8262
|
|
|
|
|
|
|
} |
8263
|
|
|
|
|
|
|
|
8264
|
|
|
|
|
|
|
splice |
8265
|
94
|
50
|
|
|
|
363
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
94
|
|
|
|
|
191
|
|
8266
|
|
|
|
|
|
|
|
8267
|
94
|
|
33
|
|
|
371
|
while (!$_matched && !$commit) |
8268
|
|
|
|
|
|
|
{ |
8269
|
|
|
|
|
|
|
|
8270
|
94
|
50
|
|
|
|
204
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
8271
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8272
|
|
|
|
|
|
|
q{hostname}, |
8273
|
|
|
|
|
|
|
$tracelevel) |
8274
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8275
|
94
|
|
|
|
|
156
|
my $thisprod = $thisrule->{"prods"}[1]; |
8276
|
94
|
|
|
|
|
179
|
$text = $_[1]; |
8277
|
94
|
|
|
|
|
135
|
my $_savetext; |
8278
|
94
|
|
|
|
|
215
|
@item = (q{hostname}); |
8279
|
94
|
|
|
|
|
207
|
%item = (__RULE__ => q{hostname}); |
8280
|
94
|
|
|
|
|
154
|
my $repcount = 0; |
8281
|
|
|
|
|
|
|
|
8282
|
|
|
|
|
|
|
|
8283
|
94
|
50
|
|
|
|
196
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
8284
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8285
|
|
|
|
|
|
|
q{hostname}, |
8286
|
|
|
|
|
|
|
$tracelevel) |
8287
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8288
|
1
|
|
|
1
|
|
9
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
452
|
|
|
94
|
|
|
|
|
138
|
|
8289
|
94
|
|
|
|
|
207
|
$expectation->is(q{})->at($text); |
8290
|
94
|
50
|
|
94
|
|
889
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
94
|
|
|
|
|
209
|
|
8291
|
|
|
|
|
|
|
{ |
8292
|
|
|
|
|
|
|
|
8293
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
8294
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8295
|
|
|
|
|
|
|
q{hostname}, |
8296
|
|
|
|
|
|
|
$tracelevel) |
8297
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8298
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
8299
|
0
|
|
|
|
|
0
|
last; |
8300
|
|
|
|
|
|
|
} |
8301
|
94
|
50
|
|
|
|
295
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
8302
|
|
|
|
|
|
|
. $_tok . q{]}, |
8303
|
|
|
|
|
|
|
|
8304
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8305
|
|
|
|
|
|
|
q{hostname}, |
8306
|
|
|
|
|
|
|
$tracelevel) |
8307
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8308
|
94
|
|
|
|
|
194
|
$item{q{STRING}} = $_tok; |
8309
|
94
|
|
|
|
|
182
|
push @item, $_tok; |
8310
|
|
|
|
|
|
|
|
8311
|
|
|
|
|
|
|
} |
8312
|
|
|
|
|
|
|
|
8313
|
94
|
50
|
|
|
|
197
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
8314
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8315
|
|
|
|
|
|
|
q{hostname}, |
8316
|
|
|
|
|
|
|
$tracelevel) |
8317
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8318
|
|
|
|
|
|
|
|
8319
|
|
|
|
|
|
|
|
8320
|
|
|
|
|
|
|
|
8321
|
94
|
|
|
|
|
142
|
$_matched = 1; |
8322
|
94
|
|
|
|
|
168
|
last; |
8323
|
|
|
|
|
|
|
} |
8324
|
|
|
|
|
|
|
|
8325
|
|
|
|
|
|
|
splice |
8326
|
94
|
50
|
|
|
|
193
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
8327
|
|
|
|
|
|
|
|
8328
|
94
|
50
|
33
|
|
|
220
|
unless ( $_matched || defined($score) ) |
8329
|
|
|
|
|
|
|
{ |
8330
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
8331
|
|
|
|
|
|
|
|
8332
|
|
|
|
|
|
|
|
8333
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
8334
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
8335
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8336
|
|
|
|
|
|
|
q{hostname}, |
8337
|
|
|
|
|
|
|
$tracelevel) |
8338
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8339
|
0
|
|
|
|
|
0
|
return undef; |
8340
|
|
|
|
|
|
|
} |
8341
|
94
|
50
|
33
|
|
|
345
|
if (!defined($return) && defined($score)) |
8342
|
|
|
|
|
|
|
{ |
8343
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
8344
|
|
|
|
|
|
|
q{hostname}, |
8345
|
|
|
|
|
|
|
$tracelevel) |
8346
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8347
|
0
|
|
|
|
|
0
|
$return = $score_return; |
8348
|
|
|
|
|
|
|
} |
8349
|
94
|
|
|
|
|
139
|
splice @{$thisparser->{errors}}, $err_at; |
|
94
|
|
|
|
|
200
|
|
8350
|
94
|
50
|
|
|
|
293
|
$return = $item[$#item] unless defined $return; |
8351
|
94
|
50
|
|
|
|
210
|
if (defined $::RD_TRACE) |
8352
|
|
|
|
|
|
|
{ |
8353
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
8354
|
|
|
|
|
|
|
$return . q{])}, "", |
8355
|
|
|
|
|
|
|
q{hostname}, |
8356
|
|
|
|
|
|
|
$tracelevel); |
8357
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
8358
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
8359
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8360
|
|
|
|
|
|
|
, q{hostname}, |
8361
|
|
|
|
|
|
|
$tracelevel) |
8362
|
|
|
|
|
|
|
} |
8363
|
94
|
|
|
|
|
210
|
$_[1] = $text; |
8364
|
94
|
|
|
|
|
462
|
return $return; |
8365
|
|
|
|
|
|
|
} |
8366
|
|
|
|
|
|
|
|
8367
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
8368
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::inreplyto |
8369
|
|
|
|
|
|
|
{ |
8370
|
24
|
|
|
24
|
|
51
|
my $thisparser = $_[0]; |
8371
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
1
|
|
|
1
|
|
|
|
|
357
|
|
8372
|
24
|
|
50
|
|
|
69
|
local $tracelevel = ($tracelevel||0)+1; |
8373
|
24
|
|
|
|
|
45
|
$ERRORS = 0; |
8374
|
24
|
|
|
|
|
63
|
my $thisrule = $thisparser->{"rules"}{"inreplyto"}; |
8375
|
|
|
|
|
|
|
|
8376
|
24
|
50
|
|
|
|
62
|
Parse::RecDescent::_trace(q{Trying rule: [inreplyto]}, |
8377
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8378
|
|
|
|
|
|
|
q{inreplyto}, |
8379
|
|
|
|
|
|
|
$tracelevel) |
8380
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8381
|
|
|
|
|
|
|
|
8382
|
24
|
|
|
|
|
43
|
my $def_at = @{$thisparser->{deferred}}; |
|
24
|
|
|
|
|
57
|
|
8383
|
24
|
|
|
|
|
35
|
my $err_at = @{$thisparser->{errors}}; |
|
24
|
|
|
|
|
50
|
|
8384
|
|
|
|
|
|
|
|
8385
|
24
|
|
|
|
|
73
|
my $score; |
8386
|
|
|
|
|
|
|
my $score_return; |
8387
|
24
|
|
|
|
|
0
|
my $_tok; |
8388
|
24
|
|
|
|
|
48
|
my $return = undef; |
8389
|
24
|
|
|
|
|
36
|
my $_matched=0; |
8390
|
24
|
|
|
|
|
51
|
my $commit=0; |
8391
|
24
|
|
|
|
|
51
|
my @item = (); |
8392
|
24
|
|
|
|
|
53
|
my %item = (); |
8393
|
24
|
|
|
|
|
48
|
my $repeating = $_[2]; |
8394
|
24
|
|
|
|
|
38
|
my $_noactions = $_[3]; |
8395
|
24
|
50
|
|
|
|
69
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
24
|
|
|
|
|
42
|
|
|
24
|
|
|
|
|
51
|
|
8396
|
24
|
|
|
|
|
42
|
my $_itempos = $_[5]; |
8397
|
24
|
50
|
|
|
|
84
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
8398
|
24
|
|
|
|
|
84
|
my $text; |
8399
|
|
|
|
|
|
|
my $lastsep; |
8400
|
24
|
|
|
|
|
0
|
my $current_match; |
8401
|
24
|
|
|
|
|
69
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or STRING}); |
8402
|
24
|
|
|
|
|
213
|
$expectation->at($_[1]); |
8403
|
|
|
|
|
|
|
|
8404
|
24
|
|
|
|
|
148
|
my $thisline; |
8405
|
24
|
|
|
|
|
93
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
8406
|
|
|
|
|
|
|
|
8407
|
|
|
|
|
|
|
|
8408
|
|
|
|
|
|
|
|
8409
|
24
|
|
33
|
|
|
235
|
while (!$_matched && !$commit) |
8410
|
|
|
|
|
|
|
{ |
8411
|
|
|
|
|
|
|
|
8412
|
24
|
50
|
|
|
|
79
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
8413
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8414
|
|
|
|
|
|
|
q{inreplyto}, |
8415
|
|
|
|
|
|
|
$tracelevel) |
8416
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8417
|
24
|
|
|
|
|
73
|
my $thisprod = $thisrule->{"prods"}[0]; |
8418
|
24
|
|
|
|
|
54
|
$text = $_[1]; |
8419
|
24
|
|
|
|
|
39
|
my $_savetext; |
8420
|
24
|
|
|
|
|
61
|
@item = (q{inreplyto}); |
8421
|
24
|
|
|
|
|
60
|
%item = (__RULE__ => q{inreplyto}); |
8422
|
24
|
|
|
|
|
39
|
my $repcount = 0; |
8423
|
|
|
|
|
|
|
|
8424
|
|
|
|
|
|
|
|
8425
|
24
|
50
|
|
|
|
57
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
8426
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8427
|
|
|
|
|
|
|
q{inreplyto}, |
8428
|
|
|
|
|
|
|
$tracelevel) |
8429
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8430
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
273
|
|
|
24
|
|
|
|
|
41
|
|
8431
|
24
|
|
|
|
|
73
|
$expectation->is(q{})->at($text); |
8432
|
24
|
100
|
|
24
|
|
264
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
68
|
|
8433
|
|
|
|
|
|
|
{ |
8434
|
|
|
|
|
|
|
|
8435
|
1
|
50
|
|
|
|
4
|
Parse::RecDescent::_trace(q{<>}, |
8436
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8437
|
|
|
|
|
|
|
q{inreplyto}, |
8438
|
|
|
|
|
|
|
$tracelevel) |
8439
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8440
|
1
|
|
|
|
|
4
|
$expectation->failed(); |
8441
|
1
|
|
|
|
|
4
|
last; |
8442
|
|
|
|
|
|
|
} |
8443
|
23
|
50
|
|
|
|
114
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
8444
|
|
|
|
|
|
|
. $_tok . q{]}, |
8445
|
|
|
|
|
|
|
|
8446
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8447
|
|
|
|
|
|
|
q{inreplyto}, |
8448
|
|
|
|
|
|
|
$tracelevel) |
8449
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8450
|
23
|
|
|
|
|
66
|
$item{q{NIL}} = $_tok; |
8451
|
23
|
|
|
|
|
49
|
push @item, $_tok; |
8452
|
|
|
|
|
|
|
|
8453
|
|
|
|
|
|
|
} |
8454
|
|
|
|
|
|
|
|
8455
|
23
|
50
|
|
|
|
52
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
8456
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8457
|
|
|
|
|
|
|
q{inreplyto}, |
8458
|
|
|
|
|
|
|
$tracelevel) |
8459
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8460
|
|
|
|
|
|
|
|
8461
|
|
|
|
|
|
|
|
8462
|
|
|
|
|
|
|
|
8463
|
23
|
|
|
|
|
44
|
$_matched = 1; |
8464
|
23
|
|
|
|
|
48
|
last; |
8465
|
|
|
|
|
|
|
} |
8466
|
|
|
|
|
|
|
|
8467
|
|
|
|
|
|
|
splice |
8468
|
24
|
100
|
|
|
|
87
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
1
|
|
|
|
|
3
|
|
8469
|
|
|
|
|
|
|
|
8470
|
24
|
|
66
|
|
|
77
|
while (!$_matched && !$commit) |
8471
|
|
|
|
|
|
|
{ |
8472
|
|
|
|
|
|
|
|
8473
|
1
|
50
|
|
|
|
3
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
8474
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8475
|
|
|
|
|
|
|
q{inreplyto}, |
8476
|
|
|
|
|
|
|
$tracelevel) |
8477
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8478
|
1
|
|
|
|
|
3
|
my $thisprod = $thisrule->{"prods"}[1]; |
8479
|
1
|
|
|
|
|
3
|
$text = $_[1]; |
8480
|
1
|
|
|
|
|
2
|
my $_savetext; |
8481
|
1
|
|
|
|
|
5
|
@item = (q{inreplyto}); |
8482
|
1
|
|
|
|
|
3
|
%item = (__RULE__ => q{inreplyto}); |
8483
|
1
|
|
|
|
|
3
|
my $repcount = 0; |
8484
|
|
|
|
|
|
|
|
8485
|
|
|
|
|
|
|
|
8486
|
1
|
50
|
|
|
|
3
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
8487
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8488
|
|
|
|
|
|
|
q{inreplyto}, |
8489
|
|
|
|
|
|
|
$tracelevel) |
8490
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8491
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
473
|
|
|
1
|
|
|
|
|
2
|
|
8492
|
1
|
|
|
|
|
5
|
$expectation->is(q{})->at($text); |
8493
|
1
|
50
|
|
1
|
|
13
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
1
|
|
|
|
|
3
|
|
8494
|
|
|
|
|
|
|
{ |
8495
|
|
|
|
|
|
|
|
8496
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
8497
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8498
|
|
|
|
|
|
|
q{inreplyto}, |
8499
|
|
|
|
|
|
|
$tracelevel) |
8500
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8501
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
8502
|
0
|
|
|
|
|
0
|
last; |
8503
|
|
|
|
|
|
|
} |
8504
|
1
|
50
|
|
|
|
6
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
8505
|
|
|
|
|
|
|
. $_tok . q{]}, |
8506
|
|
|
|
|
|
|
|
8507
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8508
|
|
|
|
|
|
|
q{inreplyto}, |
8509
|
|
|
|
|
|
|
$tracelevel) |
8510
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8511
|
1
|
|
|
|
|
8
|
$item{q{STRING}} = $_tok; |
8512
|
1
|
|
|
|
|
4
|
push @item, $_tok; |
8513
|
|
|
|
|
|
|
|
8514
|
|
|
|
|
|
|
} |
8515
|
|
|
|
|
|
|
|
8516
|
1
|
50
|
|
|
|
4
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
8517
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8518
|
|
|
|
|
|
|
q{inreplyto}, |
8519
|
|
|
|
|
|
|
$tracelevel) |
8520
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8521
|
|
|
|
|
|
|
|
8522
|
|
|
|
|
|
|
|
8523
|
|
|
|
|
|
|
|
8524
|
1
|
|
|
|
|
2
|
$_matched = 1; |
8525
|
1
|
|
|
|
|
3
|
last; |
8526
|
|
|
|
|
|
|
} |
8527
|
|
|
|
|
|
|
|
8528
|
|
|
|
|
|
|
splice |
8529
|
24
|
50
|
|
|
|
56
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
8530
|
|
|
|
|
|
|
|
8531
|
24
|
50
|
33
|
|
|
76
|
unless ( $_matched || defined($score) ) |
8532
|
|
|
|
|
|
|
{ |
8533
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
8534
|
|
|
|
|
|
|
|
8535
|
|
|
|
|
|
|
|
8536
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
8537
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
8538
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8539
|
|
|
|
|
|
|
q{inreplyto}, |
8540
|
|
|
|
|
|
|
$tracelevel) |
8541
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8542
|
0
|
|
|
|
|
0
|
return undef; |
8543
|
|
|
|
|
|
|
} |
8544
|
24
|
50
|
33
|
|
|
112
|
if (!defined($return) && defined($score)) |
8545
|
|
|
|
|
|
|
{ |
8546
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
8547
|
|
|
|
|
|
|
q{inreplyto}, |
8548
|
|
|
|
|
|
|
$tracelevel) |
8549
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8550
|
0
|
|
|
|
|
0
|
$return = $score_return; |
8551
|
|
|
|
|
|
|
} |
8552
|
24
|
|
|
|
|
43
|
splice @{$thisparser->{errors}}, $err_at; |
|
24
|
|
|
|
|
59
|
|
8553
|
24
|
50
|
|
|
|
89
|
$return = $item[$#item] unless defined $return; |
8554
|
24
|
50
|
|
|
|
82
|
if (defined $::RD_TRACE) |
8555
|
|
|
|
|
|
|
{ |
8556
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
8557
|
|
|
|
|
|
|
$return . q{])}, "", |
8558
|
|
|
|
|
|
|
q{inreplyto}, |
8559
|
|
|
|
|
|
|
$tracelevel); |
8560
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
8561
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
8562
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8563
|
|
|
|
|
|
|
, q{inreplyto}, |
8564
|
|
|
|
|
|
|
$tracelevel) |
8565
|
|
|
|
|
|
|
} |
8566
|
24
|
|
|
|
|
70
|
$_[1] = $text; |
8567
|
24
|
|
|
|
|
142
|
return $return; |
8568
|
|
|
|
|
|
|
} |
8569
|
|
|
|
|
|
|
|
8570
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
8571
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::key |
8572
|
|
|
|
|
|
|
{ |
8573
|
132
|
|
|
132
|
|
227
|
my $thisparser = $_[0]; |
8574
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
368
|
|
8575
|
132
|
|
50
|
|
|
316
|
local $tracelevel = ($tracelevel||0)+1; |
8576
|
132
|
|
|
|
|
192
|
$ERRORS = 0; |
8577
|
132
|
|
|
|
|
278
|
my $thisrule = $thisparser->{"rules"}{"key"}; |
8578
|
|
|
|
|
|
|
|
8579
|
132
|
50
|
|
|
|
255
|
Parse::RecDescent::_trace(q{Trying rule: [key]}, |
8580
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8581
|
|
|
|
|
|
|
q{key}, |
8582
|
|
|
|
|
|
|
$tracelevel) |
8583
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8584
|
|
|
|
|
|
|
|
8585
|
132
|
|
|
|
|
182
|
my $def_at = @{$thisparser->{deferred}}; |
|
132
|
|
|
|
|
262
|
|
8586
|
132
|
|
|
|
|
198
|
my $err_at = @{$thisparser->{errors}}; |
|
132
|
|
|
|
|
235
|
|
8587
|
|
|
|
|
|
|
|
8588
|
132
|
|
|
|
|
339
|
my $score; |
8589
|
|
|
|
|
|
|
my $score_return; |
8590
|
132
|
|
|
|
|
0
|
my $_tok; |
8591
|
132
|
|
|
|
|
205
|
my $return = undef; |
8592
|
132
|
|
|
|
|
173
|
my $_matched=0; |
8593
|
132
|
|
|
|
|
176
|
my $commit=0; |
8594
|
132
|
|
|
|
|
237
|
my @item = (); |
8595
|
132
|
|
|
|
|
295
|
my %item = (); |
8596
|
132
|
|
|
|
|
179
|
my $repeating = $_[2]; |
8597
|
132
|
|
|
|
|
198
|
my $_noactions = $_[3]; |
8598
|
132
|
50
|
|
|
|
305
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
132
|
|
|
|
|
201
|
|
|
132
|
|
|
|
|
247
|
|
8599
|
132
|
|
|
|
|
231
|
my $_itempos = $_[5]; |
8600
|
132
|
50
|
|
|
|
289
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
8601
|
132
|
|
|
|
|
317
|
my $text; |
8602
|
|
|
|
|
|
|
my $lastsep; |
8603
|
132
|
|
|
|
|
0
|
my $current_match; |
8604
|
132
|
|
|
|
|
295
|
my $expectation = new Parse::RecDescent::Expectation(q{STRING}); |
8605
|
132
|
|
|
|
|
869
|
$expectation->at($_[1]); |
8606
|
|
|
|
|
|
|
|
8607
|
132
|
|
|
|
|
530
|
my $thisline; |
8608
|
132
|
|
|
|
|
427
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
8609
|
|
|
|
|
|
|
|
8610
|
|
|
|
|
|
|
|
8611
|
|
|
|
|
|
|
|
8612
|
132
|
|
33
|
|
|
1120
|
while (!$_matched && !$commit) |
8613
|
|
|
|
|
|
|
{ |
8614
|
|
|
|
|
|
|
|
8615
|
132
|
50
|
|
|
|
263
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
8616
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8617
|
|
|
|
|
|
|
q{key}, |
8618
|
|
|
|
|
|
|
$tracelevel) |
8619
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8620
|
132
|
|
|
|
|
246
|
my $thisprod = $thisrule->{"prods"}[0]; |
8621
|
132
|
|
|
|
|
217
|
$text = $_[1]; |
8622
|
132
|
|
|
|
|
191
|
my $_savetext; |
8623
|
132
|
|
|
|
|
249
|
@item = (q{key}); |
8624
|
132
|
|
|
|
|
278
|
%item = (__RULE__ => q{key}); |
8625
|
132
|
|
|
|
|
213
|
my $repcount = 0; |
8626
|
|
|
|
|
|
|
|
8627
|
|
|
|
|
|
|
|
8628
|
132
|
50
|
|
|
|
264
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
8629
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8630
|
|
|
|
|
|
|
q{key}, |
8631
|
|
|
|
|
|
|
$tracelevel) |
8632
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8633
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
483
|
|
|
132
|
|
|
|
|
202
|
|
8634
|
132
|
|
|
|
|
296
|
$expectation->is(q{})->at($text); |
8635
|
132
|
50
|
|
132
|
|
1295
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
132
|
|
|
|
|
285
|
|
8636
|
|
|
|
|
|
|
{ |
8637
|
|
|
|
|
|
|
|
8638
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
8639
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8640
|
|
|
|
|
|
|
q{key}, |
8641
|
|
|
|
|
|
|
$tracelevel) |
8642
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8643
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
8644
|
0
|
|
|
|
|
0
|
last; |
8645
|
|
|
|
|
|
|
} |
8646
|
132
|
50
|
|
|
|
405
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
8647
|
|
|
|
|
|
|
. $_tok . q{]}, |
8648
|
|
|
|
|
|
|
|
8649
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8650
|
|
|
|
|
|
|
q{key}, |
8651
|
|
|
|
|
|
|
$tracelevel) |
8652
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8653
|
132
|
|
|
|
|
272
|
$item{q{STRING}} = $_tok; |
8654
|
132
|
|
|
|
|
233
|
push @item, $_tok; |
8655
|
|
|
|
|
|
|
|
8656
|
|
|
|
|
|
|
} |
8657
|
|
|
|
|
|
|
|
8658
|
132
|
50
|
|
|
|
265
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
8659
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8660
|
|
|
|
|
|
|
q{key}, |
8661
|
|
|
|
|
|
|
$tracelevel) |
8662
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8663
|
|
|
|
|
|
|
|
8664
|
|
|
|
|
|
|
|
8665
|
|
|
|
|
|
|
|
8666
|
132
|
|
|
|
|
214
|
$_matched = 1; |
8667
|
132
|
|
|
|
|
223
|
last; |
8668
|
|
|
|
|
|
|
} |
8669
|
|
|
|
|
|
|
|
8670
|
|
|
|
|
|
|
splice |
8671
|
132
|
50
|
|
|
|
272
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
8672
|
|
|
|
|
|
|
|
8673
|
132
|
50
|
33
|
|
|
346
|
unless ( $_matched || defined($score) ) |
8674
|
|
|
|
|
|
|
{ |
8675
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
8676
|
|
|
|
|
|
|
|
8677
|
|
|
|
|
|
|
|
8678
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
8679
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
8680
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8681
|
|
|
|
|
|
|
q{key}, |
8682
|
|
|
|
|
|
|
$tracelevel) |
8683
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8684
|
0
|
|
|
|
|
0
|
return undef; |
8685
|
|
|
|
|
|
|
} |
8686
|
132
|
50
|
33
|
|
|
457
|
if (!defined($return) && defined($score)) |
8687
|
|
|
|
|
|
|
{ |
8688
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
8689
|
|
|
|
|
|
|
q{key}, |
8690
|
|
|
|
|
|
|
$tracelevel) |
8691
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8692
|
0
|
|
|
|
|
0
|
$return = $score_return; |
8693
|
|
|
|
|
|
|
} |
8694
|
132
|
|
|
|
|
196
|
splice @{$thisparser->{errors}}, $err_at; |
|
132
|
|
|
|
|
252
|
|
8695
|
132
|
50
|
|
|
|
323
|
$return = $item[$#item] unless defined $return; |
8696
|
132
|
50
|
|
|
|
305
|
if (defined $::RD_TRACE) |
8697
|
|
|
|
|
|
|
{ |
8698
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
8699
|
|
|
|
|
|
|
$return . q{])}, "", |
8700
|
|
|
|
|
|
|
q{key}, |
8701
|
|
|
|
|
|
|
$tracelevel); |
8702
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
8703
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
8704
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8705
|
|
|
|
|
|
|
, q{key}, |
8706
|
|
|
|
|
|
|
$tracelevel) |
8707
|
|
|
|
|
|
|
} |
8708
|
132
|
|
|
|
|
259
|
$_[1] = $text; |
8709
|
132
|
|
|
|
|
618
|
return $return; |
8710
|
|
|
|
|
|
|
} |
8711
|
|
|
|
|
|
|
|
8712
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
8713
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::kvpair |
8714
|
|
|
|
|
|
|
{ |
8715
|
255
|
|
|
255
|
|
4636
|
my $thisparser = $_[0]; |
8716
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
531
|
|
8717
|
255
|
|
50
|
|
|
727
|
local $tracelevel = ($tracelevel||0)+1; |
8718
|
255
|
|
|
|
|
404
|
$ERRORS = 0; |
8719
|
255
|
|
|
|
|
538
|
my $thisrule = $thisparser->{"rules"}{"kvpair"}; |
8720
|
|
|
|
|
|
|
|
8721
|
255
|
50
|
|
|
|
505
|
Parse::RecDescent::_trace(q{Trying rule: [kvpair]}, |
8722
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8723
|
|
|
|
|
|
|
q{kvpair}, |
8724
|
|
|
|
|
|
|
$tracelevel) |
8725
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8726
|
|
|
|
|
|
|
|
8727
|
255
|
|
|
|
|
408
|
my $def_at = @{$thisparser->{deferred}}; |
|
255
|
|
|
|
|
467
|
|
8728
|
255
|
|
|
|
|
382
|
my $err_at = @{$thisparser->{errors}}; |
|
255
|
|
|
|
|
398
|
|
8729
|
|
|
|
|
|
|
|
8730
|
255
|
|
|
|
|
656
|
my $score; |
8731
|
|
|
|
|
|
|
my $score_return; |
8732
|
255
|
|
|
|
|
0
|
my $_tok; |
8733
|
255
|
|
|
|
|
421
|
my $return = undef; |
8734
|
255
|
|
|
|
|
399
|
my $_matched=0; |
8735
|
255
|
|
|
|
|
386
|
my $commit=0; |
8736
|
255
|
|
|
|
|
771
|
my @item = (); |
8737
|
255
|
|
|
|
|
417
|
my %item = (); |
8738
|
255
|
|
|
|
|
414
|
my $repeating = $_[2]; |
8739
|
255
|
|
|
|
|
367
|
my $_noactions = $_[3]; |
8740
|
255
|
50
|
|
|
|
540
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
255
|
|
|
|
|
345
|
|
|
255
|
|
|
|
|
525
|
|
8741
|
255
|
|
|
|
|
433
|
my $_itempos = $_[5]; |
8742
|
255
|
50
|
|
|
|
537
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
8743
|
255
|
|
|
|
|
614
|
my $text; |
8744
|
|
|
|
|
|
|
my $lastsep; |
8745
|
255
|
|
|
|
|
0
|
my $current_match; |
8746
|
255
|
|
|
|
|
607
|
my $expectation = new Parse::RecDescent::Expectation(q{')'}); |
8747
|
255
|
|
|
|
|
1833
|
$expectation->at($_[1]); |
8748
|
|
|
|
|
|
|
|
8749
|
255
|
|
|
|
|
1058
|
my $thisline; |
8750
|
255
|
|
|
|
|
966
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
8751
|
|
|
|
|
|
|
|
8752
|
|
|
|
|
|
|
|
8753
|
|
|
|
|
|
|
|
8754
|
255
|
|
33
|
|
|
2074
|
while (!$_matched && !$commit) |
8755
|
|
|
|
|
|
|
{ |
8756
|
|
|
|
|
|
|
|
8757
|
255
|
50
|
|
|
|
513
|
Parse::RecDescent::_trace(q{Trying production: [')' key value]}, |
8758
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8759
|
|
|
|
|
|
|
q{kvpair}, |
8760
|
|
|
|
|
|
|
$tracelevel) |
8761
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8762
|
255
|
|
|
|
|
488
|
my $thisprod = $thisrule->{"prods"}[0]; |
8763
|
255
|
|
|
|
|
440
|
$text = $_[1]; |
8764
|
255
|
|
|
|
|
399
|
my $_savetext; |
8765
|
255
|
|
|
|
|
578
|
@item = (q{kvpair}); |
8766
|
255
|
|
|
|
|
481
|
%item = (__RULE__ => q{kvpair}); |
8767
|
255
|
|
|
|
|
367
|
my $repcount = 0; |
8768
|
|
|
|
|
|
|
|
8769
|
|
|
|
|
|
|
|
8770
|
255
|
50
|
|
|
|
495
|
Parse::RecDescent::_trace(q{Trying terminal: [')']}, |
8771
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8772
|
|
|
|
|
|
|
q{kvpair}, |
8773
|
|
|
|
|
|
|
$tracelevel) |
8774
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8775
|
255
|
|
|
|
|
532
|
undef $lastsep; |
8776
|
255
|
|
|
|
|
575
|
$expectation->is(q{})->at($text); |
8777
|
255
|
|
|
|
|
1825
|
$_savetext = $text; |
8778
|
|
|
|
|
|
|
|
8779
|
255
|
100
|
33
|
|
|
1597
|
if ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and do { $_tok = ")"; 1 } and |
|
255
|
50
|
66
|
|
|
1715
|
|
|
255
|
|
66
|
|
|
559
|
|
|
255
|
|
|
|
|
1286
|
|
8780
|
|
|
|
|
|
|
substr($text,0,length($_tok)) eq $_tok and |
8781
|
123
|
|
|
|
|
283
|
do { substr($text,0,length($_tok)) = ""; 1; } |
|
123
|
|
|
|
|
368
|
|
8782
|
|
|
|
|
|
|
) |
8783
|
|
|
|
|
|
|
{ |
8784
|
123
|
|
|
|
|
223
|
$text = $_savetext; |
8785
|
|
|
|
|
|
|
|
8786
|
123
|
|
|
|
|
363
|
$expectation->failed(); |
8787
|
123
|
50
|
|
|
|
529
|
Parse::RecDescent::_trace(q{<>}, |
8788
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
8789
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8790
|
123
|
|
|
|
|
269
|
last; |
8791
|
|
|
|
|
|
|
} |
8792
|
132
|
50
|
|
|
|
390
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
8793
|
|
|
|
|
|
|
. $_tok . q{])}, |
8794
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
8795
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8796
|
132
|
|
|
|
|
353
|
push @item, $item{__STRING1__}=$_tok; |
8797
|
132
|
|
|
|
|
255
|
$text = $_savetext; |
8798
|
|
|
|
|
|
|
|
8799
|
132
|
50
|
|
|
|
265
|
Parse::RecDescent::_trace(q{Trying subrule: [key]}, |
8800
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8801
|
|
|
|
|
|
|
q{kvpair}, |
8802
|
|
|
|
|
|
|
$tracelevel) |
8803
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8804
|
1
|
|
|
1
|
|
7
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
157
|
|
|
132
|
|
|
|
|
185
|
|
8805
|
132
|
|
|
|
|
403
|
$expectation->is(q{key})->at($text); |
8806
|
132
|
50
|
|
132
|
|
1244
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::key($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
132
|
|
|
|
|
270
|
|
8807
|
|
|
|
|
|
|
{ |
8808
|
|
|
|
|
|
|
|
8809
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
8810
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8811
|
|
|
|
|
|
|
q{kvpair}, |
8812
|
|
|
|
|
|
|
$tracelevel) |
8813
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8814
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
8815
|
0
|
|
|
|
|
0
|
last; |
8816
|
|
|
|
|
|
|
} |
8817
|
132
|
50
|
|
|
|
406
|
Parse::RecDescent::_trace(q{>>Matched subrule: [key]<< (return value: [} |
8818
|
|
|
|
|
|
|
. $_tok . q{]}, |
8819
|
|
|
|
|
|
|
|
8820
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8821
|
|
|
|
|
|
|
q{kvpair}, |
8822
|
|
|
|
|
|
|
$tracelevel) |
8823
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8824
|
132
|
|
|
|
|
270
|
$item{q{key}} = $_tok; |
8825
|
132
|
|
|
|
|
250
|
push @item, $_tok; |
8826
|
|
|
|
|
|
|
|
8827
|
|
|
|
|
|
|
} |
8828
|
|
|
|
|
|
|
|
8829
|
132
|
50
|
|
|
|
267
|
Parse::RecDescent::_trace(q{Trying subrule: [value]}, |
8830
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8831
|
|
|
|
|
|
|
q{kvpair}, |
8832
|
|
|
|
|
|
|
$tracelevel) |
8833
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8834
|
1
|
|
|
1
|
|
7
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
592
|
|
|
132
|
|
|
|
|
175
|
|
8835
|
132
|
|
|
|
|
432
|
$expectation->is(q{value})->at($text); |
8836
|
132
|
50
|
|
132
|
|
1407
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::value($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
132
|
|
|
|
|
287
|
|
8837
|
|
|
|
|
|
|
{ |
8838
|
|
|
|
|
|
|
|
8839
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
8840
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8841
|
|
|
|
|
|
|
q{kvpair}, |
8842
|
|
|
|
|
|
|
$tracelevel) |
8843
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8844
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
8845
|
0
|
|
|
|
|
0
|
last; |
8846
|
|
|
|
|
|
|
} |
8847
|
132
|
50
|
|
|
|
406
|
Parse::RecDescent::_trace(q{>>Matched subrule: [value]<< (return value: [} |
8848
|
|
|
|
|
|
|
. $_tok . q{]}, |
8849
|
|
|
|
|
|
|
|
8850
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8851
|
|
|
|
|
|
|
q{kvpair}, |
8852
|
|
|
|
|
|
|
$tracelevel) |
8853
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8854
|
132
|
|
|
|
|
284
|
$item{q{value}} = $_tok; |
8855
|
132
|
|
|
|
|
247
|
push @item, $_tok; |
8856
|
|
|
|
|
|
|
|
8857
|
|
|
|
|
|
|
} |
8858
|
|
|
|
|
|
|
|
8859
|
132
|
50
|
|
|
|
271
|
Parse::RecDescent::_trace(q{Trying action}, |
8860
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8861
|
|
|
|
|
|
|
q{kvpair}, |
8862
|
|
|
|
|
|
|
$tracelevel) |
8863
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8864
|
|
|
|
|
|
|
|
8865
|
|
|
|
|
|
|
|
8866
|
132
|
50
|
|
|
|
276
|
$_tok = ($_noactions) ? 0 : do { $return = { $item{key} => $item{value} } }; |
|
132
|
|
|
|
|
442
|
|
8867
|
132
|
50
|
|
|
|
298
|
unless (defined $_tok) |
8868
|
|
|
|
|
|
|
{ |
8869
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
8870
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8871
|
0
|
|
|
|
|
0
|
last; |
8872
|
|
|
|
|
|
|
} |
8873
|
132
|
50
|
|
|
|
282
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
8874
|
|
|
|
|
|
|
. $_tok . q{])}, |
8875
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
8876
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8877
|
132
|
|
|
|
|
215
|
push @item, $_tok; |
8878
|
132
|
|
|
|
|
270
|
$item{__ACTION1__}=$_tok; |
8879
|
|
|
|
|
|
|
|
8880
|
|
|
|
|
|
|
|
8881
|
132
|
50
|
|
|
|
237
|
Parse::RecDescent::_trace(q{>>Matched production: [')' key value]<<}, |
8882
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8883
|
|
|
|
|
|
|
q{kvpair}, |
8884
|
|
|
|
|
|
|
$tracelevel) |
8885
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8886
|
|
|
|
|
|
|
|
8887
|
|
|
|
|
|
|
|
8888
|
|
|
|
|
|
|
|
8889
|
132
|
|
|
|
|
211
|
$_matched = 1; |
8890
|
132
|
|
|
|
|
253
|
last; |
8891
|
|
|
|
|
|
|
} |
8892
|
|
|
|
|
|
|
|
8893
|
|
|
|
|
|
|
splice |
8894
|
255
|
100
|
|
|
|
558
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
123
|
|
|
|
|
301
|
|
8895
|
|
|
|
|
|
|
|
8896
|
255
|
100
|
66
|
|
|
700
|
unless ( $_matched || defined($score) ) |
8897
|
|
|
|
|
|
|
{ |
8898
|
123
|
|
|
|
|
173
|
splice @{$thisparser->{deferred}}, $def_at; |
|
123
|
|
|
|
|
211
|
|
8899
|
|
|
|
|
|
|
|
8900
|
|
|
|
|
|
|
|
8901
|
123
|
|
|
|
|
247
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
8902
|
123
|
50
|
|
|
|
323
|
Parse::RecDescent::_trace(q{<>}, |
8903
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8904
|
|
|
|
|
|
|
q{kvpair}, |
8905
|
|
|
|
|
|
|
$tracelevel) |
8906
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8907
|
123
|
|
|
|
|
605
|
return undef; |
8908
|
|
|
|
|
|
|
} |
8909
|
132
|
50
|
33
|
|
|
330
|
if (!defined($return) && defined($score)) |
8910
|
|
|
|
|
|
|
{ |
8911
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
8912
|
|
|
|
|
|
|
q{kvpair}, |
8913
|
|
|
|
|
|
|
$tracelevel) |
8914
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8915
|
0
|
|
|
|
|
0
|
$return = $score_return; |
8916
|
|
|
|
|
|
|
} |
8917
|
132
|
|
|
|
|
211
|
splice @{$thisparser->{errors}}, $err_at; |
|
132
|
|
|
|
|
258
|
|
8918
|
132
|
50
|
|
|
|
319
|
$return = $item[$#item] unless defined $return; |
8919
|
132
|
50
|
|
|
|
279
|
if (defined $::RD_TRACE) |
8920
|
|
|
|
|
|
|
{ |
8921
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
8922
|
|
|
|
|
|
|
$return . q{])}, "", |
8923
|
|
|
|
|
|
|
q{kvpair}, |
8924
|
|
|
|
|
|
|
$tracelevel); |
8925
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
8926
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
8927
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8928
|
|
|
|
|
|
|
, q{kvpair}, |
8929
|
|
|
|
|
|
|
$tracelevel) |
8930
|
|
|
|
|
|
|
} |
8931
|
132
|
|
|
|
|
233
|
$_[1] = $text; |
8932
|
132
|
|
|
|
|
811
|
return $return; |
8933
|
|
|
|
|
|
|
} |
8934
|
|
|
|
|
|
|
|
8935
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
8936
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::mailboxname |
8937
|
|
|
|
|
|
|
{ |
8938
|
94
|
|
|
94
|
|
496
|
my $thisparser = $_[0]; |
8939
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
11
|
|
|
1
|
|
|
|
|
361
|
|
8940
|
94
|
|
50
|
|
|
222
|
local $tracelevel = ($tracelevel||0)+1; |
8941
|
94
|
|
|
|
|
148
|
$ERRORS = 0; |
8942
|
94
|
|
|
|
|
216
|
my $thisrule = $thisparser->{"rules"}{"mailboxname"}; |
8943
|
|
|
|
|
|
|
|
8944
|
94
|
50
|
|
|
|
216
|
Parse::RecDescent::_trace(q{Trying rule: [mailboxname]}, |
8945
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8946
|
|
|
|
|
|
|
q{mailboxname}, |
8947
|
|
|
|
|
|
|
$tracelevel) |
8948
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8949
|
|
|
|
|
|
|
|
8950
|
94
|
|
|
|
|
134
|
my $def_at = @{$thisparser->{deferred}}; |
|
94
|
|
|
|
|
177
|
|
8951
|
94
|
|
|
|
|
143
|
my $err_at = @{$thisparser->{errors}}; |
|
94
|
|
|
|
|
163
|
|
8952
|
|
|
|
|
|
|
|
8953
|
94
|
|
|
|
|
244
|
my $score; |
8954
|
|
|
|
|
|
|
my $score_return; |
8955
|
94
|
|
|
|
|
0
|
my $_tok; |
8956
|
94
|
|
|
|
|
161
|
my $return = undef; |
8957
|
94
|
|
|
|
|
141
|
my $_matched=0; |
8958
|
94
|
|
|
|
|
138
|
my $commit=0; |
8959
|
94
|
|
|
|
|
153
|
my @item = (); |
8960
|
94
|
|
|
|
|
170
|
my %item = (); |
8961
|
94
|
|
|
|
|
131
|
my $repeating = $_[2]; |
8962
|
94
|
|
|
|
|
141
|
my $_noactions = $_[3]; |
8963
|
94
|
50
|
|
|
|
184
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
94
|
|
|
|
|
143
|
|
|
94
|
|
|
|
|
202
|
|
8964
|
94
|
|
|
|
|
152
|
my $_itempos = $_[5]; |
8965
|
94
|
50
|
|
|
|
215
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
8966
|
94
|
|
|
|
|
251
|
my $text; |
8967
|
|
|
|
|
|
|
my $lastsep; |
8968
|
94
|
|
|
|
|
0
|
my $current_match; |
8969
|
94
|
|
|
|
|
276
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or STRING}); |
8970
|
94
|
|
|
|
|
626
|
$expectation->at($_[1]); |
8971
|
|
|
|
|
|
|
|
8972
|
94
|
|
|
|
|
403
|
my $thisline; |
8973
|
94
|
|
|
|
|
346
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
8974
|
|
|
|
|
|
|
|
8975
|
|
|
|
|
|
|
|
8976
|
|
|
|
|
|
|
|
8977
|
94
|
|
33
|
|
|
841
|
while (!$_matched && !$commit) |
8978
|
|
|
|
|
|
|
{ |
8979
|
|
|
|
|
|
|
|
8980
|
94
|
50
|
|
|
|
199
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
8981
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
8982
|
|
|
|
|
|
|
q{mailboxname}, |
8983
|
|
|
|
|
|
|
$tracelevel) |
8984
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8985
|
94
|
|
|
|
|
199
|
my $thisprod = $thisrule->{"prods"}[0]; |
8986
|
94
|
|
|
|
|
167
|
$text = $_[1]; |
8987
|
94
|
|
|
|
|
157
|
my $_savetext; |
8988
|
94
|
|
|
|
|
202
|
@item = (q{mailboxname}); |
8989
|
94
|
|
|
|
|
197
|
%item = (__RULE__ => q{mailboxname}); |
8990
|
94
|
|
|
|
|
145
|
my $repcount = 0; |
8991
|
|
|
|
|
|
|
|
8992
|
|
|
|
|
|
|
|
8993
|
94
|
50
|
|
|
|
181
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
8994
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
8995
|
|
|
|
|
|
|
q{mailboxname}, |
8996
|
|
|
|
|
|
|
$tracelevel) |
8997
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
8998
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
301
|
|
|
94
|
|
|
|
|
151
|
|
8999
|
94
|
|
|
|
|
241
|
$expectation->is(q{})->at($text); |
9000
|
94
|
50
|
|
94
|
|
849
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
94
|
|
|
|
|
187
|
|
9001
|
|
|
|
|
|
|
{ |
9002
|
|
|
|
|
|
|
|
9003
|
94
|
50
|
|
|
|
220
|
Parse::RecDescent::_trace(q{<>}, |
9004
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9005
|
|
|
|
|
|
|
q{mailboxname}, |
9006
|
|
|
|
|
|
|
$tracelevel) |
9007
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9008
|
94
|
|
|
|
|
261
|
$expectation->failed(); |
9009
|
94
|
|
|
|
|
314
|
last; |
9010
|
|
|
|
|
|
|
} |
9011
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
9012
|
|
|
|
|
|
|
. $_tok . q{]}, |
9013
|
|
|
|
|
|
|
|
9014
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9015
|
|
|
|
|
|
|
q{mailboxname}, |
9016
|
|
|
|
|
|
|
$tracelevel) |
9017
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9018
|
0
|
|
|
|
|
0
|
$item{q{NIL}} = $_tok; |
9019
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
9020
|
|
|
|
|
|
|
|
9021
|
|
|
|
|
|
|
} |
9022
|
|
|
|
|
|
|
|
9023
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
9024
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9025
|
|
|
|
|
|
|
q{mailboxname}, |
9026
|
|
|
|
|
|
|
$tracelevel) |
9027
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9028
|
|
|
|
|
|
|
|
9029
|
|
|
|
|
|
|
|
9030
|
|
|
|
|
|
|
|
9031
|
0
|
|
|
|
|
0
|
$_matched = 1; |
9032
|
0
|
|
|
|
|
0
|
last; |
9033
|
|
|
|
|
|
|
} |
9034
|
|
|
|
|
|
|
|
9035
|
|
|
|
|
|
|
splice |
9036
|
94
|
50
|
|
|
|
316
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
94
|
|
|
|
|
193
|
|
9037
|
|
|
|
|
|
|
|
9038
|
94
|
|
33
|
|
|
379
|
while (!$_matched && !$commit) |
9039
|
|
|
|
|
|
|
{ |
9040
|
|
|
|
|
|
|
|
9041
|
94
|
50
|
|
|
|
202
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
9042
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
9043
|
|
|
|
|
|
|
q{mailboxname}, |
9044
|
|
|
|
|
|
|
$tracelevel) |
9045
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9046
|
94
|
|
|
|
|
178
|
my $thisprod = $thisrule->{"prods"}[1]; |
9047
|
94
|
|
|
|
|
211
|
$text = $_[1]; |
9048
|
94
|
|
|
|
|
177
|
my $_savetext; |
9049
|
94
|
|
|
|
|
208
|
@item = (q{mailboxname}); |
9050
|
94
|
|
|
|
|
254
|
%item = (__RULE__ => q{mailboxname}); |
9051
|
94
|
|
|
|
|
139
|
my $repcount = 0; |
9052
|
|
|
|
|
|
|
|
9053
|
|
|
|
|
|
|
|
9054
|
94
|
50
|
|
|
|
201
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
9055
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9056
|
|
|
|
|
|
|
q{mailboxname}, |
9057
|
|
|
|
|
|
|
$tracelevel) |
9058
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9059
|
1
|
|
|
1
|
|
18
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
10
|
|
|
1
|
|
|
|
|
452
|
|
|
94
|
|
|
|
|
137
|
|
9060
|
94
|
|
|
|
|
226
|
$expectation->is(q{})->at($text); |
9061
|
94
|
50
|
|
94
|
|
917
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
94
|
|
|
|
|
224
|
|
9062
|
|
|
|
|
|
|
{ |
9063
|
|
|
|
|
|
|
|
9064
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
9065
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9066
|
|
|
|
|
|
|
q{mailboxname}, |
9067
|
|
|
|
|
|
|
$tracelevel) |
9068
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9069
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
9070
|
0
|
|
|
|
|
0
|
last; |
9071
|
|
|
|
|
|
|
} |
9072
|
94
|
50
|
|
|
|
338
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
9073
|
|
|
|
|
|
|
. $_tok . q{]}, |
9074
|
|
|
|
|
|
|
|
9075
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9076
|
|
|
|
|
|
|
q{mailboxname}, |
9077
|
|
|
|
|
|
|
$tracelevel) |
9078
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9079
|
94
|
|
|
|
|
202
|
$item{q{STRING}} = $_tok; |
9080
|
94
|
|
|
|
|
169
|
push @item, $_tok; |
9081
|
|
|
|
|
|
|
|
9082
|
|
|
|
|
|
|
} |
9083
|
|
|
|
|
|
|
|
9084
|
94
|
50
|
|
|
|
213
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
9085
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9086
|
|
|
|
|
|
|
q{mailboxname}, |
9087
|
|
|
|
|
|
|
$tracelevel) |
9088
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9089
|
|
|
|
|
|
|
|
9090
|
|
|
|
|
|
|
|
9091
|
|
|
|
|
|
|
|
9092
|
94
|
|
|
|
|
173
|
$_matched = 1; |
9093
|
94
|
|
|
|
|
177
|
last; |
9094
|
|
|
|
|
|
|
} |
9095
|
|
|
|
|
|
|
|
9096
|
|
|
|
|
|
|
splice |
9097
|
94
|
50
|
|
|
|
202
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
9098
|
|
|
|
|
|
|
|
9099
|
94
|
50
|
33
|
|
|
226
|
unless ( $_matched || defined($score) ) |
9100
|
|
|
|
|
|
|
{ |
9101
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
9102
|
|
|
|
|
|
|
|
9103
|
|
|
|
|
|
|
|
9104
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
9105
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
9106
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
9107
|
|
|
|
|
|
|
q{mailboxname}, |
9108
|
|
|
|
|
|
|
$tracelevel) |
9109
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9110
|
0
|
|
|
|
|
0
|
return undef; |
9111
|
|
|
|
|
|
|
} |
9112
|
94
|
50
|
33
|
|
|
346
|
if (!defined($return) && defined($score)) |
9113
|
|
|
|
|
|
|
{ |
9114
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
9115
|
|
|
|
|
|
|
q{mailboxname}, |
9116
|
|
|
|
|
|
|
$tracelevel) |
9117
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9118
|
0
|
|
|
|
|
0
|
$return = $score_return; |
9119
|
|
|
|
|
|
|
} |
9120
|
94
|
|
|
|
|
143
|
splice @{$thisparser->{errors}}, $err_at; |
|
94
|
|
|
|
|
181
|
|
9121
|
94
|
50
|
|
|
|
389
|
$return = $item[$#item] unless defined $return; |
9122
|
94
|
50
|
|
|
|
203
|
if (defined $::RD_TRACE) |
9123
|
|
|
|
|
|
|
{ |
9124
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
9125
|
|
|
|
|
|
|
$return . q{])}, "", |
9126
|
|
|
|
|
|
|
q{mailboxname}, |
9127
|
|
|
|
|
|
|
$tracelevel); |
9128
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
9129
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
9130
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9131
|
|
|
|
|
|
|
, q{mailboxname}, |
9132
|
|
|
|
|
|
|
$tracelevel) |
9133
|
|
|
|
|
|
|
} |
9134
|
94
|
|
|
|
|
220
|
$_[1] = $text; |
9135
|
94
|
|
|
|
|
509
|
return $return; |
9136
|
|
|
|
|
|
|
} |
9137
|
|
|
|
|
|
|
|
9138
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
9139
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::messageid |
9140
|
|
|
|
|
|
|
{ |
9141
|
24
|
|
|
24
|
|
50
|
my $thisparser = $_[0]; |
9142
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
341
|
|
9143
|
24
|
|
50
|
|
|
83
|
local $tracelevel = ($tracelevel||0)+1; |
9144
|
24
|
|
|
|
|
43
|
$ERRORS = 0; |
9145
|
24
|
|
|
|
|
60
|
my $thisrule = $thisparser->{"rules"}{"messageid"}; |
9146
|
|
|
|
|
|
|
|
9147
|
24
|
50
|
|
|
|
59
|
Parse::RecDescent::_trace(q{Trying rule: [messageid]}, |
9148
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
9149
|
|
|
|
|
|
|
q{messageid}, |
9150
|
|
|
|
|
|
|
$tracelevel) |
9151
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9152
|
|
|
|
|
|
|
|
9153
|
24
|
|
|
|
|
35
|
my $def_at = @{$thisparser->{deferred}}; |
|
24
|
|
|
|
|
63
|
|
9154
|
24
|
|
|
|
|
39
|
my $err_at = @{$thisparser->{errors}}; |
|
24
|
|
|
|
|
49
|
|
9155
|
|
|
|
|
|
|
|
9156
|
24
|
|
|
|
|
62
|
my $score; |
9157
|
|
|
|
|
|
|
my $score_return; |
9158
|
24
|
|
|
|
|
0
|
my $_tok; |
9159
|
24
|
|
|
|
|
42
|
my $return = undef; |
9160
|
24
|
|
|
|
|
39
|
my $_matched=0; |
9161
|
24
|
|
|
|
|
46
|
my $commit=0; |
9162
|
24
|
|
|
|
|
51
|
my @item = (); |
9163
|
24
|
|
|
|
|
48
|
my %item = (); |
9164
|
24
|
|
|
|
|
43
|
my $repeating = $_[2]; |
9165
|
24
|
|
|
|
|
42
|
my $_noactions = $_[3]; |
9166
|
24
|
50
|
|
|
|
103
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
24
|
|
|
|
|
39
|
|
|
24
|
|
|
|
|
44
|
|
9167
|
24
|
|
|
|
|
45
|
my $_itempos = $_[5]; |
9168
|
24
|
50
|
|
|
|
76
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
9169
|
24
|
|
|
|
|
62
|
my $text; |
9170
|
|
|
|
|
|
|
my $lastsep; |
9171
|
24
|
|
|
|
|
0
|
my $current_match; |
9172
|
24
|
|
|
|
|
68
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or STRING}); |
9173
|
24
|
|
|
|
|
178
|
$expectation->at($_[1]); |
9174
|
|
|
|
|
|
|
|
9175
|
24
|
|
|
|
|
106
|
my $thisline; |
9176
|
24
|
|
|
|
|
101
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
9177
|
|
|
|
|
|
|
|
9178
|
|
|
|
|
|
|
|
9179
|
|
|
|
|
|
|
|
9180
|
24
|
|
33
|
|
|
229
|
while (!$_matched && !$commit) |
9181
|
|
|
|
|
|
|
{ |
9182
|
|
|
|
|
|
|
|
9183
|
24
|
50
|
|
|
|
94
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
9184
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
9185
|
|
|
|
|
|
|
q{messageid}, |
9186
|
|
|
|
|
|
|
$tracelevel) |
9187
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9188
|
24
|
|
|
|
|
65
|
my $thisprod = $thisrule->{"prods"}[0]; |
9189
|
24
|
|
|
|
|
57
|
$text = $_[1]; |
9190
|
24
|
|
|
|
|
45
|
my $_savetext; |
9191
|
24
|
|
|
|
|
56
|
@item = (q{messageid}); |
9192
|
24
|
|
|
|
|
62
|
%item = (__RULE__ => q{messageid}); |
9193
|
24
|
|
|
|
|
41
|
my $repcount = 0; |
9194
|
|
|
|
|
|
|
|
9195
|
|
|
|
|
|
|
|
9196
|
24
|
50
|
|
|
|
57
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
9197
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9198
|
|
|
|
|
|
|
q{messageid}, |
9199
|
|
|
|
|
|
|
$tracelevel) |
9200
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9201
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
9
|
|
|
1
|
|
|
|
|
295
|
|
|
24
|
|
|
|
|
50
|
|
9202
|
24
|
|
|
|
|
72
|
$expectation->is(q{})->at($text); |
9203
|
24
|
50
|
|
24
|
|
260
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
49
|
|
9204
|
|
|
|
|
|
|
{ |
9205
|
|
|
|
|
|
|
|
9206
|
24
|
50
|
|
|
|
71
|
Parse::RecDescent::_trace(q{<>}, |
9207
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9208
|
|
|
|
|
|
|
q{messageid}, |
9209
|
|
|
|
|
|
|
$tracelevel) |
9210
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9211
|
24
|
|
|
|
|
80
|
$expectation->failed(); |
9212
|
24
|
|
|
|
|
91
|
last; |
9213
|
|
|
|
|
|
|
} |
9214
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
9215
|
|
|
|
|
|
|
. $_tok . q{]}, |
9216
|
|
|
|
|
|
|
|
9217
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9218
|
|
|
|
|
|
|
q{messageid}, |
9219
|
|
|
|
|
|
|
$tracelevel) |
9220
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9221
|
0
|
|
|
|
|
0
|
$item{q{NIL}} = $_tok; |
9222
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
9223
|
|
|
|
|
|
|
|
9224
|
|
|
|
|
|
|
} |
9225
|
|
|
|
|
|
|
|
9226
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
9227
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9228
|
|
|
|
|
|
|
q{messageid}, |
9229
|
|
|
|
|
|
|
$tracelevel) |
9230
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9231
|
|
|
|
|
|
|
|
9232
|
|
|
|
|
|
|
|
9233
|
|
|
|
|
|
|
|
9234
|
0
|
|
|
|
|
0
|
$_matched = 1; |
9235
|
0
|
|
|
|
|
0
|
last; |
9236
|
|
|
|
|
|
|
} |
9237
|
|
|
|
|
|
|
|
9238
|
|
|
|
|
|
|
splice |
9239
|
24
|
50
|
|
|
|
97
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
24
|
|
|
|
|
67
|
|
9240
|
|
|
|
|
|
|
|
9241
|
24
|
|
33
|
|
|
108
|
while (!$_matched && !$commit) |
9242
|
|
|
|
|
|
|
{ |
9243
|
|
|
|
|
|
|
|
9244
|
24
|
50
|
|
|
|
61
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
9245
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
9246
|
|
|
|
|
|
|
q{messageid}, |
9247
|
|
|
|
|
|
|
$tracelevel) |
9248
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9249
|
24
|
|
|
|
|
57
|
my $thisprod = $thisrule->{"prods"}[1]; |
9250
|
24
|
|
|
|
|
51
|
$text = $_[1]; |
9251
|
24
|
|
|
|
|
38
|
my $_savetext; |
9252
|
24
|
|
|
|
|
56
|
@item = (q{messageid}); |
9253
|
24
|
|
|
|
|
66
|
%item = (__RULE__ => q{messageid}); |
9254
|
24
|
|
|
|
|
39
|
my $repcount = 0; |
9255
|
|
|
|
|
|
|
|
9256
|
|
|
|
|
|
|
|
9257
|
24
|
50
|
|
|
|
59
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
9258
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9259
|
|
|
|
|
|
|
q{messageid}, |
9260
|
|
|
|
|
|
|
$tracelevel) |
9261
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9262
|
1
|
|
|
1
|
|
9
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
471
|
|
|
24
|
|
|
|
|
38
|
|
9263
|
24
|
|
|
|
|
70
|
$expectation->is(q{})->at($text); |
9264
|
24
|
50
|
|
24
|
|
275
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
51
|
|
9265
|
|
|
|
|
|
|
{ |
9266
|
|
|
|
|
|
|
|
9267
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
9268
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9269
|
|
|
|
|
|
|
q{messageid}, |
9270
|
|
|
|
|
|
|
$tracelevel) |
9271
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9272
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
9273
|
0
|
|
|
|
|
0
|
last; |
9274
|
|
|
|
|
|
|
} |
9275
|
24
|
50
|
|
|
|
127
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
9276
|
|
|
|
|
|
|
. $_tok . q{]}, |
9277
|
|
|
|
|
|
|
|
9278
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9279
|
|
|
|
|
|
|
q{messageid}, |
9280
|
|
|
|
|
|
|
$tracelevel) |
9281
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9282
|
24
|
|
|
|
|
75
|
$item{q{STRING}} = $_tok; |
9283
|
24
|
|
|
|
|
48
|
push @item, $_tok; |
9284
|
|
|
|
|
|
|
|
9285
|
|
|
|
|
|
|
} |
9286
|
|
|
|
|
|
|
|
9287
|
24
|
50
|
|
|
|
64
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
9288
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9289
|
|
|
|
|
|
|
q{messageid}, |
9290
|
|
|
|
|
|
|
$tracelevel) |
9291
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9292
|
|
|
|
|
|
|
|
9293
|
|
|
|
|
|
|
|
9294
|
|
|
|
|
|
|
|
9295
|
24
|
|
|
|
|
49
|
$_matched = 1; |
9296
|
24
|
|
|
|
|
50
|
last; |
9297
|
|
|
|
|
|
|
} |
9298
|
|
|
|
|
|
|
|
9299
|
|
|
|
|
|
|
splice |
9300
|
24
|
50
|
|
|
|
57
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
9301
|
|
|
|
|
|
|
|
9302
|
24
|
50
|
33
|
|
|
69
|
unless ( $_matched || defined($score) ) |
9303
|
|
|
|
|
|
|
{ |
9304
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
9305
|
|
|
|
|
|
|
|
9306
|
|
|
|
|
|
|
|
9307
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
9308
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
9309
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
9310
|
|
|
|
|
|
|
q{messageid}, |
9311
|
|
|
|
|
|
|
$tracelevel) |
9312
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9313
|
0
|
|
|
|
|
0
|
return undef; |
9314
|
|
|
|
|
|
|
} |
9315
|
24
|
50
|
33
|
|
|
224
|
if (!defined($return) && defined($score)) |
9316
|
|
|
|
|
|
|
{ |
9317
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
9318
|
|
|
|
|
|
|
q{messageid}, |
9319
|
|
|
|
|
|
|
$tracelevel) |
9320
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9321
|
0
|
|
|
|
|
0
|
$return = $score_return; |
9322
|
|
|
|
|
|
|
} |
9323
|
24
|
|
|
|
|
51
|
splice @{$thisparser->{errors}}, $err_at; |
|
24
|
|
|
|
|
68
|
|
9324
|
24
|
50
|
|
|
|
74
|
$return = $item[$#item] unless defined $return; |
9325
|
24
|
50
|
|
|
|
62
|
if (defined $::RD_TRACE) |
9326
|
|
|
|
|
|
|
{ |
9327
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
9328
|
|
|
|
|
|
|
$return . q{])}, "", |
9329
|
|
|
|
|
|
|
q{messageid}, |
9330
|
|
|
|
|
|
|
$tracelevel); |
9331
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
9332
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
9333
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9334
|
|
|
|
|
|
|
, q{messageid}, |
9335
|
|
|
|
|
|
|
$tracelevel) |
9336
|
|
|
|
|
|
|
} |
9337
|
24
|
|
|
|
|
50
|
$_[1] = $text; |
9338
|
24
|
|
|
|
|
139
|
return $return; |
9339
|
|
|
|
|
|
|
} |
9340
|
|
|
|
|
|
|
|
9341
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
9342
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::multipart |
9343
|
|
|
|
|
|
|
{ |
9344
|
125
|
|
|
125
|
|
220
|
my $thisparser = $_[0]; |
9345
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
622
|
|
9346
|
125
|
|
50
|
|
|
301
|
local $tracelevel = ($tracelevel||0)+1; |
9347
|
125
|
|
|
|
|
194
|
$ERRORS = 0; |
9348
|
125
|
|
|
|
|
246
|
my $thisrule = $thisparser->{"rules"}{"multipart"}; |
9349
|
|
|
|
|
|
|
|
9350
|
125
|
50
|
|
|
|
256
|
Parse::RecDescent::_trace(q{Trying rule: [multipart]}, |
9351
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
9352
|
|
|
|
|
|
|
q{multipart}, |
9353
|
|
|
|
|
|
|
$tracelevel) |
9354
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9355
|
|
|
|
|
|
|
|
9356
|
125
|
|
|
|
|
228
|
my $def_at = @{$thisparser->{deferred}}; |
|
125
|
|
|
|
|
283
|
|
9357
|
125
|
|
|
|
|
193
|
my $err_at = @{$thisparser->{errors}}; |
|
125
|
|
|
|
|
228
|
|
9358
|
|
|
|
|
|
|
|
9359
|
125
|
|
|
|
|
297
|
my $score; |
9360
|
|
|
|
|
|
|
my $score_return; |
9361
|
125
|
|
|
|
|
0
|
my $_tok; |
9362
|
125
|
|
|
|
|
181
|
my $return = undef; |
9363
|
125
|
|
|
|
|
207
|
my $_matched=0; |
9364
|
125
|
|
|
|
|
194
|
my $commit=0; |
9365
|
125
|
|
|
|
|
216
|
my @item = (); |
9366
|
125
|
|
|
|
|
185
|
my %item = (); |
9367
|
125
|
|
|
|
|
189
|
my $repeating = $_[2]; |
9368
|
125
|
|
|
|
|
182
|
my $_noactions = $_[3]; |
9369
|
125
|
50
|
|
|
|
246
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
125
|
|
|
|
|
210
|
|
|
125
|
|
|
|
|
237
|
|
9370
|
125
|
|
|
|
|
238
|
my $_itempos = $_[5]; |
9371
|
125
|
50
|
|
|
|
281
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
9372
|
125
|
|
|
|
|
301
|
my $text; |
9373
|
|
|
|
|
|
|
my $lastsep; |
9374
|
125
|
|
|
|
|
0
|
my $current_match; |
9375
|
125
|
|
|
|
|
307
|
my $expectation = new Parse::RecDescent::Expectation(q{subpart}); |
9376
|
125
|
|
|
|
|
788
|
$expectation->at($_[1]); |
9377
|
|
|
|
|
|
|
|
9378
|
125
|
|
|
|
|
515
|
my $thisline; |
9379
|
125
|
|
|
|
|
392
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
9380
|
|
|
|
|
|
|
|
9381
|
|
|
|
|
|
|
|
9382
|
|
|
|
|
|
|
|
9383
|
125
|
|
33
|
|
|
945
|
while (!$_matched && !$commit) |
9384
|
|
|
|
|
|
|
{ |
9385
|
|
|
|
|
|
|
|
9386
|
125
|
50
|
|
|
|
289
|
Parse::RecDescent::_trace(q{Trying production: [subpart bodysubtype bodyparms bodydisp bodylang bodyloc bodyextra bodyextensions ]}, |
9387
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
9388
|
|
|
|
|
|
|
q{multipart}, |
9389
|
|
|
|
|
|
|
$tracelevel) |
9390
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9391
|
125
|
|
|
|
|
247
|
my $thisprod = $thisrule->{"prods"}[0]; |
9392
|
125
|
|
|
|
|
243
|
$text = $_[1]; |
9393
|
125
|
|
|
|
|
196
|
my $_savetext; |
9394
|
125
|
|
|
|
|
301
|
@item = (q{multipart}); |
9395
|
125
|
|
|
|
|
259
|
%item = (__RULE__ => q{multipart}); |
9396
|
125
|
|
|
|
|
200
|
my $repcount = 0; |
9397
|
|
|
|
|
|
|
|
9398
|
|
|
|
|
|
|
|
9399
|
125
|
50
|
|
|
|
274
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [subpart]}, |
9400
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9401
|
|
|
|
|
|
|
q{multipart}, |
9402
|
|
|
|
|
|
|
$tracelevel) |
9403
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9404
|
125
|
|
|
|
|
294
|
$expectation->is(q{})->at($text); |
9405
|
|
|
|
|
|
|
|
9406
|
125
|
100
|
|
200
|
|
1606
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::subpart, 1, 100000000, $_noactions,$expectation,sub { \@arg },undef))) |
|
200
|
|
|
|
|
423
|
|
9407
|
|
|
|
|
|
|
{ |
9408
|
94
|
50
|
|
|
|
1220
|
Parse::RecDescent::_trace(q{<>}, |
9409
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9410
|
|
|
|
|
|
|
q{multipart}, |
9411
|
|
|
|
|
|
|
$tracelevel) |
9412
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9413
|
94
|
|
|
|
|
165
|
last; |
9414
|
|
|
|
|
|
|
} |
9415
|
31
|
50
|
|
|
|
543
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [subpart]<< (} |
9416
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
9417
|
|
|
|
|
|
|
|
9418
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9419
|
|
|
|
|
|
|
q{multipart}, |
9420
|
|
|
|
|
|
|
$tracelevel) |
9421
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9422
|
31
|
|
|
|
|
92
|
$item{q{subpart(s)}} = $_tok; |
9423
|
31
|
|
|
|
|
73
|
push @item, $_tok; |
9424
|
|
|
|
|
|
|
|
9425
|
|
|
|
|
|
|
|
9426
|
|
|
|
|
|
|
|
9427
|
|
|
|
|
|
|
|
9428
|
|
|
|
|
|
|
|
9429
|
31
|
50
|
|
|
|
85
|
Parse::RecDescent::_trace(q{Trying directive: []}, |
9430
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9431
|
|
|
|
|
|
|
q{multipart}, |
9432
|
|
|
|
|
|
|
$tracelevel) |
9433
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9434
|
31
|
|
|
|
|
64
|
$_tok = do { $commit = 1 }; |
|
31
|
|
|
|
|
61
|
|
9435
|
31
|
50
|
|
|
|
85
|
if (defined($_tok)) |
9436
|
|
|
|
|
|
|
{ |
9437
|
31
|
50
|
|
|
|
96
|
Parse::RecDescent::_trace(q{>>Matched directive<< (return value: [} |
9438
|
|
|
|
|
|
|
. $_tok . q{])}, |
9439
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
9440
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9441
|
|
|
|
|
|
|
} |
9442
|
|
|
|
|
|
|
else |
9443
|
|
|
|
|
|
|
{ |
9444
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
9445
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
9446
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9447
|
|
|
|
|
|
|
} |
9448
|
|
|
|
|
|
|
|
9449
|
31
|
50
|
|
|
|
75
|
last unless defined $_tok; |
9450
|
31
|
|
|
|
|
75
|
push @item, $item{__DIRECTIVE1__}=$_tok; |
9451
|
|
|
|
|
|
|
|
9452
|
|
|
|
|
|
|
|
9453
|
31
|
50
|
|
|
|
83
|
Parse::RecDescent::_trace(q{Trying subrule: [bodysubtype]}, |
9454
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9455
|
|
|
|
|
|
|
q{multipart}, |
9456
|
|
|
|
|
|
|
$tracelevel) |
9457
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9458
|
1
|
|
|
1
|
|
9
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
1557
|
|
|
31
|
|
|
|
|
51
|
|
9459
|
31
|
|
|
|
|
89
|
$expectation->is(q{bodysubtype})->at($text); |
9460
|
31
|
50
|
|
31
|
|
352
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodysubtype($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
31
|
|
|
|
|
92
|
|
9461
|
|
|
|
|
|
|
{ |
9462
|
|
|
|
|
|
|
|
9463
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
9464
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9465
|
|
|
|
|
|
|
q{multipart}, |
9466
|
|
|
|
|
|
|
$tracelevel) |
9467
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9468
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
9469
|
0
|
|
|
|
|
0
|
last; |
9470
|
|
|
|
|
|
|
} |
9471
|
31
|
50
|
|
|
|
140
|
Parse::RecDescent::_trace(q{>>Matched subrule: [bodysubtype]<< (return value: [} |
9472
|
|
|
|
|
|
|
. $_tok . q{]}, |
9473
|
|
|
|
|
|
|
|
9474
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9475
|
|
|
|
|
|
|
q{multipart}, |
9476
|
|
|
|
|
|
|
$tracelevel) |
9477
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9478
|
31
|
|
|
|
|
87
|
$item{q{bodysubtype}} = $_tok; |
9479
|
31
|
|
|
|
|
68
|
push @item, $_tok; |
9480
|
|
|
|
|
|
|
|
9481
|
|
|
|
|
|
|
} |
9482
|
|
|
|
|
|
|
|
9483
|
31
|
50
|
|
|
|
71
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodyparms]}, |
9484
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9485
|
|
|
|
|
|
|
q{multipart}, |
9486
|
|
|
|
|
|
|
$tracelevel) |
9487
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9488
|
31
|
|
|
|
|
100
|
$expectation->is(q{bodyparms})->at($text); |
9489
|
|
|
|
|
|
|
|
9490
|
31
|
50
|
|
31
|
|
358
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyparms, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
31
|
|
|
|
|
68
|
|
9491
|
|
|
|
|
|
|
{ |
9492
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
9493
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9494
|
|
|
|
|
|
|
q{multipart}, |
9495
|
|
|
|
|
|
|
$tracelevel) |
9496
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9497
|
0
|
|
|
|
|
0
|
last; |
9498
|
|
|
|
|
|
|
} |
9499
|
31
|
50
|
|
|
|
577
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodyparms]<< (} |
9500
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
9501
|
|
|
|
|
|
|
|
9502
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9503
|
|
|
|
|
|
|
q{multipart}, |
9504
|
|
|
|
|
|
|
$tracelevel) |
9505
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9506
|
31
|
|
|
|
|
73
|
$item{q{bodyparms(?)}} = $_tok; |
9507
|
31
|
|
|
|
|
65
|
push @item, $_tok; |
9508
|
|
|
|
|
|
|
|
9509
|
|
|
|
|
|
|
|
9510
|
|
|
|
|
|
|
|
9511
|
31
|
50
|
|
|
|
69
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodydisp]}, |
9512
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9513
|
|
|
|
|
|
|
q{multipart}, |
9514
|
|
|
|
|
|
|
$tracelevel) |
9515
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9516
|
31
|
|
|
|
|
94
|
$expectation->is(q{bodydisp})->at($text); |
9517
|
|
|
|
|
|
|
|
9518
|
31
|
50
|
|
31
|
|
346
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodydisp, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
31
|
|
|
|
|
69
|
|
9519
|
|
|
|
|
|
|
{ |
9520
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
9521
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9522
|
|
|
|
|
|
|
q{multipart}, |
9523
|
|
|
|
|
|
|
$tracelevel) |
9524
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9525
|
0
|
|
|
|
|
0
|
last; |
9526
|
|
|
|
|
|
|
} |
9527
|
31
|
50
|
|
|
|
548
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodydisp]<< (} |
9528
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
9529
|
|
|
|
|
|
|
|
9530
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9531
|
|
|
|
|
|
|
q{multipart}, |
9532
|
|
|
|
|
|
|
$tracelevel) |
9533
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9534
|
31
|
|
|
|
|
67
|
$item{q{bodydisp(?)}} = $_tok; |
9535
|
31
|
|
|
|
|
62
|
push @item, $_tok; |
9536
|
|
|
|
|
|
|
|
9537
|
|
|
|
|
|
|
|
9538
|
|
|
|
|
|
|
|
9539
|
31
|
50
|
|
|
|
77
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodylang]}, |
9540
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9541
|
|
|
|
|
|
|
q{multipart}, |
9542
|
|
|
|
|
|
|
$tracelevel) |
9543
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9544
|
31
|
|
|
|
|
117
|
$expectation->is(q{bodylang})->at($text); |
9545
|
|
|
|
|
|
|
|
9546
|
31
|
50
|
|
31
|
|
338
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodylang, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
31
|
|
|
|
|
63
|
|
9547
|
|
|
|
|
|
|
{ |
9548
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
9549
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9550
|
|
|
|
|
|
|
q{multipart}, |
9551
|
|
|
|
|
|
|
$tracelevel) |
9552
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9553
|
0
|
|
|
|
|
0
|
last; |
9554
|
|
|
|
|
|
|
} |
9555
|
31
|
50
|
|
|
|
525
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodylang]<< (} |
9556
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
9557
|
|
|
|
|
|
|
|
9558
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9559
|
|
|
|
|
|
|
q{multipart}, |
9560
|
|
|
|
|
|
|
$tracelevel) |
9561
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9562
|
31
|
|
|
|
|
80
|
$item{q{bodylang(?)}} = $_tok; |
9563
|
31
|
|
|
|
|
67
|
push @item, $_tok; |
9564
|
|
|
|
|
|
|
|
9565
|
|
|
|
|
|
|
|
9566
|
|
|
|
|
|
|
|
9567
|
31
|
50
|
|
|
|
69
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodyloc]}, |
9568
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9569
|
|
|
|
|
|
|
q{multipart}, |
9570
|
|
|
|
|
|
|
$tracelevel) |
9571
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9572
|
31
|
|
|
|
|
86
|
$expectation->is(q{bodyloc})->at($text); |
9573
|
|
|
|
|
|
|
|
9574
|
31
|
50
|
|
31
|
|
348
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyloc, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
31
|
|
|
|
|
70
|
|
9575
|
|
|
|
|
|
|
{ |
9576
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
9577
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9578
|
|
|
|
|
|
|
q{multipart}, |
9579
|
|
|
|
|
|
|
$tracelevel) |
9580
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9581
|
0
|
|
|
|
|
0
|
last; |
9582
|
|
|
|
|
|
|
} |
9583
|
31
|
50
|
|
|
|
526
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodyloc]<< (} |
9584
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
9585
|
|
|
|
|
|
|
|
9586
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9587
|
|
|
|
|
|
|
q{multipart}, |
9588
|
|
|
|
|
|
|
$tracelevel) |
9589
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9590
|
31
|
|
|
|
|
91
|
$item{q{bodyloc(?)}} = $_tok; |
9591
|
31
|
|
|
|
|
102
|
push @item, $_tok; |
9592
|
|
|
|
|
|
|
|
9593
|
|
|
|
|
|
|
|
9594
|
|
|
|
|
|
|
|
9595
|
31
|
50
|
|
|
|
87
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodyextra]}, |
9596
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9597
|
|
|
|
|
|
|
q{multipart}, |
9598
|
|
|
|
|
|
|
$tracelevel) |
9599
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9600
|
31
|
|
|
|
|
95
|
$expectation->is(q{bodyextra})->at($text); |
9601
|
|
|
|
|
|
|
|
9602
|
31
|
50
|
|
31
|
|
402
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyextra, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
31
|
|
|
|
|
59
|
|
9603
|
|
|
|
|
|
|
{ |
9604
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
9605
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9606
|
|
|
|
|
|
|
q{multipart}, |
9607
|
|
|
|
|
|
|
$tracelevel) |
9608
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9609
|
0
|
|
|
|
|
0
|
last; |
9610
|
|
|
|
|
|
|
} |
9611
|
31
|
50
|
|
|
|
459
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodyextra]<< (} |
9612
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
9613
|
|
|
|
|
|
|
|
9614
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9615
|
|
|
|
|
|
|
q{multipart}, |
9616
|
|
|
|
|
|
|
$tracelevel) |
9617
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9618
|
31
|
|
|
|
|
79
|
$item{q{bodyextra(?)}} = $_tok; |
9619
|
31
|
|
|
|
|
69
|
push @item, $_tok; |
9620
|
|
|
|
|
|
|
|
9621
|
|
|
|
|
|
|
|
9622
|
|
|
|
|
|
|
|
9623
|
31
|
50
|
|
|
|
82
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodyextensions]}, |
9624
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9625
|
|
|
|
|
|
|
q{multipart}, |
9626
|
|
|
|
|
|
|
$tracelevel) |
9627
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9628
|
31
|
|
|
|
|
84
|
$expectation->is(q{bodyextensions})->at($text); |
9629
|
|
|
|
|
|
|
|
9630
|
31
|
50
|
|
32
|
|
447
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyextensions, 0, 100000000, $_noactions,$expectation,sub { \@arg },undef))) |
|
32
|
|
|
|
|
72
|
|
9631
|
|
|
|
|
|
|
{ |
9632
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
9633
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9634
|
|
|
|
|
|
|
q{multipart}, |
9635
|
|
|
|
|
|
|
$tracelevel) |
9636
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9637
|
0
|
|
|
|
|
0
|
last; |
9638
|
|
|
|
|
|
|
} |
9639
|
31
|
50
|
|
|
|
443
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodyextensions]<< (} |
9640
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
9641
|
|
|
|
|
|
|
|
9642
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9643
|
|
|
|
|
|
|
q{multipart}, |
9644
|
|
|
|
|
|
|
$tracelevel) |
9645
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9646
|
31
|
|
|
|
|
74
|
$item{q{bodyextensions(s?)}} = $_tok; |
9647
|
31
|
|
|
|
|
70
|
push @item, $_tok; |
9648
|
|
|
|
|
|
|
|
9649
|
|
|
|
|
|
|
|
9650
|
|
|
|
|
|
|
|
9651
|
|
|
|
|
|
|
|
9652
|
|
|
|
|
|
|
|
9653
|
31
|
50
|
|
|
|
84
|
Parse::RecDescent::_trace(q{Trying directive: []}, |
9654
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9655
|
|
|
|
|
|
|
q{multipart}, |
9656
|
|
|
|
|
|
|
$tracelevel) |
9657
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9658
|
31
|
|
|
31
|
|
48
|
$_tok = do { push @{$thisparser->{deferred}}, sub { $subpartCount = 0 }; }; |
|
31
|
|
|
|
|
48
|
|
|
31
|
|
|
|
|
154
|
|
|
31
|
|
|
|
|
118
|
|
9659
|
31
|
50
|
|
|
|
94
|
if (defined($_tok)) |
9660
|
|
|
|
|
|
|
{ |
9661
|
31
|
50
|
|
|
|
87
|
Parse::RecDescent::_trace(q{>>Matched directive<< (return value: [} |
9662
|
|
|
|
|
|
|
. $_tok . q{])}, |
9663
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
9664
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9665
|
|
|
|
|
|
|
} |
9666
|
|
|
|
|
|
|
else |
9667
|
|
|
|
|
|
|
{ |
9668
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
9669
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
9670
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9671
|
|
|
|
|
|
|
} |
9672
|
|
|
|
|
|
|
|
9673
|
31
|
50
|
|
|
|
70
|
last unless defined $_tok; |
9674
|
31
|
|
|
|
|
127
|
push @item, $item{__DIRECTIVE2__}=$_tok; |
9675
|
|
|
|
|
|
|
|
9676
|
|
|
|
|
|
|
|
9677
|
31
|
50
|
|
|
|
77
|
Parse::RecDescent::_trace(q{Trying action}, |
9678
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9679
|
|
|
|
|
|
|
q{multipart}, |
9680
|
|
|
|
|
|
|
$tracelevel) |
9681
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9682
|
|
|
|
|
|
|
|
9683
|
|
|
|
|
|
|
|
9684
|
31
|
50
|
|
|
|
61
|
$_tok = ($_noactions) ? 0 : do { $return = |
9685
|
|
|
|
|
|
|
{ bodysubtype => $item{bodysubtype} |
9686
|
|
|
|
|
|
|
, bodytype => 'MULTIPART' |
9687
|
31
|
|
|
|
|
119
|
, bodystructure => $item{'subpart(s)'} |
9688
|
|
|
|
|
|
|
}; |
9689
|
31
|
|
|
|
|
113
|
take_optional_items($return, \%item |
9690
|
|
|
|
|
|
|
, qw/bodyparms bodydisp bodylang bodyloc bodyextra/); |
9691
|
31
|
|
|
|
|
81
|
1; |
9692
|
|
|
|
|
|
|
}; |
9693
|
31
|
50
|
|
|
|
82
|
unless (defined $_tok) |
9694
|
|
|
|
|
|
|
{ |
9695
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
9696
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9697
|
0
|
|
|
|
|
0
|
last; |
9698
|
|
|
|
|
|
|
} |
9699
|
31
|
50
|
|
|
|
87
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
9700
|
|
|
|
|
|
|
. $_tok . q{])}, |
9701
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
9702
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9703
|
31
|
|
|
|
|
60
|
push @item, $_tok; |
9704
|
31
|
|
|
|
|
54
|
$item{__ACTION1__}=$_tok; |
9705
|
|
|
|
|
|
|
|
9706
|
|
|
|
|
|
|
|
9707
|
31
|
50
|
|
|
|
61
|
Parse::RecDescent::_trace(q{>>Matched production: [subpart bodysubtype bodyparms bodydisp bodylang bodyloc bodyextra bodyextensions ]<<}, |
9708
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9709
|
|
|
|
|
|
|
q{multipart}, |
9710
|
|
|
|
|
|
|
$tracelevel) |
9711
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9712
|
|
|
|
|
|
|
|
9713
|
|
|
|
|
|
|
|
9714
|
|
|
|
|
|
|
|
9715
|
31
|
|
|
|
|
62
|
$_matched = 1; |
9716
|
31
|
|
|
|
|
52
|
last; |
9717
|
|
|
|
|
|
|
} |
9718
|
|
|
|
|
|
|
|
9719
|
|
|
|
|
|
|
splice |
9720
|
125
|
100
|
|
|
|
439
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
94
|
|
|
|
|
200
|
|
9721
|
|
|
|
|
|
|
|
9722
|
125
|
100
|
66
|
|
|
414
|
unless ( $_matched || defined($score) ) |
9723
|
|
|
|
|
|
|
{ |
9724
|
94
|
|
|
|
|
137
|
splice @{$thisparser->{deferred}}, $def_at; |
|
94
|
|
|
|
|
162
|
|
9725
|
|
|
|
|
|
|
|
9726
|
|
|
|
|
|
|
|
9727
|
94
|
|
|
|
|
167
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
9728
|
94
|
50
|
|
|
|
208
|
Parse::RecDescent::_trace(q{<>}, |
9729
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
9730
|
|
|
|
|
|
|
q{multipart}, |
9731
|
|
|
|
|
|
|
$tracelevel) |
9732
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9733
|
94
|
|
|
|
|
479
|
return undef; |
9734
|
|
|
|
|
|
|
} |
9735
|
31
|
50
|
33
|
|
|
109
|
if (!defined($return) && defined($score)) |
9736
|
|
|
|
|
|
|
{ |
9737
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
9738
|
|
|
|
|
|
|
q{multipart}, |
9739
|
|
|
|
|
|
|
$tracelevel) |
9740
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9741
|
0
|
|
|
|
|
0
|
$return = $score_return; |
9742
|
|
|
|
|
|
|
} |
9743
|
31
|
|
|
|
|
51
|
splice @{$thisparser->{errors}}, $err_at; |
|
31
|
|
|
|
|
81
|
|
9744
|
31
|
50
|
|
|
|
83
|
$return = $item[$#item] unless defined $return; |
9745
|
31
|
50
|
|
|
|
77
|
if (defined $::RD_TRACE) |
9746
|
|
|
|
|
|
|
{ |
9747
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
9748
|
|
|
|
|
|
|
$return . q{])}, "", |
9749
|
|
|
|
|
|
|
q{multipart}, |
9750
|
|
|
|
|
|
|
$tracelevel); |
9751
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
9752
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
9753
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9754
|
|
|
|
|
|
|
, q{multipart}, |
9755
|
|
|
|
|
|
|
$tracelevel) |
9756
|
|
|
|
|
|
|
} |
9757
|
31
|
|
|
|
|
74
|
$_[1] = $text; |
9758
|
31
|
|
|
|
|
321
|
return $return; |
9759
|
|
|
|
|
|
|
} |
9760
|
|
|
|
|
|
|
|
9761
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
9762
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::nestedmessage |
9763
|
|
|
|
|
|
|
{ |
9764
|
53
|
|
|
53
|
|
115
|
my $thisparser = $_[0]; |
9765
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
351
|
|
9766
|
53
|
|
50
|
|
|
144
|
local $tracelevel = ($tracelevel||0)+1; |
9767
|
53
|
|
|
|
|
87
|
$ERRORS = 0; |
9768
|
53
|
|
|
|
|
117
|
my $thisrule = $thisparser->{"rules"}{"nestedmessage"}; |
9769
|
|
|
|
|
|
|
|
9770
|
53
|
50
|
|
|
|
107
|
Parse::RecDescent::_trace(q{Trying rule: [nestedmessage]}, |
9771
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
9772
|
|
|
|
|
|
|
q{nestedmessage}, |
9773
|
|
|
|
|
|
|
$tracelevel) |
9774
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9775
|
|
|
|
|
|
|
|
9776
|
53
|
|
|
|
|
73
|
my $def_at = @{$thisparser->{deferred}}; |
|
53
|
|
|
|
|
100
|
|
9777
|
53
|
|
|
|
|
98
|
my $err_at = @{$thisparser->{errors}}; |
|
53
|
|
|
|
|
95
|
|
9778
|
|
|
|
|
|
|
|
9779
|
53
|
|
|
|
|
148
|
my $score; |
9780
|
|
|
|
|
|
|
my $score_return; |
9781
|
53
|
|
|
|
|
0
|
my $_tok; |
9782
|
53
|
|
|
|
|
85
|
my $return = undef; |
9783
|
53
|
|
|
|
|
80
|
my $_matched=0; |
9784
|
53
|
|
|
|
|
77
|
my $commit=0; |
9785
|
53
|
|
|
|
|
89
|
my @item = (); |
9786
|
53
|
|
|
|
|
91
|
my %item = (); |
9787
|
53
|
|
|
|
|
74
|
my $repeating = $_[2]; |
9788
|
53
|
|
|
|
|
92
|
my $_noactions = $_[3]; |
9789
|
53
|
50
|
|
|
|
110
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
53
|
|
|
|
|
88
|
|
|
53
|
|
|
|
|
141
|
|
9790
|
53
|
|
|
|
|
96
|
my $_itempos = $_[5]; |
9791
|
53
|
50
|
|
|
|
121
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
9792
|
53
|
|
|
|
|
146
|
my $text; |
9793
|
|
|
|
|
|
|
my $lastsep; |
9794
|
53
|
|
|
|
|
0
|
my $current_match; |
9795
|
53
|
|
|
|
|
136
|
my $expectation = new Parse::RecDescent::Expectation(q{rfc822message}); |
9796
|
53
|
|
|
|
|
453
|
$expectation->at($_[1]); |
9797
|
|
|
|
|
|
|
|
9798
|
53
|
|
|
|
|
215
|
my $thisline; |
9799
|
53
|
|
|
|
|
176
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
9800
|
|
|
|
|
|
|
|
9801
|
|
|
|
|
|
|
|
9802
|
|
|
|
|
|
|
|
9803
|
53
|
|
33
|
|
|
443
|
while (!$_matched && !$commit) |
9804
|
|
|
|
|
|
|
{ |
9805
|
|
|
|
|
|
|
|
9806
|
53
|
50
|
|
|
|
118
|
Parse::RecDescent::_trace(q{Trying production: [rfc822message bodyparms bodyid bodydesc bodyenc bodysize envelopestruct bodystructure textlines bodyMD5 bodydisp bodylang bodyextra]}, |
9807
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
9808
|
|
|
|
|
|
|
q{nestedmessage}, |
9809
|
|
|
|
|
|
|
$tracelevel) |
9810
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9811
|
53
|
|
|
|
|
134
|
my $thisprod = $thisrule->{"prods"}[0]; |
9812
|
53
|
|
|
|
|
122
|
$text = $_[1]; |
9813
|
53
|
|
|
|
|
78
|
my $_savetext; |
9814
|
53
|
|
|
|
|
113
|
@item = (q{nestedmessage}); |
9815
|
53
|
|
|
|
|
132
|
%item = (__RULE__ => q{nestedmessage}); |
9816
|
53
|
|
|
|
|
93
|
my $repcount = 0; |
9817
|
|
|
|
|
|
|
|
9818
|
|
|
|
|
|
|
|
9819
|
53
|
50
|
|
|
|
115
|
Parse::RecDescent::_trace(q{Trying subrule: [rfc822message]}, |
9820
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9821
|
|
|
|
|
|
|
q{nestedmessage}, |
9822
|
|
|
|
|
|
|
$tracelevel) |
9823
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9824
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
259
|
|
|
53
|
|
|
|
|
75
|
|
9825
|
53
|
|
|
|
|
128
|
$expectation->is(q{})->at($text); |
9826
|
53
|
100
|
|
53
|
|
540
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::rfc822message($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
53
|
|
|
|
|
106
|
|
9827
|
|
|
|
|
|
|
{ |
9828
|
|
|
|
|
|
|
|
9829
|
32
|
50
|
|
|
|
87
|
Parse::RecDescent::_trace(q{<>}, |
9830
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9831
|
|
|
|
|
|
|
q{nestedmessage}, |
9832
|
|
|
|
|
|
|
$tracelevel) |
9833
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9834
|
32
|
|
|
|
|
104
|
$expectation->failed(); |
9835
|
32
|
|
|
|
|
113
|
last; |
9836
|
|
|
|
|
|
|
} |
9837
|
21
|
50
|
|
|
|
77
|
Parse::RecDescent::_trace(q{>>Matched subrule: [rfc822message]<< (return value: [} |
9838
|
|
|
|
|
|
|
. $_tok . q{]}, |
9839
|
|
|
|
|
|
|
|
9840
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9841
|
|
|
|
|
|
|
q{nestedmessage}, |
9842
|
|
|
|
|
|
|
$tracelevel) |
9843
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9844
|
21
|
|
|
|
|
50
|
$item{q{rfc822message}} = $_tok; |
9845
|
21
|
|
|
|
|
40
|
push @item, $_tok; |
9846
|
|
|
|
|
|
|
|
9847
|
|
|
|
|
|
|
} |
9848
|
|
|
|
|
|
|
|
9849
|
|
|
|
|
|
|
|
9850
|
|
|
|
|
|
|
|
9851
|
21
|
50
|
|
|
|
62
|
Parse::RecDescent::_trace(q{Trying directive: []}, |
9852
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9853
|
|
|
|
|
|
|
q{nestedmessage}, |
9854
|
|
|
|
|
|
|
$tracelevel) |
9855
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9856
|
21
|
|
|
|
|
35
|
$_tok = do { $commit = 1 }; |
|
21
|
|
|
|
|
49
|
|
9857
|
21
|
50
|
|
|
|
65
|
if (defined($_tok)) |
9858
|
|
|
|
|
|
|
{ |
9859
|
21
|
50
|
|
|
|
59
|
Parse::RecDescent::_trace(q{>>Matched directive<< (return value: [} |
9860
|
|
|
|
|
|
|
. $_tok . q{])}, |
9861
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
9862
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9863
|
|
|
|
|
|
|
} |
9864
|
|
|
|
|
|
|
else |
9865
|
|
|
|
|
|
|
{ |
9866
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
9867
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
9868
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9869
|
|
|
|
|
|
|
} |
9870
|
|
|
|
|
|
|
|
9871
|
21
|
50
|
|
|
|
45
|
last unless defined $_tok; |
9872
|
21
|
|
|
|
|
56
|
push @item, $item{__DIRECTIVE1__}=$_tok; |
9873
|
|
|
|
|
|
|
|
9874
|
|
|
|
|
|
|
|
9875
|
21
|
50
|
|
|
|
47
|
Parse::RecDescent::_trace(q{Trying subrule: [bodyparms]}, |
9876
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9877
|
|
|
|
|
|
|
q{nestedmessage}, |
9878
|
|
|
|
|
|
|
$tracelevel) |
9879
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9880
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
173
|
|
|
21
|
|
|
|
|
36
|
|
9881
|
21
|
|
|
|
|
86
|
$expectation->is(q{bodyparms})->at($text); |
9882
|
21
|
50
|
|
21
|
|
268
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyparms($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
21
|
|
|
|
|
48
|
|
9883
|
|
|
|
|
|
|
{ |
9884
|
|
|
|
|
|
|
|
9885
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
9886
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9887
|
|
|
|
|
|
|
q{nestedmessage}, |
9888
|
|
|
|
|
|
|
$tracelevel) |
9889
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9890
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
9891
|
0
|
|
|
|
|
0
|
last; |
9892
|
|
|
|
|
|
|
} |
9893
|
21
|
50
|
|
|
|
88
|
Parse::RecDescent::_trace(q{>>Matched subrule: [bodyparms]<< (return value: [} |
9894
|
|
|
|
|
|
|
. $_tok . q{]}, |
9895
|
|
|
|
|
|
|
|
9896
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9897
|
|
|
|
|
|
|
q{nestedmessage}, |
9898
|
|
|
|
|
|
|
$tracelevel) |
9899
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9900
|
21
|
|
|
|
|
53
|
$item{q{bodyparms}} = $_tok; |
9901
|
21
|
|
|
|
|
43
|
push @item, $_tok; |
9902
|
|
|
|
|
|
|
|
9903
|
|
|
|
|
|
|
} |
9904
|
|
|
|
|
|
|
|
9905
|
21
|
50
|
|
|
|
48
|
Parse::RecDescent::_trace(q{Trying subrule: [bodyid]}, |
9906
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9907
|
|
|
|
|
|
|
q{nestedmessage}, |
9908
|
|
|
|
|
|
|
$tracelevel) |
9909
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9910
|
1
|
|
|
1
|
|
7
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
208
|
|
|
21
|
|
|
|
|
31
|
|
9911
|
21
|
|
|
|
|
74
|
$expectation->is(q{bodyid})->at($text); |
9912
|
21
|
50
|
|
21
|
|
232
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyid($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
21
|
|
|
|
|
63
|
|
9913
|
|
|
|
|
|
|
{ |
9914
|
|
|
|
|
|
|
|
9915
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
9916
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9917
|
|
|
|
|
|
|
q{nestedmessage}, |
9918
|
|
|
|
|
|
|
$tracelevel) |
9919
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9920
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
9921
|
0
|
|
|
|
|
0
|
last; |
9922
|
|
|
|
|
|
|
} |
9923
|
21
|
50
|
|
|
|
81
|
Parse::RecDescent::_trace(q{>>Matched subrule: [bodyid]<< (return value: [} |
9924
|
|
|
|
|
|
|
. $_tok . q{]}, |
9925
|
|
|
|
|
|
|
|
9926
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9927
|
|
|
|
|
|
|
q{nestedmessage}, |
9928
|
|
|
|
|
|
|
$tracelevel) |
9929
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9930
|
21
|
|
|
|
|
49
|
$item{q{bodyid}} = $_tok; |
9931
|
21
|
|
|
|
|
45
|
push @item, $_tok; |
9932
|
|
|
|
|
|
|
|
9933
|
|
|
|
|
|
|
} |
9934
|
|
|
|
|
|
|
|
9935
|
21
|
50
|
|
|
|
55
|
Parse::RecDescent::_trace(q{Trying subrule: [bodydesc]}, |
9936
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9937
|
|
|
|
|
|
|
q{nestedmessage}, |
9938
|
|
|
|
|
|
|
$tracelevel) |
9939
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9940
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
163
|
|
|
21
|
|
|
|
|
39
|
|
9941
|
21
|
|
|
|
|
66
|
$expectation->is(q{bodydesc})->at($text); |
9942
|
21
|
50
|
|
21
|
|
233
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodydesc($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
21
|
|
|
|
|
47
|
|
9943
|
|
|
|
|
|
|
{ |
9944
|
|
|
|
|
|
|
|
9945
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
9946
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9947
|
|
|
|
|
|
|
q{nestedmessage}, |
9948
|
|
|
|
|
|
|
$tracelevel) |
9949
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9950
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
9951
|
0
|
|
|
|
|
0
|
last; |
9952
|
|
|
|
|
|
|
} |
9953
|
21
|
50
|
|
|
|
78
|
Parse::RecDescent::_trace(q{>>Matched subrule: [bodydesc]<< (return value: [} |
9954
|
|
|
|
|
|
|
. $_tok . q{]}, |
9955
|
|
|
|
|
|
|
|
9956
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9957
|
|
|
|
|
|
|
q{nestedmessage}, |
9958
|
|
|
|
|
|
|
$tracelevel) |
9959
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9960
|
21
|
|
|
|
|
51
|
$item{q{bodydesc}} = $_tok; |
9961
|
21
|
|
|
|
|
42
|
push @item, $_tok; |
9962
|
|
|
|
|
|
|
|
9963
|
|
|
|
|
|
|
} |
9964
|
|
|
|
|
|
|
|
9965
|
21
|
50
|
|
|
|
55
|
Parse::RecDescent::_trace(q{Trying subrule: [bodyenc]}, |
9966
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9967
|
|
|
|
|
|
|
q{nestedmessage}, |
9968
|
|
|
|
|
|
|
$tracelevel) |
9969
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9970
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
184
|
|
|
21
|
|
|
|
|
32
|
|
9971
|
21
|
|
|
|
|
73
|
$expectation->is(q{bodyenc})->at($text); |
9972
|
21
|
50
|
|
21
|
|
234
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyenc($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
21
|
|
|
|
|
47
|
|
9973
|
|
|
|
|
|
|
{ |
9974
|
|
|
|
|
|
|
|
9975
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
9976
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9977
|
|
|
|
|
|
|
q{nestedmessage}, |
9978
|
|
|
|
|
|
|
$tracelevel) |
9979
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9980
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
9981
|
0
|
|
|
|
|
0
|
last; |
9982
|
|
|
|
|
|
|
} |
9983
|
21
|
50
|
|
|
|
85
|
Parse::RecDescent::_trace(q{>>Matched subrule: [bodyenc]<< (return value: [} |
9984
|
|
|
|
|
|
|
. $_tok . q{]}, |
9985
|
|
|
|
|
|
|
|
9986
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9987
|
|
|
|
|
|
|
q{nestedmessage}, |
9988
|
|
|
|
|
|
|
$tracelevel) |
9989
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
9990
|
21
|
|
|
|
|
57
|
$item{q{bodyenc}} = $_tok; |
9991
|
21
|
|
|
|
|
55
|
push @item, $_tok; |
9992
|
|
|
|
|
|
|
|
9993
|
|
|
|
|
|
|
} |
9994
|
|
|
|
|
|
|
|
9995
|
21
|
50
|
|
|
|
59
|
Parse::RecDescent::_trace(q{Trying subrule: [bodysize]}, |
9996
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
9997
|
|
|
|
|
|
|
q{nestedmessage}, |
9998
|
|
|
|
|
|
|
$tracelevel) |
9999
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10000
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
1651
|
|
|
21
|
|
|
|
|
31
|
|
10001
|
21
|
|
|
|
|
78
|
$expectation->is(q{bodysize})->at($text); |
10002
|
21
|
50
|
|
21
|
|
238
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodysize($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
21
|
|
|
|
|
65
|
|
10003
|
|
|
|
|
|
|
{ |
10004
|
|
|
|
|
|
|
|
10005
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
10006
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10007
|
|
|
|
|
|
|
q{nestedmessage}, |
10008
|
|
|
|
|
|
|
$tracelevel) |
10009
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10010
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
10011
|
0
|
|
|
|
|
0
|
last; |
10012
|
|
|
|
|
|
|
} |
10013
|
21
|
50
|
|
|
|
95
|
Parse::RecDescent::_trace(q{>>Matched subrule: [bodysize]<< (return value: [} |
10014
|
|
|
|
|
|
|
. $_tok . q{]}, |
10015
|
|
|
|
|
|
|
|
10016
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10017
|
|
|
|
|
|
|
q{nestedmessage}, |
10018
|
|
|
|
|
|
|
$tracelevel) |
10019
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10020
|
21
|
|
|
|
|
59
|
$item{q{bodysize}} = $_tok; |
10021
|
21
|
|
|
|
|
46
|
push @item, $_tok; |
10022
|
|
|
|
|
|
|
|
10023
|
|
|
|
|
|
|
} |
10024
|
|
|
|
|
|
|
|
10025
|
21
|
50
|
|
|
|
60
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [envelopestruct]}, |
10026
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10027
|
|
|
|
|
|
|
q{nestedmessage}, |
10028
|
|
|
|
|
|
|
$tracelevel) |
10029
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10030
|
21
|
|
|
|
|
77
|
$expectation->is(q{envelopestruct})->at($text); |
10031
|
|
|
|
|
|
|
|
10032
|
21
|
50
|
|
21
|
|
245
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::envelopestruct, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
21
|
|
|
|
|
57
|
|
10033
|
|
|
|
|
|
|
{ |
10034
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
10035
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10036
|
|
|
|
|
|
|
q{nestedmessage}, |
10037
|
|
|
|
|
|
|
$tracelevel) |
10038
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10039
|
0
|
|
|
|
|
0
|
last; |
10040
|
|
|
|
|
|
|
} |
10041
|
21
|
50
|
|
|
|
422
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [envelopestruct]<< (} |
10042
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
10043
|
|
|
|
|
|
|
|
10044
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10045
|
|
|
|
|
|
|
q{nestedmessage}, |
10046
|
|
|
|
|
|
|
$tracelevel) |
10047
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10048
|
21
|
|
|
|
|
59
|
$item{q{envelopestruct(?)}} = $_tok; |
10049
|
21
|
|
|
|
|
53
|
push @item, $_tok; |
10050
|
|
|
|
|
|
|
|
10051
|
|
|
|
|
|
|
|
10052
|
|
|
|
|
|
|
|
10053
|
21
|
50
|
|
|
|
62
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodystructure]}, |
10054
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10055
|
|
|
|
|
|
|
q{nestedmessage}, |
10056
|
|
|
|
|
|
|
$tracelevel) |
10057
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10058
|
21
|
|
|
|
|
70
|
$expectation->is(q{bodystructure})->at($text); |
10059
|
|
|
|
|
|
|
|
10060
|
21
|
50
|
|
21
|
|
268
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodystructure, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
21
|
|
|
|
|
45
|
|
10061
|
|
|
|
|
|
|
{ |
10062
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
10063
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10064
|
|
|
|
|
|
|
q{nestedmessage}, |
10065
|
|
|
|
|
|
|
$tracelevel) |
10066
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10067
|
0
|
|
|
|
|
0
|
last; |
10068
|
|
|
|
|
|
|
} |
10069
|
21
|
50
|
|
|
|
445
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodystructure]<< (} |
10070
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
10071
|
|
|
|
|
|
|
|
10072
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10073
|
|
|
|
|
|
|
q{nestedmessage}, |
10074
|
|
|
|
|
|
|
$tracelevel) |
10075
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10076
|
21
|
|
|
|
|
59
|
$item{q{bodystructure(?)}} = $_tok; |
10077
|
21
|
|
|
|
|
52
|
push @item, $_tok; |
10078
|
|
|
|
|
|
|
|
10079
|
|
|
|
|
|
|
|
10080
|
|
|
|
|
|
|
|
10081
|
21
|
50
|
|
|
|
53
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [textlines]}, |
10082
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10083
|
|
|
|
|
|
|
q{nestedmessage}, |
10084
|
|
|
|
|
|
|
$tracelevel) |
10085
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10086
|
21
|
|
|
|
|
78
|
$expectation->is(q{textlines})->at($text); |
10087
|
|
|
|
|
|
|
|
10088
|
21
|
50
|
|
21
|
|
264
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::textlines, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
21
|
|
|
|
|
67
|
|
10089
|
|
|
|
|
|
|
{ |
10090
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
10091
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10092
|
|
|
|
|
|
|
q{nestedmessage}, |
10093
|
|
|
|
|
|
|
$tracelevel) |
10094
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10095
|
0
|
|
|
|
|
0
|
last; |
10096
|
|
|
|
|
|
|
} |
10097
|
21
|
50
|
|
|
|
423
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [textlines]<< (} |
10098
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
10099
|
|
|
|
|
|
|
|
10100
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10101
|
|
|
|
|
|
|
q{nestedmessage}, |
10102
|
|
|
|
|
|
|
$tracelevel) |
10103
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10104
|
21
|
|
|
|
|
51
|
$item{q{textlines(?)}} = $_tok; |
10105
|
21
|
|
|
|
|
52
|
push @item, $_tok; |
10106
|
|
|
|
|
|
|
|
10107
|
|
|
|
|
|
|
|
10108
|
|
|
|
|
|
|
|
10109
|
21
|
50
|
|
|
|
59
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodyMD5]}, |
10110
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10111
|
|
|
|
|
|
|
q{nestedmessage}, |
10112
|
|
|
|
|
|
|
$tracelevel) |
10113
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10114
|
21
|
|
|
|
|
91
|
$expectation->is(q{bodyMD5})->at($text); |
10115
|
|
|
|
|
|
|
|
10116
|
21
|
50
|
|
21
|
|
263
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyMD5, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
21
|
|
|
|
|
48
|
|
10117
|
|
|
|
|
|
|
{ |
10118
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
10119
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10120
|
|
|
|
|
|
|
q{nestedmessage}, |
10121
|
|
|
|
|
|
|
$tracelevel) |
10122
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10123
|
0
|
|
|
|
|
0
|
last; |
10124
|
|
|
|
|
|
|
} |
10125
|
21
|
50
|
|
|
|
369
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodyMD5]<< (} |
10126
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
10127
|
|
|
|
|
|
|
|
10128
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10129
|
|
|
|
|
|
|
q{nestedmessage}, |
10130
|
|
|
|
|
|
|
$tracelevel) |
10131
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10132
|
21
|
|
|
|
|
53
|
$item{q{bodyMD5(?)}} = $_tok; |
10133
|
21
|
|
|
|
|
47
|
push @item, $_tok; |
10134
|
|
|
|
|
|
|
|
10135
|
|
|
|
|
|
|
|
10136
|
|
|
|
|
|
|
|
10137
|
21
|
50
|
|
|
|
53
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodydisp]}, |
10138
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10139
|
|
|
|
|
|
|
q{nestedmessage}, |
10140
|
|
|
|
|
|
|
$tracelevel) |
10141
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10142
|
21
|
|
|
|
|
69
|
$expectation->is(q{bodydisp})->at($text); |
10143
|
|
|
|
|
|
|
|
10144
|
21
|
50
|
|
21
|
|
256
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodydisp, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
21
|
|
|
|
|
51
|
|
10145
|
|
|
|
|
|
|
{ |
10146
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
10147
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10148
|
|
|
|
|
|
|
q{nestedmessage}, |
10149
|
|
|
|
|
|
|
$tracelevel) |
10150
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10151
|
0
|
|
|
|
|
0
|
last; |
10152
|
|
|
|
|
|
|
} |
10153
|
21
|
50
|
|
|
|
365
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodydisp]<< (} |
10154
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
10155
|
|
|
|
|
|
|
|
10156
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10157
|
|
|
|
|
|
|
q{nestedmessage}, |
10158
|
|
|
|
|
|
|
$tracelevel) |
10159
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10160
|
21
|
|
|
|
|
53
|
$item{q{bodydisp(?)}} = $_tok; |
10161
|
21
|
|
|
|
|
85
|
push @item, $_tok; |
10162
|
|
|
|
|
|
|
|
10163
|
|
|
|
|
|
|
|
10164
|
|
|
|
|
|
|
|
10165
|
21
|
50
|
|
|
|
62
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodylang]}, |
10166
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10167
|
|
|
|
|
|
|
q{nestedmessage}, |
10168
|
|
|
|
|
|
|
$tracelevel) |
10169
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10170
|
21
|
|
|
|
|
68
|
$expectation->is(q{bodylang})->at($text); |
10171
|
|
|
|
|
|
|
|
10172
|
21
|
50
|
|
21
|
|
255
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodylang, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
21
|
|
|
|
|
50
|
|
10173
|
|
|
|
|
|
|
{ |
10174
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
10175
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10176
|
|
|
|
|
|
|
q{nestedmessage}, |
10177
|
|
|
|
|
|
|
$tracelevel) |
10178
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10179
|
0
|
|
|
|
|
0
|
last; |
10180
|
|
|
|
|
|
|
} |
10181
|
21
|
50
|
|
|
|
381
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodylang]<< (} |
10182
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
10183
|
|
|
|
|
|
|
|
10184
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10185
|
|
|
|
|
|
|
q{nestedmessage}, |
10186
|
|
|
|
|
|
|
$tracelevel) |
10187
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10188
|
21
|
|
|
|
|
58
|
$item{q{bodylang(?)}} = $_tok; |
10189
|
21
|
|
|
|
|
41
|
push @item, $_tok; |
10190
|
|
|
|
|
|
|
|
10191
|
|
|
|
|
|
|
|
10192
|
|
|
|
|
|
|
|
10193
|
21
|
50
|
|
|
|
65
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodyextra]}, |
10194
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10195
|
|
|
|
|
|
|
q{nestedmessage}, |
10196
|
|
|
|
|
|
|
$tracelevel) |
10197
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10198
|
21
|
|
|
|
|
63
|
$expectation->is(q{bodyextra})->at($text); |
10199
|
|
|
|
|
|
|
|
10200
|
21
|
50
|
|
21
|
|
302
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyextra, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
21
|
|
|
|
|
62
|
|
10201
|
|
|
|
|
|
|
{ |
10202
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
10203
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10204
|
|
|
|
|
|
|
q{nestedmessage}, |
10205
|
|
|
|
|
|
|
$tracelevel) |
10206
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10207
|
0
|
|
|
|
|
0
|
last; |
10208
|
|
|
|
|
|
|
} |
10209
|
21
|
50
|
|
|
|
363
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodyextra]<< (} |
10210
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
10211
|
|
|
|
|
|
|
|
10212
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10213
|
|
|
|
|
|
|
q{nestedmessage}, |
10214
|
|
|
|
|
|
|
$tracelevel) |
10215
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10216
|
21
|
|
|
|
|
67
|
$item{q{bodyextra(?)}} = $_tok; |
10217
|
21
|
|
|
|
|
40
|
push @item, $_tok; |
10218
|
|
|
|
|
|
|
|
10219
|
|
|
|
|
|
|
|
10220
|
|
|
|
|
|
|
|
10221
|
21
|
50
|
|
|
|
54
|
Parse::RecDescent::_trace(q{Trying action}, |
10222
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10223
|
|
|
|
|
|
|
q{nestedmessage}, |
10224
|
|
|
|
|
|
|
$tracelevel) |
10225
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10226
|
|
|
|
|
|
|
|
10227
|
|
|
|
|
|
|
|
10228
|
21
|
50
|
|
|
|
51
|
$_tok = ($_noactions) ? 0 : do { |
10229
|
21
|
|
|
|
|
41
|
$return = {}; |
10230
|
|
|
|
|
|
|
$return->{$_} = $item{$_} |
10231
|
21
|
|
|
|
|
192
|
for qw/bodyparms bodyid bodydesc bodyenc bodysize/; |
10232
|
|
|
|
|
|
|
# envelopestruct bodystructure textlines/; |
10233
|
|
|
|
|
|
|
|
10234
|
21
|
|
|
|
|
99
|
take_optional_items($return, \%item |
10235
|
|
|
|
|
|
|
, qw/envelopestruct bodystructure textlines/ |
10236
|
|
|
|
|
|
|
, qw/bodyMD5 bodydisp bodylang bodyextra/); |
10237
|
|
|
|
|
|
|
|
10238
|
21
|
|
|
|
|
122
|
merge_hash($return, $item{bodystructure}[0]); |
10239
|
21
|
|
|
|
|
95
|
merge_hash($return, $item{basicfields}); |
10240
|
21
|
|
|
|
|
59
|
$return->{bodytype} = "MESSAGE" ; |
10241
|
21
|
|
|
|
|
51
|
$return->{bodysubtype} = "RFC822" ; |
10242
|
21
|
|
|
|
|
42
|
1; |
10243
|
|
|
|
|
|
|
}; |
10244
|
21
|
50
|
|
|
|
74
|
unless (defined $_tok) |
10245
|
|
|
|
|
|
|
{ |
10246
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
10247
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10248
|
0
|
|
|
|
|
0
|
last; |
10249
|
|
|
|
|
|
|
} |
10250
|
21
|
50
|
|
|
|
65
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
10251
|
|
|
|
|
|
|
. $_tok . q{])}, |
10252
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
10253
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10254
|
21
|
|
|
|
|
44
|
push @item, $_tok; |
10255
|
21
|
|
|
|
|
44
|
$item{__ACTION1__}=$_tok; |
10256
|
|
|
|
|
|
|
|
10257
|
|
|
|
|
|
|
|
10258
|
21
|
50
|
|
|
|
53
|
Parse::RecDescent::_trace(q{>>Matched production: [rfc822message bodyparms bodyid bodydesc bodyenc bodysize envelopestruct bodystructure textlines bodyMD5 bodydisp bodylang bodyextra]<<}, |
10259
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10260
|
|
|
|
|
|
|
q{nestedmessage}, |
10261
|
|
|
|
|
|
|
$tracelevel) |
10262
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10263
|
|
|
|
|
|
|
|
10264
|
|
|
|
|
|
|
|
10265
|
|
|
|
|
|
|
|
10266
|
21
|
|
|
|
|
36
|
$_matched = 1; |
10267
|
21
|
|
|
|
|
39
|
last; |
10268
|
|
|
|
|
|
|
} |
10269
|
|
|
|
|
|
|
|
10270
|
|
|
|
|
|
|
splice |
10271
|
53
|
100
|
|
|
|
189
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
32
|
|
|
|
|
83
|
|
10272
|
|
|
|
|
|
|
|
10273
|
53
|
100
|
66
|
|
|
186
|
unless ( $_matched || defined($score) ) |
10274
|
|
|
|
|
|
|
{ |
10275
|
32
|
|
|
|
|
57
|
splice @{$thisparser->{deferred}}, $def_at; |
|
32
|
|
|
|
|
61
|
|
10276
|
|
|
|
|
|
|
|
10277
|
|
|
|
|
|
|
|
10278
|
32
|
|
|
|
|
66
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
10279
|
32
|
50
|
|
|
|
75
|
Parse::RecDescent::_trace(q{<>}, |
10280
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
10281
|
|
|
|
|
|
|
q{nestedmessage}, |
10282
|
|
|
|
|
|
|
$tracelevel) |
10283
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10284
|
32
|
|
|
|
|
172
|
return undef; |
10285
|
|
|
|
|
|
|
} |
10286
|
21
|
50
|
33
|
|
|
137
|
if (!defined($return) && defined($score)) |
10287
|
|
|
|
|
|
|
{ |
10288
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
10289
|
|
|
|
|
|
|
q{nestedmessage}, |
10290
|
|
|
|
|
|
|
$tracelevel) |
10291
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10292
|
0
|
|
|
|
|
0
|
$return = $score_return; |
10293
|
|
|
|
|
|
|
} |
10294
|
21
|
|
|
|
|
37
|
splice @{$thisparser->{errors}}, $err_at; |
|
21
|
|
|
|
|
59
|
|
10295
|
21
|
50
|
|
|
|
60
|
$return = $item[$#item] unless defined $return; |
10296
|
21
|
50
|
|
|
|
90
|
if (defined $::RD_TRACE) |
10297
|
|
|
|
|
|
|
{ |
10298
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
10299
|
|
|
|
|
|
|
$return . q{])}, "", |
10300
|
|
|
|
|
|
|
q{nestedmessage}, |
10301
|
|
|
|
|
|
|
$tracelevel); |
10302
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
10303
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
10304
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10305
|
|
|
|
|
|
|
, q{nestedmessage}, |
10306
|
|
|
|
|
|
|
$tracelevel) |
10307
|
|
|
|
|
|
|
} |
10308
|
21
|
|
|
|
|
56
|
$_[1] = $text; |
10309
|
21
|
|
|
|
|
250
|
return $return; |
10310
|
|
|
|
|
|
|
} |
10311
|
|
|
|
|
|
|
|
10312
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
10313
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::othertypemessage |
10314
|
|
|
|
|
|
|
{ |
10315
|
32
|
|
|
32
|
|
62
|
my $thisparser = $_[0]; |
10316
|
1
|
|
|
1
|
|
10
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
367
|
|
10317
|
32
|
|
50
|
|
|
84
|
local $tracelevel = ($tracelevel||0)+1; |
10318
|
32
|
|
|
|
|
63
|
$ERRORS = 0; |
10319
|
32
|
|
|
|
|
71
|
my $thisrule = $thisparser->{"rules"}{"othertypemessage"}; |
10320
|
|
|
|
|
|
|
|
10321
|
32
|
50
|
|
|
|
71
|
Parse::RecDescent::_trace(q{Trying rule: [othertypemessage]}, |
10322
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
10323
|
|
|
|
|
|
|
q{othertypemessage}, |
10324
|
|
|
|
|
|
|
$tracelevel) |
10325
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10326
|
|
|
|
|
|
|
|
10327
|
32
|
|
|
|
|
63
|
my $def_at = @{$thisparser->{deferred}}; |
|
32
|
|
|
|
|
67
|
|
10328
|
32
|
|
|
|
|
57
|
my $err_at = @{$thisparser->{errors}}; |
|
32
|
|
|
|
|
68
|
|
10329
|
|
|
|
|
|
|
|
10330
|
32
|
|
|
|
|
87
|
my $score; |
10331
|
|
|
|
|
|
|
my $score_return; |
10332
|
32
|
|
|
|
|
0
|
my $_tok; |
10333
|
32
|
|
|
|
|
50
|
my $return = undef; |
10334
|
32
|
|
|
|
|
55
|
my $_matched=0; |
10335
|
32
|
|
|
|
|
49
|
my $commit=0; |
10336
|
32
|
|
|
|
|
65
|
my @item = (); |
10337
|
32
|
|
|
|
|
57
|
my %item = (); |
10338
|
32
|
|
|
|
|
48
|
my $repeating = $_[2]; |
10339
|
32
|
|
|
|
|
53
|
my $_noactions = $_[3]; |
10340
|
32
|
50
|
|
|
|
73
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
32
|
|
|
|
|
53
|
|
|
32
|
|
|
|
|
61
|
|
10341
|
32
|
|
|
|
|
61
|
my $_itempos = $_[5]; |
10342
|
32
|
50
|
|
|
|
87
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
10343
|
32
|
|
|
|
|
88
|
my $text; |
10344
|
|
|
|
|
|
|
my $lastsep; |
10345
|
32
|
|
|
|
|
0
|
my $current_match; |
10346
|
32
|
|
|
|
|
92
|
my $expectation = new Parse::RecDescent::Expectation(q{bodytype}); |
10347
|
32
|
|
|
|
|
251
|
$expectation->at($_[1]); |
10348
|
|
|
|
|
|
|
|
10349
|
32
|
|
|
|
|
127
|
my $thisline; |
10350
|
32
|
|
|
|
|
123
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
10351
|
|
|
|
|
|
|
|
10352
|
|
|
|
|
|
|
|
10353
|
|
|
|
|
|
|
|
10354
|
32
|
|
33
|
|
|
276
|
while (!$_matched && !$commit) |
10355
|
|
|
|
|
|
|
{ |
10356
|
|
|
|
|
|
|
|
10357
|
32
|
50
|
|
|
|
80
|
Parse::RecDescent::_trace(q{Trying production: [bodytype basicfields bodyMD5 bodydisp bodylang bodyextra]}, |
10358
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
10359
|
|
|
|
|
|
|
q{othertypemessage}, |
10360
|
|
|
|
|
|
|
$tracelevel) |
10361
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10362
|
32
|
|
|
|
|
78
|
my $thisprod = $thisrule->{"prods"}[0]; |
10363
|
32
|
|
|
|
|
85
|
$text = $_[1]; |
10364
|
32
|
|
|
|
|
58
|
my $_savetext; |
10365
|
32
|
|
|
|
|
69
|
@item = (q{othertypemessage}); |
10366
|
32
|
|
|
|
|
68
|
%item = (__RULE__ => q{othertypemessage}); |
10367
|
32
|
|
|
|
|
54
|
my $repcount = 0; |
10368
|
|
|
|
|
|
|
|
10369
|
|
|
|
|
|
|
|
10370
|
32
|
50
|
|
|
|
74
|
Parse::RecDescent::_trace(q{Trying subrule: [bodytype]}, |
10371
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10372
|
|
|
|
|
|
|
q{othertypemessage}, |
10373
|
|
|
|
|
|
|
$tracelevel) |
10374
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10375
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
171
|
|
|
32
|
|
|
|
|
48
|
|
10376
|
32
|
|
|
|
|
86
|
$expectation->is(q{})->at($text); |
10377
|
32
|
100
|
|
32
|
|
343
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodytype($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
32
|
|
|
|
|
71
|
|
10378
|
|
|
|
|
|
|
{ |
10379
|
|
|
|
|
|
|
|
10380
|
20
|
50
|
|
|
|
46
|
Parse::RecDescent::_trace(q{<>}, |
10381
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10382
|
|
|
|
|
|
|
q{othertypemessage}, |
10383
|
|
|
|
|
|
|
$tracelevel) |
10384
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10385
|
20
|
|
|
|
|
69
|
$expectation->failed(); |
10386
|
20
|
|
|
|
|
74
|
last; |
10387
|
|
|
|
|
|
|
} |
10388
|
12
|
50
|
|
|
|
53
|
Parse::RecDescent::_trace(q{>>Matched subrule: [bodytype]<< (return value: [} |
10389
|
|
|
|
|
|
|
. $_tok . q{]}, |
10390
|
|
|
|
|
|
|
|
10391
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10392
|
|
|
|
|
|
|
q{othertypemessage}, |
10393
|
|
|
|
|
|
|
$tracelevel) |
10394
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10395
|
12
|
|
|
|
|
34
|
$item{q{bodytype}} = $_tok; |
10396
|
12
|
|
|
|
|
31
|
push @item, $_tok; |
10397
|
|
|
|
|
|
|
|
10398
|
|
|
|
|
|
|
} |
10399
|
|
|
|
|
|
|
|
10400
|
12
|
50
|
|
|
|
40
|
Parse::RecDescent::_trace(q{Trying subrule: [basicfields]}, |
10401
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10402
|
|
|
|
|
|
|
q{othertypemessage}, |
10403
|
|
|
|
|
|
|
$tracelevel) |
10404
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10405
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
1160
|
|
|
12
|
|
|
|
|
17
|
|
10406
|
12
|
|
|
|
|
50
|
$expectation->is(q{basicfields})->at($text); |
10407
|
12
|
50
|
|
12
|
|
187
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::basicfields($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
12
|
|
|
|
|
25
|
|
10408
|
|
|
|
|
|
|
{ |
10409
|
|
|
|
|
|
|
|
10410
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
10411
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10412
|
|
|
|
|
|
|
q{othertypemessage}, |
10413
|
|
|
|
|
|
|
$tracelevel) |
10414
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10415
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
10416
|
0
|
|
|
|
|
0
|
last; |
10417
|
|
|
|
|
|
|
} |
10418
|
12
|
50
|
|
|
|
51
|
Parse::RecDescent::_trace(q{>>Matched subrule: [basicfields]<< (return value: [} |
10419
|
|
|
|
|
|
|
. $_tok . q{]}, |
10420
|
|
|
|
|
|
|
|
10421
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10422
|
|
|
|
|
|
|
q{othertypemessage}, |
10423
|
|
|
|
|
|
|
$tracelevel) |
10424
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10425
|
12
|
|
|
|
|
34
|
$item{q{basicfields}} = $_tok; |
10426
|
12
|
|
|
|
|
27
|
push @item, $_tok; |
10427
|
|
|
|
|
|
|
|
10428
|
|
|
|
|
|
|
} |
10429
|
|
|
|
|
|
|
|
10430
|
12
|
50
|
|
|
|
33
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodyMD5]}, |
10431
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10432
|
|
|
|
|
|
|
q{othertypemessage}, |
10433
|
|
|
|
|
|
|
$tracelevel) |
10434
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10435
|
12
|
|
|
|
|
38
|
$expectation->is(q{bodyMD5})->at($text); |
10436
|
|
|
|
|
|
|
|
10437
|
12
|
50
|
|
12
|
|
152
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyMD5, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
12
|
|
|
|
|
27
|
|
10438
|
|
|
|
|
|
|
{ |
10439
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
10440
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10441
|
|
|
|
|
|
|
q{othertypemessage}, |
10442
|
|
|
|
|
|
|
$tracelevel) |
10443
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10444
|
0
|
|
|
|
|
0
|
last; |
10445
|
|
|
|
|
|
|
} |
10446
|
12
|
50
|
|
|
|
216
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodyMD5]<< (} |
10447
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
10448
|
|
|
|
|
|
|
|
10449
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10450
|
|
|
|
|
|
|
q{othertypemessage}, |
10451
|
|
|
|
|
|
|
$tracelevel) |
10452
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10453
|
12
|
|
|
|
|
33
|
$item{q{bodyMD5(?)}} = $_tok; |
10454
|
12
|
|
|
|
|
27
|
push @item, $_tok; |
10455
|
|
|
|
|
|
|
|
10456
|
|
|
|
|
|
|
|
10457
|
|
|
|
|
|
|
|
10458
|
12
|
50
|
|
|
|
34
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodydisp]}, |
10459
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10460
|
|
|
|
|
|
|
q{othertypemessage}, |
10461
|
|
|
|
|
|
|
$tracelevel) |
10462
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10463
|
12
|
|
|
|
|
38
|
$expectation->is(q{bodydisp})->at($text); |
10464
|
|
|
|
|
|
|
|
10465
|
12
|
50
|
|
12
|
|
148
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodydisp, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
12
|
|
|
|
|
25
|
|
10466
|
|
|
|
|
|
|
{ |
10467
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
10468
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10469
|
|
|
|
|
|
|
q{othertypemessage}, |
10470
|
|
|
|
|
|
|
$tracelevel) |
10471
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10472
|
0
|
|
|
|
|
0
|
last; |
10473
|
|
|
|
|
|
|
} |
10474
|
12
|
50
|
|
|
|
263
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodydisp]<< (} |
10475
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
10476
|
|
|
|
|
|
|
|
10477
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10478
|
|
|
|
|
|
|
q{othertypemessage}, |
10479
|
|
|
|
|
|
|
$tracelevel) |
10480
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10481
|
12
|
|
|
|
|
35
|
$item{q{bodydisp(?)}} = $_tok; |
10482
|
12
|
|
|
|
|
30
|
push @item, $_tok; |
10483
|
|
|
|
|
|
|
|
10484
|
|
|
|
|
|
|
|
10485
|
|
|
|
|
|
|
|
10486
|
12
|
50
|
|
|
|
36
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodylang]}, |
10487
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10488
|
|
|
|
|
|
|
q{othertypemessage}, |
10489
|
|
|
|
|
|
|
$tracelevel) |
10490
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10491
|
12
|
|
|
|
|
41
|
$expectation->is(q{bodylang})->at($text); |
10492
|
|
|
|
|
|
|
|
10493
|
12
|
50
|
|
12
|
|
153
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodylang, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
12
|
|
|
|
|
29
|
|
10494
|
|
|
|
|
|
|
{ |
10495
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
10496
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10497
|
|
|
|
|
|
|
q{othertypemessage}, |
10498
|
|
|
|
|
|
|
$tracelevel) |
10499
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10500
|
0
|
|
|
|
|
0
|
last; |
10501
|
|
|
|
|
|
|
} |
10502
|
12
|
50
|
|
|
|
242
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodylang]<< (} |
10503
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
10504
|
|
|
|
|
|
|
|
10505
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10506
|
|
|
|
|
|
|
q{othertypemessage}, |
10507
|
|
|
|
|
|
|
$tracelevel) |
10508
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10509
|
12
|
|
|
|
|
31
|
$item{q{bodylang(?)}} = $_tok; |
10510
|
12
|
|
|
|
|
27
|
push @item, $_tok; |
10511
|
|
|
|
|
|
|
|
10512
|
|
|
|
|
|
|
|
10513
|
|
|
|
|
|
|
|
10514
|
12
|
50
|
|
|
|
40
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodyextra]}, |
10515
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10516
|
|
|
|
|
|
|
q{othertypemessage}, |
10517
|
|
|
|
|
|
|
$tracelevel) |
10518
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10519
|
12
|
|
|
|
|
37
|
$expectation->is(q{bodyextra})->at($text); |
10520
|
|
|
|
|
|
|
|
10521
|
12
|
50
|
|
12
|
|
158
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyextra, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
12
|
|
|
|
|
29
|
|
10522
|
|
|
|
|
|
|
{ |
10523
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
10524
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10525
|
|
|
|
|
|
|
q{othertypemessage}, |
10526
|
|
|
|
|
|
|
$tracelevel) |
10527
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10528
|
0
|
|
|
|
|
0
|
last; |
10529
|
|
|
|
|
|
|
} |
10530
|
12
|
50
|
|
|
|
214
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodyextra]<< (} |
10531
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
10532
|
|
|
|
|
|
|
|
10533
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10534
|
|
|
|
|
|
|
q{othertypemessage}, |
10535
|
|
|
|
|
|
|
$tracelevel) |
10536
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10537
|
12
|
|
|
|
|
33
|
$item{q{bodyextra(?)}} = $_tok; |
10538
|
12
|
|
|
|
|
27
|
push @item, $_tok; |
10539
|
|
|
|
|
|
|
|
10540
|
|
|
|
|
|
|
|
10541
|
|
|
|
|
|
|
|
10542
|
12
|
50
|
|
|
|
37
|
Parse::RecDescent::_trace(q{Trying action}, |
10543
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10544
|
|
|
|
|
|
|
q{othertypemessage}, |
10545
|
|
|
|
|
|
|
$tracelevel) |
10546
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10547
|
|
|
|
|
|
|
|
10548
|
|
|
|
|
|
|
|
10549
|
12
|
50
|
|
|
|
31
|
$_tok = ($_noactions) ? 0 : do { $return = { bodytype => $item{bodytype} }; |
|
12
|
|
|
|
|
38
|
|
10550
|
12
|
|
|
|
|
47
|
take_optional_items($return, \%item |
10551
|
|
|
|
|
|
|
, qw/bodyMD5 bodydisp bodylang bodyextra/ ); |
10552
|
12
|
|
|
|
|
53
|
merge_hash($return, $item{basicfields}); |
10553
|
12
|
|
|
|
|
33
|
1; |
10554
|
|
|
|
|
|
|
}; |
10555
|
12
|
50
|
|
|
|
40
|
unless (defined $_tok) |
10556
|
|
|
|
|
|
|
{ |
10557
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
10558
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10559
|
0
|
|
|
|
|
0
|
last; |
10560
|
|
|
|
|
|
|
} |
10561
|
12
|
50
|
|
|
|
34
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
10562
|
|
|
|
|
|
|
. $_tok . q{])}, |
10563
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
10564
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10565
|
12
|
|
|
|
|
24
|
push @item, $_tok; |
10566
|
12
|
|
|
|
|
26
|
$item{__ACTION1__}=$_tok; |
10567
|
|
|
|
|
|
|
|
10568
|
|
|
|
|
|
|
|
10569
|
12
|
50
|
|
|
|
30
|
Parse::RecDescent::_trace(q{>>Matched production: [bodytype basicfields bodyMD5 bodydisp bodylang bodyextra]<<}, |
10570
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10571
|
|
|
|
|
|
|
q{othertypemessage}, |
10572
|
|
|
|
|
|
|
$tracelevel) |
10573
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10574
|
|
|
|
|
|
|
|
10575
|
|
|
|
|
|
|
|
10576
|
|
|
|
|
|
|
|
10577
|
12
|
|
|
|
|
23
|
$_matched = 1; |
10578
|
12
|
|
|
|
|
22
|
last; |
10579
|
|
|
|
|
|
|
} |
10580
|
|
|
|
|
|
|
|
10581
|
|
|
|
|
|
|
splice |
10582
|
32
|
100
|
|
|
|
134
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
20
|
|
|
|
|
57
|
|
10583
|
|
|
|
|
|
|
|
10584
|
32
|
100
|
66
|
|
|
119
|
unless ( $_matched || defined($score) ) |
10585
|
|
|
|
|
|
|
{ |
10586
|
20
|
|
|
|
|
37
|
splice @{$thisparser->{deferred}}, $def_at; |
|
20
|
|
|
|
|
46
|
|
10587
|
|
|
|
|
|
|
|
10588
|
|
|
|
|
|
|
|
10589
|
20
|
|
|
|
|
42
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
10590
|
20
|
50
|
|
|
|
52
|
Parse::RecDescent::_trace(q{<>}, |
10591
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
10592
|
|
|
|
|
|
|
q{othertypemessage}, |
10593
|
|
|
|
|
|
|
$tracelevel) |
10594
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10595
|
20
|
|
|
|
|
118
|
return undef; |
10596
|
|
|
|
|
|
|
} |
10597
|
12
|
50
|
33
|
|
|
46
|
if (!defined($return) && defined($score)) |
10598
|
|
|
|
|
|
|
{ |
10599
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
10600
|
|
|
|
|
|
|
q{othertypemessage}, |
10601
|
|
|
|
|
|
|
$tracelevel) |
10602
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10603
|
0
|
|
|
|
|
0
|
$return = $score_return; |
10604
|
|
|
|
|
|
|
} |
10605
|
12
|
|
|
|
|
19
|
splice @{$thisparser->{errors}}, $err_at; |
|
12
|
|
|
|
|
33
|
|
10606
|
12
|
50
|
|
|
|
36
|
$return = $item[$#item] unless defined $return; |
10607
|
12
|
50
|
|
|
|
31
|
if (defined $::RD_TRACE) |
10608
|
|
|
|
|
|
|
{ |
10609
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
10610
|
|
|
|
|
|
|
$return . q{])}, "", |
10611
|
|
|
|
|
|
|
q{othertypemessage}, |
10612
|
|
|
|
|
|
|
$tracelevel); |
10613
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
10614
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
10615
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10616
|
|
|
|
|
|
|
, q{othertypemessage}, |
10617
|
|
|
|
|
|
|
$tracelevel) |
10618
|
|
|
|
|
|
|
} |
10619
|
12
|
|
|
|
|
25
|
$_[1] = $text; |
10620
|
12
|
|
|
|
|
113
|
return $return; |
10621
|
|
|
|
|
|
|
} |
10622
|
|
|
|
|
|
|
|
10623
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
10624
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::part |
10625
|
|
|
|
|
|
|
{ |
10626
|
125
|
|
|
125
|
|
1243
|
my $thisparser = $_[0]; |
10627
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
375
|
|
10628
|
125
|
|
50
|
|
|
316
|
local $tracelevel = ($tracelevel||0)+1; |
10629
|
125
|
|
|
|
|
256
|
$ERRORS = 0; |
10630
|
125
|
|
|
|
|
249
|
my $thisrule = $thisparser->{"rules"}{"part"}; |
10631
|
|
|
|
|
|
|
|
10632
|
125
|
50
|
|
|
|
283
|
Parse::RecDescent::_trace(q{Trying rule: [part]}, |
10633
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
10634
|
|
|
|
|
|
|
q{part}, |
10635
|
|
|
|
|
|
|
$tracelevel) |
10636
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10637
|
|
|
|
|
|
|
|
10638
|
125
|
|
|
|
|
199
|
my $def_at = @{$thisparser->{deferred}}; |
|
125
|
|
|
|
|
244
|
|
10639
|
125
|
|
|
|
|
204
|
my $err_at = @{$thisparser->{errors}}; |
|
125
|
|
|
|
|
213
|
|
10640
|
|
|
|
|
|
|
|
10641
|
125
|
|
|
|
|
313
|
my $score; |
10642
|
|
|
|
|
|
|
my $score_return; |
10643
|
125
|
|
|
|
|
0
|
my $_tok; |
10644
|
125
|
|
|
|
|
212
|
my $return = undef; |
10645
|
125
|
|
|
|
|
176
|
my $_matched=0; |
10646
|
125
|
|
|
|
|
188
|
my $commit=0; |
10647
|
125
|
|
|
|
|
228
|
my @item = (); |
10648
|
125
|
|
|
|
|
224
|
my %item = (); |
10649
|
125
|
|
|
|
|
212
|
my $repeating = $_[2]; |
10650
|
125
|
|
|
|
|
193
|
my $_noactions = $_[3]; |
10651
|
125
|
50
|
|
|
|
277
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
125
|
|
|
|
|
247
|
|
|
125
|
|
|
|
|
221
|
|
10652
|
125
|
|
|
|
|
217
|
my $_itempos = $_[5]; |
10653
|
125
|
50
|
|
|
|
330
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
10654
|
125
|
|
|
|
|
327
|
my $text; |
10655
|
|
|
|
|
|
|
my $lastsep; |
10656
|
125
|
|
|
|
|
0
|
my $current_match; |
10657
|
125
|
|
|
|
|
296
|
my $expectation = new Parse::RecDescent::Expectation(q{multipart, or textmessage, or nestedmessage, or othertypemessage}); |
10658
|
125
|
|
|
|
|
864
|
$expectation->at($_[1]); |
10659
|
|
|
|
|
|
|
|
10660
|
125
|
|
|
|
|
608
|
my $thisline; |
10661
|
125
|
|
|
|
|
421
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
10662
|
|
|
|
|
|
|
|
10663
|
|
|
|
|
|
|
|
10664
|
|
|
|
|
|
|
|
10665
|
125
|
|
33
|
|
|
1014
|
while (!$_matched && !$commit) |
10666
|
|
|
|
|
|
|
{ |
10667
|
|
|
|
|
|
|
|
10668
|
125
|
50
|
|
|
|
286
|
Parse::RecDescent::_trace(q{Trying production: [multipart]}, |
10669
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
10670
|
|
|
|
|
|
|
q{part}, |
10671
|
|
|
|
|
|
|
$tracelevel) |
10672
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10673
|
125
|
|
|
|
|
268
|
my $thisprod = $thisrule->{"prods"}[0]; |
10674
|
125
|
|
|
|
|
301
|
$text = $_[1]; |
10675
|
125
|
|
|
|
|
192
|
my $_savetext; |
10676
|
125
|
|
|
|
|
260
|
@item = (q{part}); |
10677
|
125
|
|
|
|
|
268
|
%item = (__RULE__ => q{part}); |
10678
|
125
|
|
|
|
|
221
|
my $repcount = 0; |
10679
|
|
|
|
|
|
|
|
10680
|
|
|
|
|
|
|
|
10681
|
125
|
50
|
|
|
|
251
|
Parse::RecDescent::_trace(q{Trying subrule: [multipart]}, |
10682
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10683
|
|
|
|
|
|
|
q{part}, |
10684
|
|
|
|
|
|
|
$tracelevel) |
10685
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10686
|
1
|
|
|
1
|
|
9
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
368
|
|
|
125
|
|
|
|
|
192
|
|
10687
|
125
|
|
|
|
|
334
|
$expectation->is(q{})->at($text); |
10688
|
125
|
100
|
|
125
|
|
1273
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::multipart($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
125
|
|
|
|
|
285
|
|
10689
|
|
|
|
|
|
|
{ |
10690
|
|
|
|
|
|
|
|
10691
|
94
|
50
|
|
|
|
193
|
Parse::RecDescent::_trace(q{<>}, |
10692
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10693
|
|
|
|
|
|
|
q{part}, |
10694
|
|
|
|
|
|
|
$tracelevel) |
10695
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10696
|
94
|
|
|
|
|
264
|
$expectation->failed(); |
10697
|
94
|
|
|
|
|
324
|
last; |
10698
|
|
|
|
|
|
|
} |
10699
|
31
|
50
|
|
|
|
140
|
Parse::RecDescent::_trace(q{>>Matched subrule: [multipart]<< (return value: [} |
10700
|
|
|
|
|
|
|
. $_tok . q{]}, |
10701
|
|
|
|
|
|
|
|
10702
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10703
|
|
|
|
|
|
|
q{part}, |
10704
|
|
|
|
|
|
|
$tracelevel) |
10705
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10706
|
31
|
|
|
|
|
76
|
$item{q{multipart}} = $_tok; |
10707
|
31
|
|
|
|
|
67
|
push @item, $_tok; |
10708
|
|
|
|
|
|
|
|
10709
|
|
|
|
|
|
|
} |
10710
|
|
|
|
|
|
|
|
10711
|
31
|
50
|
|
|
|
81
|
Parse::RecDescent::_trace(q{Trying action}, |
10712
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10713
|
|
|
|
|
|
|
q{part}, |
10714
|
|
|
|
|
|
|
$tracelevel) |
10715
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10716
|
|
|
|
|
|
|
|
10717
|
|
|
|
|
|
|
|
10718
|
31
|
50
|
|
|
|
70
|
$_tok = ($_noactions) ? 0 : do { $return = bless $item{multipart}, $mibs }; |
|
31
|
|
|
|
|
108
|
|
10719
|
31
|
50
|
|
|
|
84
|
unless (defined $_tok) |
10720
|
|
|
|
|
|
|
{ |
10721
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
10722
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10723
|
0
|
|
|
|
|
0
|
last; |
10724
|
|
|
|
|
|
|
} |
10725
|
31
|
50
|
|
|
|
75
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
10726
|
|
|
|
|
|
|
. $_tok . q{])}, |
10727
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
10728
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10729
|
31
|
|
|
|
|
51
|
push @item, $_tok; |
10730
|
31
|
|
|
|
|
64
|
$item{__ACTION1__}=$_tok; |
10731
|
|
|
|
|
|
|
|
10732
|
|
|
|
|
|
|
|
10733
|
31
|
50
|
|
|
|
80
|
Parse::RecDescent::_trace(q{>>Matched production: [multipart]<<}, |
10734
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10735
|
|
|
|
|
|
|
q{part}, |
10736
|
|
|
|
|
|
|
$tracelevel) |
10737
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10738
|
|
|
|
|
|
|
|
10739
|
|
|
|
|
|
|
|
10740
|
|
|
|
|
|
|
|
10741
|
31
|
|
|
|
|
66
|
$_matched = 1; |
10742
|
31
|
|
|
|
|
60
|
last; |
10743
|
|
|
|
|
|
|
} |
10744
|
|
|
|
|
|
|
|
10745
|
|
|
|
|
|
|
splice |
10746
|
125
|
100
|
|
|
|
373
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
94
|
|
|
|
|
190
|
|
10747
|
|
|
|
|
|
|
|
10748
|
125
|
|
66
|
|
|
476
|
while (!$_matched && !$commit) |
10749
|
|
|
|
|
|
|
{ |
10750
|
|
|
|
|
|
|
|
10751
|
94
|
50
|
|
|
|
207
|
Parse::RecDescent::_trace(q{Trying production: [textmessage]}, |
10752
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
10753
|
|
|
|
|
|
|
q{part}, |
10754
|
|
|
|
|
|
|
$tracelevel) |
10755
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10756
|
94
|
|
|
|
|
192
|
my $thisprod = $thisrule->{"prods"}[1]; |
10757
|
94
|
|
|
|
|
245
|
$text = $_[1]; |
10758
|
94
|
|
|
|
|
157
|
my $_savetext; |
10759
|
94
|
|
|
|
|
209
|
@item = (q{part}); |
10760
|
94
|
|
|
|
|
251
|
%item = (__RULE__ => q{part}); |
10761
|
94
|
|
|
|
|
172
|
my $repcount = 0; |
10762
|
|
|
|
|
|
|
|
10763
|
|
|
|
|
|
|
|
10764
|
94
|
50
|
|
|
|
249
|
Parse::RecDescent::_trace(q{Trying subrule: [textmessage]}, |
10765
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10766
|
|
|
|
|
|
|
q{part}, |
10767
|
|
|
|
|
|
|
$tracelevel) |
10768
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10769
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
514
|
|
|
94
|
|
|
|
|
141
|
|
10770
|
94
|
|
|
|
|
242
|
$expectation->is(q{})->at($text); |
10771
|
94
|
100
|
|
94
|
|
1004
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::textmessage($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
94
|
|
|
|
|
171
|
|
10772
|
|
|
|
|
|
|
{ |
10773
|
|
|
|
|
|
|
|
10774
|
53
|
50
|
|
|
|
133
|
Parse::RecDescent::_trace(q{<>}, |
10775
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10776
|
|
|
|
|
|
|
q{part}, |
10777
|
|
|
|
|
|
|
$tracelevel) |
10778
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10779
|
53
|
|
|
|
|
157
|
$expectation->failed(); |
10780
|
53
|
|
|
|
|
184
|
last; |
10781
|
|
|
|
|
|
|
} |
10782
|
41
|
50
|
|
|
|
161
|
Parse::RecDescent::_trace(q{>>Matched subrule: [textmessage]<< (return value: [} |
10783
|
|
|
|
|
|
|
. $_tok . q{]}, |
10784
|
|
|
|
|
|
|
|
10785
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10786
|
|
|
|
|
|
|
q{part}, |
10787
|
|
|
|
|
|
|
$tracelevel) |
10788
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10789
|
41
|
|
|
|
|
98
|
$item{q{textmessage}} = $_tok; |
10790
|
41
|
|
|
|
|
85
|
push @item, $_tok; |
10791
|
|
|
|
|
|
|
|
10792
|
|
|
|
|
|
|
} |
10793
|
|
|
|
|
|
|
|
10794
|
41
|
50
|
|
|
|
100
|
Parse::RecDescent::_trace(q{Trying action}, |
10795
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10796
|
|
|
|
|
|
|
q{part}, |
10797
|
|
|
|
|
|
|
$tracelevel) |
10798
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10799
|
|
|
|
|
|
|
|
10800
|
|
|
|
|
|
|
|
10801
|
41
|
50
|
|
|
|
91
|
$_tok = ($_noactions) ? 0 : do { $return = bless $item{textmessage}, $mibs }; |
|
41
|
|
|
|
|
126
|
|
10802
|
41
|
50
|
|
|
|
106
|
unless (defined $_tok) |
10803
|
|
|
|
|
|
|
{ |
10804
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
10805
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10806
|
0
|
|
|
|
|
0
|
last; |
10807
|
|
|
|
|
|
|
} |
10808
|
41
|
50
|
|
|
|
90
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
10809
|
|
|
|
|
|
|
. $_tok . q{])}, |
10810
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
10811
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10812
|
41
|
|
|
|
|
60
|
push @item, $_tok; |
10813
|
41
|
|
|
|
|
78
|
$item{__ACTION1__}=$_tok; |
10814
|
|
|
|
|
|
|
|
10815
|
|
|
|
|
|
|
|
10816
|
41
|
50
|
|
|
|
83
|
Parse::RecDescent::_trace(q{>>Matched production: [textmessage]<<}, |
10817
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10818
|
|
|
|
|
|
|
q{part}, |
10819
|
|
|
|
|
|
|
$tracelevel) |
10820
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10821
|
|
|
|
|
|
|
|
10822
|
|
|
|
|
|
|
|
10823
|
|
|
|
|
|
|
|
10824
|
41
|
|
|
|
|
62
|
$_matched = 1; |
10825
|
41
|
|
|
|
|
73
|
last; |
10826
|
|
|
|
|
|
|
} |
10827
|
|
|
|
|
|
|
|
10828
|
|
|
|
|
|
|
splice |
10829
|
125
|
100
|
|
|
|
333
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
53
|
|
|
|
|
137
|
|
10830
|
|
|
|
|
|
|
|
10831
|
125
|
|
66
|
|
|
380
|
while (!$_matched && !$commit) |
10832
|
|
|
|
|
|
|
{ |
10833
|
|
|
|
|
|
|
|
10834
|
53
|
50
|
|
|
|
113
|
Parse::RecDescent::_trace(q{Trying production: [nestedmessage]}, |
10835
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
10836
|
|
|
|
|
|
|
q{part}, |
10837
|
|
|
|
|
|
|
$tracelevel) |
10838
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10839
|
53
|
|
|
|
|
111
|
my $thisprod = $thisrule->{"prods"}[2]; |
10840
|
53
|
|
|
|
|
120
|
$text = $_[1]; |
10841
|
53
|
|
|
|
|
89
|
my $_savetext; |
10842
|
53
|
|
|
|
|
129
|
@item = (q{part}); |
10843
|
53
|
|
|
|
|
131
|
%item = (__RULE__ => q{part}); |
10844
|
53
|
|
|
|
|
85
|
my $repcount = 0; |
10845
|
|
|
|
|
|
|
|
10846
|
|
|
|
|
|
|
|
10847
|
53
|
50
|
|
|
|
128
|
Parse::RecDescent::_trace(q{Trying subrule: [nestedmessage]}, |
10848
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10849
|
|
|
|
|
|
|
q{part}, |
10850
|
|
|
|
|
|
|
$tracelevel) |
10851
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10852
|
1
|
|
|
1
|
|
9
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
371
|
|
|
53
|
|
|
|
|
83
|
|
10853
|
53
|
|
|
|
|
126
|
$expectation->is(q{})->at($text); |
10854
|
53
|
100
|
|
53
|
|
658
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::nestedmessage($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
53
|
|
|
|
|
126
|
|
10855
|
|
|
|
|
|
|
{ |
10856
|
|
|
|
|
|
|
|
10857
|
32
|
50
|
|
|
|
80
|
Parse::RecDescent::_trace(q{<>}, |
10858
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10859
|
|
|
|
|
|
|
q{part}, |
10860
|
|
|
|
|
|
|
$tracelevel) |
10861
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10862
|
32
|
|
|
|
|
108
|
$expectation->failed(); |
10863
|
32
|
|
|
|
|
110
|
last; |
10864
|
|
|
|
|
|
|
} |
10865
|
21
|
50
|
|
|
|
103
|
Parse::RecDescent::_trace(q{>>Matched subrule: [nestedmessage]<< (return value: [} |
10866
|
|
|
|
|
|
|
. $_tok . q{]}, |
10867
|
|
|
|
|
|
|
|
10868
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10869
|
|
|
|
|
|
|
q{part}, |
10870
|
|
|
|
|
|
|
$tracelevel) |
10871
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10872
|
21
|
|
|
|
|
60
|
$item{q{nestedmessage}} = $_tok; |
10873
|
21
|
|
|
|
|
44
|
push @item, $_tok; |
10874
|
|
|
|
|
|
|
|
10875
|
|
|
|
|
|
|
} |
10876
|
|
|
|
|
|
|
|
10877
|
21
|
50
|
|
|
|
67
|
Parse::RecDescent::_trace(q{Trying action}, |
10878
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10879
|
|
|
|
|
|
|
q{part}, |
10880
|
|
|
|
|
|
|
$tracelevel) |
10881
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10882
|
|
|
|
|
|
|
|
10883
|
|
|
|
|
|
|
|
10884
|
21
|
50
|
|
|
|
49
|
$_tok = ($_noactions) ? 0 : do { $return = bless $item{nestedmessage}, $mibs }; |
|
21
|
|
|
|
|
119
|
|
10885
|
21
|
50
|
|
|
|
67
|
unless (defined $_tok) |
10886
|
|
|
|
|
|
|
{ |
10887
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
10888
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10889
|
0
|
|
|
|
|
0
|
last; |
10890
|
|
|
|
|
|
|
} |
10891
|
21
|
50
|
|
|
|
52
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
10892
|
|
|
|
|
|
|
. $_tok . q{])}, |
10893
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
10894
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10895
|
21
|
|
|
|
|
39
|
push @item, $_tok; |
10896
|
21
|
|
|
|
|
44
|
$item{__ACTION1__}=$_tok; |
10897
|
|
|
|
|
|
|
|
10898
|
|
|
|
|
|
|
|
10899
|
21
|
50
|
|
|
|
57
|
Parse::RecDescent::_trace(q{>>Matched production: [nestedmessage]<<}, |
10900
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10901
|
|
|
|
|
|
|
q{part}, |
10902
|
|
|
|
|
|
|
$tracelevel) |
10903
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10904
|
|
|
|
|
|
|
|
10905
|
|
|
|
|
|
|
|
10906
|
|
|
|
|
|
|
|
10907
|
21
|
|
|
|
|
38
|
$_matched = 1; |
10908
|
21
|
|
|
|
|
42
|
last; |
10909
|
|
|
|
|
|
|
} |
10910
|
|
|
|
|
|
|
|
10911
|
|
|
|
|
|
|
splice |
10912
|
125
|
100
|
|
|
|
327
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
32
|
|
|
|
|
71
|
|
10913
|
|
|
|
|
|
|
|
10914
|
125
|
|
66
|
|
|
395
|
while (!$_matched && !$commit) |
10915
|
|
|
|
|
|
|
{ |
10916
|
|
|
|
|
|
|
|
10917
|
32
|
50
|
|
|
|
77
|
Parse::RecDescent::_trace(q{Trying production: [othertypemessage]}, |
10918
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
10919
|
|
|
|
|
|
|
q{part}, |
10920
|
|
|
|
|
|
|
$tracelevel) |
10921
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10922
|
32
|
|
|
|
|
78
|
my $thisprod = $thisrule->{"prods"}[3]; |
10923
|
32
|
|
|
|
|
66
|
$text = $_[1]; |
10924
|
32
|
|
|
|
|
47
|
my $_savetext; |
10925
|
32
|
|
|
|
|
86
|
@item = (q{part}); |
10926
|
32
|
|
|
|
|
81
|
%item = (__RULE__ => q{part}); |
10927
|
32
|
|
|
|
|
61
|
my $repcount = 0; |
10928
|
|
|
|
|
|
|
|
10929
|
|
|
|
|
|
|
|
10930
|
32
|
50
|
|
|
|
70
|
Parse::RecDescent::_trace(q{Trying subrule: [othertypemessage]}, |
10931
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10932
|
|
|
|
|
|
|
q{part}, |
10933
|
|
|
|
|
|
|
$tracelevel) |
10934
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10935
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
720
|
|
|
32
|
|
|
|
|
49
|
|
10936
|
32
|
|
|
|
|
86
|
$expectation->is(q{})->at($text); |
10937
|
32
|
100
|
|
32
|
|
350
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::othertypemessage($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
32
|
|
|
|
|
66
|
|
10938
|
|
|
|
|
|
|
{ |
10939
|
|
|
|
|
|
|
|
10940
|
20
|
50
|
|
|
|
63
|
Parse::RecDescent::_trace(q{<>}, |
10941
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10942
|
|
|
|
|
|
|
q{part}, |
10943
|
|
|
|
|
|
|
$tracelevel) |
10944
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10945
|
20
|
|
|
|
|
64
|
$expectation->failed(); |
10946
|
20
|
|
|
|
|
74
|
last; |
10947
|
|
|
|
|
|
|
} |
10948
|
12
|
50
|
|
|
|
59
|
Parse::RecDescent::_trace(q{>>Matched subrule: [othertypemessage]<< (return value: [} |
10949
|
|
|
|
|
|
|
. $_tok . q{]}, |
10950
|
|
|
|
|
|
|
|
10951
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10952
|
|
|
|
|
|
|
q{part}, |
10953
|
|
|
|
|
|
|
$tracelevel) |
10954
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10955
|
12
|
|
|
|
|
38
|
$item{q{othertypemessage}} = $_tok; |
10956
|
12
|
|
|
|
|
29
|
push @item, $_tok; |
10957
|
|
|
|
|
|
|
|
10958
|
|
|
|
|
|
|
} |
10959
|
|
|
|
|
|
|
|
10960
|
12
|
50
|
|
|
|
35
|
Parse::RecDescent::_trace(q{Trying action}, |
10961
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10962
|
|
|
|
|
|
|
q{part}, |
10963
|
|
|
|
|
|
|
$tracelevel) |
10964
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10965
|
|
|
|
|
|
|
|
10966
|
|
|
|
|
|
|
|
10967
|
12
|
50
|
|
|
|
35
|
$_tok = ($_noactions) ? 0 : do { $return = bless $item{othertypemessage}, $mibs }; |
|
12
|
|
|
|
|
48
|
|
10968
|
12
|
50
|
|
|
|
42
|
unless (defined $_tok) |
10969
|
|
|
|
|
|
|
{ |
10970
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
10971
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10972
|
0
|
|
|
|
|
0
|
last; |
10973
|
|
|
|
|
|
|
} |
10974
|
12
|
50
|
|
|
|
39
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
10975
|
|
|
|
|
|
|
. $_tok . q{])}, |
10976
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
10977
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10978
|
12
|
|
|
|
|
24
|
push @item, $_tok; |
10979
|
12
|
|
|
|
|
30
|
$item{__ACTION1__}=$_tok; |
10980
|
|
|
|
|
|
|
|
10981
|
|
|
|
|
|
|
|
10982
|
12
|
50
|
|
|
|
30
|
Parse::RecDescent::_trace(q{>>Matched production: [othertypemessage]<<}, |
10983
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
10984
|
|
|
|
|
|
|
q{part}, |
10985
|
|
|
|
|
|
|
$tracelevel) |
10986
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
10987
|
|
|
|
|
|
|
|
10988
|
|
|
|
|
|
|
|
10989
|
|
|
|
|
|
|
|
10990
|
12
|
|
|
|
|
24
|
$_matched = 1; |
10991
|
12
|
|
|
|
|
17
|
last; |
10992
|
|
|
|
|
|
|
} |
10993
|
|
|
|
|
|
|
|
10994
|
|
|
|
|
|
|
splice |
10995
|
125
|
100
|
|
|
|
299
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
20
|
|
|
|
|
47
|
|
10996
|
|
|
|
|
|
|
|
10997
|
125
|
100
|
66
|
|
|
344
|
unless ( $_matched || defined($score) ) |
10998
|
|
|
|
|
|
|
{ |
10999
|
20
|
|
|
|
|
39
|
splice @{$thisparser->{deferred}}, $def_at; |
|
20
|
|
|
|
|
45
|
|
11000
|
|
|
|
|
|
|
|
11001
|
|
|
|
|
|
|
|
11002
|
20
|
|
|
|
|
50
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
11003
|
20
|
50
|
|
|
|
49
|
Parse::RecDescent::_trace(q{<>}, |
11004
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11005
|
|
|
|
|
|
|
q{part}, |
11006
|
|
|
|
|
|
|
$tracelevel) |
11007
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11008
|
20
|
|
|
|
|
98
|
return undef; |
11009
|
|
|
|
|
|
|
} |
11010
|
105
|
50
|
33
|
|
|
276
|
if (!defined($return) && defined($score)) |
11011
|
|
|
|
|
|
|
{ |
11012
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
11013
|
|
|
|
|
|
|
q{part}, |
11014
|
|
|
|
|
|
|
$tracelevel) |
11015
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11016
|
0
|
|
|
|
|
0
|
$return = $score_return; |
11017
|
|
|
|
|
|
|
} |
11018
|
105
|
|
|
|
|
189
|
splice @{$thisparser->{errors}}, $err_at; |
|
105
|
|
|
|
|
218
|
|
11019
|
105
|
50
|
|
|
|
230
|
$return = $item[$#item] unless defined $return; |
11020
|
105
|
50
|
|
|
|
198
|
if (defined $::RD_TRACE) |
11021
|
|
|
|
|
|
|
{ |
11022
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
11023
|
|
|
|
|
|
|
$return . q{])}, "", |
11024
|
|
|
|
|
|
|
q{part}, |
11025
|
|
|
|
|
|
|
$tracelevel); |
11026
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
11027
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
11028
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11029
|
|
|
|
|
|
|
, q{part}, |
11030
|
|
|
|
|
|
|
$tracelevel) |
11031
|
|
|
|
|
|
|
} |
11032
|
105
|
|
|
|
|
283
|
$_[1] = $text; |
11033
|
105
|
|
|
|
|
758
|
return $return; |
11034
|
|
|
|
|
|
|
} |
11035
|
|
|
|
|
|
|
|
11036
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
11037
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::personalname |
11038
|
|
|
|
|
|
|
{ |
11039
|
94
|
|
|
94
|
|
179
|
my $thisparser = $_[0]; |
11040
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
352
|
|
11041
|
94
|
|
50
|
|
|
246
|
local $tracelevel = ($tracelevel||0)+1; |
11042
|
94
|
|
|
|
|
164
|
$ERRORS = 0; |
11043
|
94
|
|
|
|
|
238
|
my $thisrule = $thisparser->{"rules"}{"personalname"}; |
11044
|
|
|
|
|
|
|
|
11045
|
94
|
50
|
|
|
|
199
|
Parse::RecDescent::_trace(q{Trying rule: [personalname]}, |
11046
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11047
|
|
|
|
|
|
|
q{personalname}, |
11048
|
|
|
|
|
|
|
$tracelevel) |
11049
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11050
|
|
|
|
|
|
|
|
11051
|
94
|
|
|
|
|
131
|
my $def_at = @{$thisparser->{deferred}}; |
|
94
|
|
|
|
|
200
|
|
11052
|
94
|
|
|
|
|
178
|
my $err_at = @{$thisparser->{errors}}; |
|
94
|
|
|
|
|
184
|
|
11053
|
|
|
|
|
|
|
|
11054
|
94
|
|
|
|
|
264
|
my $score; |
11055
|
|
|
|
|
|
|
my $score_return; |
11056
|
94
|
|
|
|
|
0
|
my $_tok; |
11057
|
94
|
|
|
|
|
161
|
my $return = undef; |
11058
|
94
|
|
|
|
|
156
|
my $_matched=0; |
11059
|
94
|
|
|
|
|
135
|
my $commit=0; |
11060
|
94
|
|
|
|
|
162
|
my @item = (); |
11061
|
94
|
|
|
|
|
158
|
my %item = (); |
11062
|
94
|
|
|
|
|
136
|
my $repeating = $_[2]; |
11063
|
94
|
|
|
|
|
182
|
my $_noactions = $_[3]; |
11064
|
94
|
50
|
|
|
|
200
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
94
|
|
|
|
|
131
|
|
|
94
|
|
|
|
|
177
|
|
11065
|
94
|
|
|
|
|
161
|
my $_itempos = $_[5]; |
11066
|
94
|
50
|
|
|
|
226
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
11067
|
94
|
|
|
|
|
268
|
my $text; |
11068
|
|
|
|
|
|
|
my $lastsep; |
11069
|
94
|
|
|
|
|
0
|
my $current_match; |
11070
|
94
|
|
|
|
|
276
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or STRING}); |
11071
|
94
|
|
|
|
|
632
|
$expectation->at($_[1]); |
11072
|
|
|
|
|
|
|
|
11073
|
94
|
|
|
|
|
506
|
my $thisline; |
11074
|
94
|
|
|
|
|
301
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
11075
|
|
|
|
|
|
|
|
11076
|
|
|
|
|
|
|
|
11077
|
|
|
|
|
|
|
|
11078
|
94
|
|
33
|
|
|
746
|
while (!$_matched && !$commit) |
11079
|
|
|
|
|
|
|
{ |
11080
|
|
|
|
|
|
|
|
11081
|
94
|
50
|
|
|
|
209
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
11082
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11083
|
|
|
|
|
|
|
q{personalname}, |
11084
|
|
|
|
|
|
|
$tracelevel) |
11085
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11086
|
94
|
|
|
|
|
200
|
my $thisprod = $thisrule->{"prods"}[0]; |
11087
|
94
|
|
|
|
|
280
|
$text = $_[1]; |
11088
|
94
|
|
|
|
|
151
|
my $_savetext; |
11089
|
94
|
|
|
|
|
193
|
@item = (q{personalname}); |
11090
|
94
|
|
|
|
|
234
|
%item = (__RULE__ => q{personalname}); |
11091
|
94
|
|
|
|
|
148
|
my $repcount = 0; |
11092
|
|
|
|
|
|
|
|
11093
|
|
|
|
|
|
|
|
11094
|
94
|
50
|
|
|
|
202
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
11095
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11096
|
|
|
|
|
|
|
q{personalname}, |
11097
|
|
|
|
|
|
|
$tracelevel) |
11098
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11099
|
1
|
|
|
1
|
|
9
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
298
|
|
|
94
|
|
|
|
|
160
|
|
11100
|
94
|
|
|
|
|
212
|
$expectation->is(q{})->at($text); |
11101
|
94
|
100
|
|
94
|
|
974
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
94
|
|
|
|
|
218
|
|
11102
|
|
|
|
|
|
|
{ |
11103
|
|
|
|
|
|
|
|
11104
|
70
|
50
|
|
|
|
198
|
Parse::RecDescent::_trace(q{<>}, |
11105
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11106
|
|
|
|
|
|
|
q{personalname}, |
11107
|
|
|
|
|
|
|
$tracelevel) |
11108
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11109
|
70
|
|
|
|
|
219
|
$expectation->failed(); |
11110
|
70
|
|
|
|
|
248
|
last; |
11111
|
|
|
|
|
|
|
} |
11112
|
24
|
50
|
|
|
|
118
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
11113
|
|
|
|
|
|
|
. $_tok . q{]}, |
11114
|
|
|
|
|
|
|
|
11115
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11116
|
|
|
|
|
|
|
q{personalname}, |
11117
|
|
|
|
|
|
|
$tracelevel) |
11118
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11119
|
24
|
|
|
|
|
61
|
$item{q{NIL}} = $_tok; |
11120
|
24
|
|
|
|
|
50
|
push @item, $_tok; |
11121
|
|
|
|
|
|
|
|
11122
|
|
|
|
|
|
|
} |
11123
|
|
|
|
|
|
|
|
11124
|
24
|
50
|
|
|
|
65
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
11125
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11126
|
|
|
|
|
|
|
q{personalname}, |
11127
|
|
|
|
|
|
|
$tracelevel) |
11128
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11129
|
|
|
|
|
|
|
|
11130
|
|
|
|
|
|
|
|
11131
|
|
|
|
|
|
|
|
11132
|
24
|
|
|
|
|
48
|
$_matched = 1; |
11133
|
24
|
|
|
|
|
41
|
last; |
11134
|
|
|
|
|
|
|
} |
11135
|
|
|
|
|
|
|
|
11136
|
|
|
|
|
|
|
splice |
11137
|
94
|
100
|
|
|
|
316
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
70
|
|
|
|
|
165
|
|
11138
|
|
|
|
|
|
|
|
11139
|
94
|
|
66
|
|
|
339
|
while (!$_matched && !$commit) |
11140
|
|
|
|
|
|
|
{ |
11141
|
|
|
|
|
|
|
|
11142
|
70
|
50
|
|
|
|
142
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
11143
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11144
|
|
|
|
|
|
|
q{personalname}, |
11145
|
|
|
|
|
|
|
$tracelevel) |
11146
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11147
|
70
|
|
|
|
|
141
|
my $thisprod = $thisrule->{"prods"}[1]; |
11148
|
70
|
|
|
|
|
180
|
$text = $_[1]; |
11149
|
70
|
|
|
|
|
110
|
my $_savetext; |
11150
|
70
|
|
|
|
|
157
|
@item = (q{personalname}); |
11151
|
70
|
|
|
|
|
219
|
%item = (__RULE__ => q{personalname}); |
11152
|
70
|
|
|
|
|
128
|
my $repcount = 0; |
11153
|
|
|
|
|
|
|
|
11154
|
|
|
|
|
|
|
|
11155
|
70
|
50
|
|
|
|
167
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
11156
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11157
|
|
|
|
|
|
|
q{personalname}, |
11158
|
|
|
|
|
|
|
$tracelevel) |
11159
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11160
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
10
|
|
|
1
|
|
|
|
|
480
|
|
|
70
|
|
|
|
|
109
|
|
11161
|
70
|
|
|
|
|
200
|
$expectation->is(q{})->at($text); |
11162
|
70
|
50
|
|
70
|
|
706
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
70
|
|
|
|
|
160
|
|
11163
|
|
|
|
|
|
|
{ |
11164
|
|
|
|
|
|
|
|
11165
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
11166
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11167
|
|
|
|
|
|
|
q{personalname}, |
11168
|
|
|
|
|
|
|
$tracelevel) |
11169
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11170
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
11171
|
0
|
|
|
|
|
0
|
last; |
11172
|
|
|
|
|
|
|
} |
11173
|
70
|
50
|
|
|
|
214
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
11174
|
|
|
|
|
|
|
. $_tok . q{]}, |
11175
|
|
|
|
|
|
|
|
11176
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11177
|
|
|
|
|
|
|
q{personalname}, |
11178
|
|
|
|
|
|
|
$tracelevel) |
11179
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11180
|
70
|
|
|
|
|
144
|
$item{q{STRING}} = $_tok; |
11181
|
70
|
|
|
|
|
132
|
push @item, $_tok; |
11182
|
|
|
|
|
|
|
|
11183
|
|
|
|
|
|
|
} |
11184
|
|
|
|
|
|
|
|
11185
|
70
|
50
|
|
|
|
152
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
11186
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11187
|
|
|
|
|
|
|
q{personalname}, |
11188
|
|
|
|
|
|
|
$tracelevel) |
11189
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11190
|
|
|
|
|
|
|
|
11191
|
|
|
|
|
|
|
|
11192
|
|
|
|
|
|
|
|
11193
|
70
|
|
|
|
|
108
|
$_matched = 1; |
11194
|
70
|
|
|
|
|
120
|
last; |
11195
|
|
|
|
|
|
|
} |
11196
|
|
|
|
|
|
|
|
11197
|
|
|
|
|
|
|
splice |
11198
|
94
|
50
|
|
|
|
204
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
11199
|
|
|
|
|
|
|
|
11200
|
94
|
50
|
33
|
|
|
262
|
unless ( $_matched || defined($score) ) |
11201
|
|
|
|
|
|
|
{ |
11202
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
11203
|
|
|
|
|
|
|
|
11204
|
|
|
|
|
|
|
|
11205
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
11206
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
11207
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11208
|
|
|
|
|
|
|
q{personalname}, |
11209
|
|
|
|
|
|
|
$tracelevel) |
11210
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11211
|
0
|
|
|
|
|
0
|
return undef; |
11212
|
|
|
|
|
|
|
} |
11213
|
94
|
50
|
33
|
|
|
402
|
if (!defined($return) && defined($score)) |
11214
|
|
|
|
|
|
|
{ |
11215
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
11216
|
|
|
|
|
|
|
q{personalname}, |
11217
|
|
|
|
|
|
|
$tracelevel) |
11218
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11219
|
0
|
|
|
|
|
0
|
$return = $score_return; |
11220
|
|
|
|
|
|
|
} |
11221
|
94
|
|
|
|
|
144
|
splice @{$thisparser->{errors}}, $err_at; |
|
94
|
|
|
|
|
174
|
|
11222
|
94
|
50
|
|
|
|
243
|
$return = $item[$#item] unless defined $return; |
11223
|
94
|
50
|
|
|
|
209
|
if (defined $::RD_TRACE) |
11224
|
|
|
|
|
|
|
{ |
11225
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
11226
|
|
|
|
|
|
|
$return . q{])}, "", |
11227
|
|
|
|
|
|
|
q{personalname}, |
11228
|
|
|
|
|
|
|
$tracelevel); |
11229
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
11230
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
11231
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11232
|
|
|
|
|
|
|
, q{personalname}, |
11233
|
|
|
|
|
|
|
$tracelevel) |
11234
|
|
|
|
|
|
|
} |
11235
|
94
|
|
|
|
|
218
|
$_[1] = $text; |
11236
|
94
|
|
|
|
|
625
|
return $return; |
11237
|
|
|
|
|
|
|
} |
11238
|
|
|
|
|
|
|
|
11239
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
11240
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::replyto |
11241
|
|
|
|
|
|
|
{ |
11242
|
24
|
|
|
24
|
|
49
|
my $thisparser = $_[0]; |
11243
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
355
|
|
11244
|
24
|
|
50
|
|
|
77
|
local $tracelevel = ($tracelevel||0)+1; |
11245
|
24
|
|
|
|
|
60
|
$ERRORS = 0; |
11246
|
24
|
|
|
|
|
70
|
my $thisrule = $thisparser->{"rules"}{"replyto"}; |
11247
|
|
|
|
|
|
|
|
11248
|
24
|
50
|
|
|
|
61
|
Parse::RecDescent::_trace(q{Trying rule: [replyto]}, |
11249
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11250
|
|
|
|
|
|
|
q{replyto}, |
11251
|
|
|
|
|
|
|
$tracelevel) |
11252
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11253
|
|
|
|
|
|
|
|
11254
|
24
|
|
|
|
|
45
|
my $def_at = @{$thisparser->{deferred}}; |
|
24
|
|
|
|
|
59
|
|
11255
|
24
|
|
|
|
|
50
|
my $err_at = @{$thisparser->{errors}}; |
|
24
|
|
|
|
|
51
|
|
11256
|
|
|
|
|
|
|
|
11257
|
24
|
|
|
|
|
82
|
my $score; |
11258
|
|
|
|
|
|
|
my $score_return; |
11259
|
24
|
|
|
|
|
0
|
my $_tok; |
11260
|
24
|
|
|
|
|
39
|
my $return = undef; |
11261
|
24
|
|
|
|
|
46
|
my $_matched=0; |
11262
|
24
|
|
|
|
|
45
|
my $commit=0; |
11263
|
24
|
|
|
|
|
56
|
my @item = (); |
11264
|
24
|
|
|
|
|
53
|
my %item = (); |
11265
|
24
|
|
|
|
|
42
|
my $repeating = $_[2]; |
11266
|
24
|
|
|
|
|
44
|
my $_noactions = $_[3]; |
11267
|
24
|
50
|
|
|
|
60
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
24
|
|
|
|
|
39
|
|
|
24
|
|
|
|
|
48
|
|
11268
|
24
|
|
|
|
|
51
|
my $_itempos = $_[5]; |
11269
|
24
|
50
|
|
|
|
67
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
11270
|
24
|
|
|
|
|
76
|
my $text; |
11271
|
|
|
|
|
|
|
my $lastsep; |
11272
|
24
|
|
|
|
|
0
|
my $current_match; |
11273
|
24
|
|
|
|
|
100
|
my $expectation = new Parse::RecDescent::Expectation(q{ADDRESSES}); |
11274
|
24
|
|
|
|
|
197
|
$expectation->at($_[1]); |
11275
|
|
|
|
|
|
|
|
11276
|
24
|
|
|
|
|
108
|
my $thisline; |
11277
|
24
|
|
|
|
|
97
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
11278
|
|
|
|
|
|
|
|
11279
|
|
|
|
|
|
|
|
11280
|
|
|
|
|
|
|
|
11281
|
24
|
|
33
|
|
|
211
|
while (!$_matched && !$commit) |
11282
|
|
|
|
|
|
|
{ |
11283
|
|
|
|
|
|
|
|
11284
|
24
|
50
|
|
|
|
85
|
Parse::RecDescent::_trace(q{Trying production: [ADDRESSES]}, |
11285
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11286
|
|
|
|
|
|
|
q{replyto}, |
11287
|
|
|
|
|
|
|
$tracelevel) |
11288
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11289
|
24
|
|
|
|
|
65
|
my $thisprod = $thisrule->{"prods"}[0]; |
11290
|
24
|
|
|
|
|
57
|
$text = $_[1]; |
11291
|
24
|
|
|
|
|
39
|
my $_savetext; |
11292
|
24
|
|
|
|
|
55
|
@item = (q{replyto}); |
11293
|
24
|
|
|
|
|
54
|
%item = (__RULE__ => q{replyto}); |
11294
|
24
|
|
|
|
|
40
|
my $repcount = 0; |
11295
|
|
|
|
|
|
|
|
11296
|
|
|
|
|
|
|
|
11297
|
24
|
50
|
|
|
|
57
|
Parse::RecDescent::_trace(q{Trying subrule: [ADDRESSES]}, |
11298
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11299
|
|
|
|
|
|
|
q{replyto}, |
11300
|
|
|
|
|
|
|
$tracelevel) |
11301
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11302
|
1
|
|
|
1
|
|
9
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
415
|
|
|
24
|
|
|
|
|
37
|
|
11303
|
24
|
|
|
|
|
54
|
$expectation->is(q{})->at($text); |
11304
|
24
|
50
|
|
24
|
|
235
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::ADDRESSES($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
67
|
|
11305
|
|
|
|
|
|
|
{ |
11306
|
|
|
|
|
|
|
|
11307
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
11308
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11309
|
|
|
|
|
|
|
q{replyto}, |
11310
|
|
|
|
|
|
|
$tracelevel) |
11311
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11312
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
11313
|
0
|
|
|
|
|
0
|
last; |
11314
|
|
|
|
|
|
|
} |
11315
|
24
|
50
|
|
|
|
104
|
Parse::RecDescent::_trace(q{>>Matched subrule: [ADDRESSES]<< (return value: [} |
11316
|
|
|
|
|
|
|
. $_tok . q{]}, |
11317
|
|
|
|
|
|
|
|
11318
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11319
|
|
|
|
|
|
|
q{replyto}, |
11320
|
|
|
|
|
|
|
$tracelevel) |
11321
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11322
|
24
|
|
|
|
|
58
|
$item{q{ADDRESSES}} = $_tok; |
11323
|
24
|
|
|
|
|
53
|
push @item, $_tok; |
11324
|
|
|
|
|
|
|
|
11325
|
|
|
|
|
|
|
} |
11326
|
|
|
|
|
|
|
|
11327
|
24
|
50
|
|
|
|
68
|
Parse::RecDescent::_trace(q{>>Matched production: [ADDRESSES]<<}, |
11328
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11329
|
|
|
|
|
|
|
q{replyto}, |
11330
|
|
|
|
|
|
|
$tracelevel) |
11331
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11332
|
|
|
|
|
|
|
|
11333
|
|
|
|
|
|
|
|
11334
|
|
|
|
|
|
|
|
11335
|
24
|
|
|
|
|
39
|
$_matched = 1; |
11336
|
24
|
|
|
|
|
50
|
last; |
11337
|
|
|
|
|
|
|
} |
11338
|
|
|
|
|
|
|
|
11339
|
|
|
|
|
|
|
splice |
11340
|
24
|
50
|
|
|
|
69
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
11341
|
|
|
|
|
|
|
|
11342
|
24
|
50
|
33
|
|
|
82
|
unless ( $_matched || defined($score) ) |
11343
|
|
|
|
|
|
|
{ |
11344
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
11345
|
|
|
|
|
|
|
|
11346
|
|
|
|
|
|
|
|
11347
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
11348
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
11349
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11350
|
|
|
|
|
|
|
q{replyto}, |
11351
|
|
|
|
|
|
|
$tracelevel) |
11352
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11353
|
0
|
|
|
|
|
0
|
return undef; |
11354
|
|
|
|
|
|
|
} |
11355
|
24
|
50
|
33
|
|
|
117
|
if (!defined($return) && defined($score)) |
11356
|
|
|
|
|
|
|
{ |
11357
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
11358
|
|
|
|
|
|
|
q{replyto}, |
11359
|
|
|
|
|
|
|
$tracelevel) |
11360
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11361
|
0
|
|
|
|
|
0
|
$return = $score_return; |
11362
|
|
|
|
|
|
|
} |
11363
|
24
|
|
|
|
|
66
|
splice @{$thisparser->{errors}}, $err_at; |
|
24
|
|
|
|
|
66
|
|
11364
|
24
|
50
|
|
|
|
72
|
$return = $item[$#item] unless defined $return; |
11365
|
24
|
50
|
|
|
|
73
|
if (defined $::RD_TRACE) |
11366
|
|
|
|
|
|
|
{ |
11367
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
11368
|
|
|
|
|
|
|
$return . q{])}, "", |
11369
|
|
|
|
|
|
|
q{replyto}, |
11370
|
|
|
|
|
|
|
$tracelevel); |
11371
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
11372
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
11373
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11374
|
|
|
|
|
|
|
, q{replyto}, |
11375
|
|
|
|
|
|
|
$tracelevel) |
11376
|
|
|
|
|
|
|
} |
11377
|
24
|
|
|
|
|
62
|
$_[1] = $text; |
11378
|
24
|
|
|
|
|
141
|
return $return; |
11379
|
|
|
|
|
|
|
} |
11380
|
|
|
|
|
|
|
|
11381
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
11382
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::rfc822message |
11383
|
|
|
|
|
|
|
{ |
11384
|
53
|
|
|
53
|
|
104
|
my $thisparser = $_[0]; |
11385
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
369
|
|
11386
|
53
|
|
50
|
|
|
148
|
local $tracelevel = ($tracelevel||0)+1; |
11387
|
53
|
|
|
|
|
109
|
$ERRORS = 0; |
11388
|
53
|
|
|
|
|
119
|
my $thisrule = $thisparser->{"rules"}{"rfc822message"}; |
11389
|
|
|
|
|
|
|
|
11390
|
53
|
50
|
|
|
|
115
|
Parse::RecDescent::_trace(q{Trying rule: [rfc822message]}, |
11391
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11392
|
|
|
|
|
|
|
q{rfc822message}, |
11393
|
|
|
|
|
|
|
$tracelevel) |
11394
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11395
|
|
|
|
|
|
|
|
11396
|
53
|
|
|
|
|
85
|
my $def_at = @{$thisparser->{deferred}}; |
|
53
|
|
|
|
|
94
|
|
11397
|
53
|
|
|
|
|
89
|
my $err_at = @{$thisparser->{errors}}; |
|
53
|
|
|
|
|
96
|
|
11398
|
|
|
|
|
|
|
|
11399
|
53
|
|
|
|
|
135
|
my $score; |
11400
|
|
|
|
|
|
|
my $score_return; |
11401
|
53
|
|
|
|
|
0
|
my $_tok; |
11402
|
53
|
|
|
|
|
84
|
my $return = undef; |
11403
|
53
|
|
|
|
|
83
|
my $_matched=0; |
11404
|
53
|
|
|
|
|
86
|
my $commit=0; |
11405
|
53
|
|
|
|
|
125
|
my @item = (); |
11406
|
53
|
|
|
|
|
84
|
my %item = (); |
11407
|
53
|
|
|
|
|
98
|
my $repeating = $_[2]; |
11408
|
53
|
|
|
|
|
87
|
my $_noactions = $_[3]; |
11409
|
53
|
50
|
|
|
|
131
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
53
|
|
|
|
|
80
|
|
|
53
|
|
|
|
|
107
|
|
11410
|
53
|
|
|
|
|
81
|
my $_itempos = $_[5]; |
11411
|
53
|
50
|
|
|
|
171
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
11412
|
53
|
|
|
|
|
136
|
my $text; |
11413
|
|
|
|
|
|
|
my $lastsep; |
11414
|
53
|
|
|
|
|
0
|
my $current_match; |
11415
|
53
|
|
|
|
|
135
|
my $expectation = new Parse::RecDescent::Expectation(q{MESSAGE}); |
11416
|
53
|
|
|
|
|
334
|
$expectation->at($_[1]); |
11417
|
|
|
|
|
|
|
|
11418
|
53
|
|
|
|
|
226
|
my $thisline; |
11419
|
53
|
|
|
|
|
168
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
11420
|
|
|
|
|
|
|
|
11421
|
|
|
|
|
|
|
|
11422
|
|
|
|
|
|
|
|
11423
|
53
|
|
33
|
|
|
403
|
while (!$_matched && !$commit) |
11424
|
|
|
|
|
|
|
{ |
11425
|
|
|
|
|
|
|
|
11426
|
53
|
50
|
|
|
|
112
|
Parse::RecDescent::_trace(q{Trying production: [MESSAGE RFC822]}, |
11427
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11428
|
|
|
|
|
|
|
q{rfc822message}, |
11429
|
|
|
|
|
|
|
$tracelevel) |
11430
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11431
|
53
|
|
|
|
|
122
|
my $thisprod = $thisrule->{"prods"}[0]; |
11432
|
53
|
|
|
|
|
93
|
$text = $_[1]; |
11433
|
53
|
|
|
|
|
82
|
my $_savetext; |
11434
|
53
|
|
|
|
|
106
|
@item = (q{rfc822message}); |
11435
|
53
|
|
|
|
|
103
|
%item = (__RULE__ => q{rfc822message}); |
11436
|
53
|
|
|
|
|
92
|
my $repcount = 0; |
11437
|
|
|
|
|
|
|
|
11438
|
|
|
|
|
|
|
|
11439
|
53
|
50
|
|
|
|
112
|
Parse::RecDescent::_trace(q{Trying subrule: [MESSAGE]}, |
11440
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11441
|
|
|
|
|
|
|
q{rfc822message}, |
11442
|
|
|
|
|
|
|
$tracelevel) |
11443
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11444
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
176
|
|
|
53
|
|
|
|
|
74
|
|
11445
|
53
|
|
|
|
|
152
|
$expectation->is(q{})->at($text); |
11446
|
53
|
100
|
|
53
|
|
519
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::MESSAGE($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
53
|
|
|
|
|
103
|
|
11447
|
|
|
|
|
|
|
{ |
11448
|
|
|
|
|
|
|
|
11449
|
31
|
50
|
|
|
|
82
|
Parse::RecDescent::_trace(q{<>}, |
11450
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11451
|
|
|
|
|
|
|
q{rfc822message}, |
11452
|
|
|
|
|
|
|
$tracelevel) |
11453
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11454
|
31
|
|
|
|
|
94
|
$expectation->failed(); |
11455
|
31
|
|
|
|
|
107
|
last; |
11456
|
|
|
|
|
|
|
} |
11457
|
22
|
50
|
|
|
|
111
|
Parse::RecDescent::_trace(q{>>Matched subrule: [MESSAGE]<< (return value: [} |
11458
|
|
|
|
|
|
|
. $_tok . q{]}, |
11459
|
|
|
|
|
|
|
|
11460
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11461
|
|
|
|
|
|
|
q{rfc822message}, |
11462
|
|
|
|
|
|
|
$tracelevel) |
11463
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11464
|
22
|
|
|
|
|
65
|
$item{q{MESSAGE}} = $_tok; |
11465
|
22
|
|
|
|
|
47
|
push @item, $_tok; |
11466
|
|
|
|
|
|
|
|
11467
|
|
|
|
|
|
|
} |
11468
|
|
|
|
|
|
|
|
11469
|
22
|
50
|
|
|
|
57
|
Parse::RecDescent::_trace(q{Trying subrule: [RFC822]}, |
11470
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11471
|
|
|
|
|
|
|
q{rfc822message}, |
11472
|
|
|
|
|
|
|
$tracelevel) |
11473
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11474
|
1
|
|
|
1
|
|
7
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
588
|
|
|
22
|
|
|
|
|
57
|
|
11475
|
22
|
|
|
|
|
76
|
$expectation->is(q{RFC822})->at($text); |
11476
|
22
|
100
|
|
22
|
|
256
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::RFC822($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
22
|
|
|
|
|
52
|
|
11477
|
|
|
|
|
|
|
{ |
11478
|
|
|
|
|
|
|
|
11479
|
1
|
50
|
|
|
|
4
|
Parse::RecDescent::_trace(q{<>}, |
11480
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11481
|
|
|
|
|
|
|
q{rfc822message}, |
11482
|
|
|
|
|
|
|
$tracelevel) |
11483
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11484
|
1
|
|
|
|
|
5
|
$expectation->failed(); |
11485
|
1
|
|
|
|
|
9
|
last; |
11486
|
|
|
|
|
|
|
} |
11487
|
21
|
50
|
|
|
|
87
|
Parse::RecDescent::_trace(q{>>Matched subrule: [RFC822]<< (return value: [} |
11488
|
|
|
|
|
|
|
. $_tok . q{]}, |
11489
|
|
|
|
|
|
|
|
11490
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11491
|
|
|
|
|
|
|
q{rfc822message}, |
11492
|
|
|
|
|
|
|
$tracelevel) |
11493
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11494
|
21
|
|
|
|
|
64
|
$item{q{RFC822}} = $_tok; |
11495
|
21
|
|
|
|
|
41
|
push @item, $_tok; |
11496
|
|
|
|
|
|
|
|
11497
|
|
|
|
|
|
|
} |
11498
|
|
|
|
|
|
|
|
11499
|
21
|
50
|
|
|
|
56
|
Parse::RecDescent::_trace(q{Trying action}, |
11500
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11501
|
|
|
|
|
|
|
q{rfc822message}, |
11502
|
|
|
|
|
|
|
$tracelevel) |
11503
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11504
|
|
|
|
|
|
|
|
11505
|
|
|
|
|
|
|
|
11506
|
21
|
50
|
|
|
|
44
|
$_tok = ($_noactions) ? 0 : do { $return = "MESSAGE RFC822" }; |
|
21
|
|
|
|
|
45
|
|
11507
|
21
|
50
|
|
|
|
45
|
unless (defined $_tok) |
11508
|
|
|
|
|
|
|
{ |
11509
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
11510
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11511
|
0
|
|
|
|
|
0
|
last; |
11512
|
|
|
|
|
|
|
} |
11513
|
21
|
50
|
|
|
|
62
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
11514
|
|
|
|
|
|
|
. $_tok . q{])}, |
11515
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
11516
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11517
|
21
|
|
|
|
|
41
|
push @item, $_tok; |
11518
|
21
|
|
|
|
|
42
|
$item{__ACTION1__}=$_tok; |
11519
|
|
|
|
|
|
|
|
11520
|
|
|
|
|
|
|
|
11521
|
21
|
50
|
|
|
|
68
|
Parse::RecDescent::_trace(q{>>Matched production: [MESSAGE RFC822]<<}, |
11522
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11523
|
|
|
|
|
|
|
q{rfc822message}, |
11524
|
|
|
|
|
|
|
$tracelevel) |
11525
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11526
|
|
|
|
|
|
|
|
11527
|
|
|
|
|
|
|
|
11528
|
|
|
|
|
|
|
|
11529
|
21
|
|
|
|
|
37
|
$_matched = 1; |
11530
|
21
|
|
|
|
|
39
|
last; |
11531
|
|
|
|
|
|
|
} |
11532
|
|
|
|
|
|
|
|
11533
|
|
|
|
|
|
|
splice |
11534
|
53
|
100
|
|
|
|
160
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
32
|
|
|
|
|
74
|
|
11535
|
|
|
|
|
|
|
|
11536
|
53
|
100
|
66
|
|
|
188
|
unless ( $_matched || defined($score) ) |
11537
|
|
|
|
|
|
|
{ |
11538
|
32
|
|
|
|
|
59
|
splice @{$thisparser->{deferred}}, $def_at; |
|
32
|
|
|
|
|
67
|
|
11539
|
|
|
|
|
|
|
|
11540
|
|
|
|
|
|
|
|
11541
|
32
|
|
|
|
|
76
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
11542
|
32
|
50
|
|
|
|
71
|
Parse::RecDescent::_trace(q{<>}, |
11543
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11544
|
|
|
|
|
|
|
q{rfc822message}, |
11545
|
|
|
|
|
|
|
$tracelevel) |
11546
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11547
|
32
|
|
|
|
|
156
|
return undef; |
11548
|
|
|
|
|
|
|
} |
11549
|
21
|
50
|
33
|
|
|
67
|
if (!defined($return) && defined($score)) |
11550
|
|
|
|
|
|
|
{ |
11551
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
11552
|
|
|
|
|
|
|
q{rfc822message}, |
11553
|
|
|
|
|
|
|
$tracelevel) |
11554
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11555
|
0
|
|
|
|
|
0
|
$return = $score_return; |
11556
|
|
|
|
|
|
|
} |
11557
|
21
|
|
|
|
|
36
|
splice @{$thisparser->{errors}}, $err_at; |
|
21
|
|
|
|
|
49
|
|
11558
|
21
|
50
|
|
|
|
58
|
$return = $item[$#item] unless defined $return; |
11559
|
21
|
50
|
|
|
|
58
|
if (defined $::RD_TRACE) |
11560
|
|
|
|
|
|
|
{ |
11561
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
11562
|
|
|
|
|
|
|
$return . q{])}, "", |
11563
|
|
|
|
|
|
|
q{rfc822message}, |
11564
|
|
|
|
|
|
|
$tracelevel); |
11565
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
11566
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
11567
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11568
|
|
|
|
|
|
|
, q{rfc822message}, |
11569
|
|
|
|
|
|
|
$tracelevel) |
11570
|
|
|
|
|
|
|
} |
11571
|
21
|
|
|
|
|
40
|
$_[1] = $text; |
11572
|
21
|
|
|
|
|
125
|
return $return; |
11573
|
|
|
|
|
|
|
} |
11574
|
|
|
|
|
|
|
|
11575
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
11576
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::sender |
11577
|
|
|
|
|
|
|
{ |
11578
|
24
|
|
|
24
|
|
51
|
my $thisparser = $_[0]; |
11579
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
372
|
|
11580
|
24
|
|
50
|
|
|
88
|
local $tracelevel = ($tracelevel||0)+1; |
11581
|
24
|
|
|
|
|
54
|
$ERRORS = 0; |
11582
|
24
|
|
|
|
|
72
|
my $thisrule = $thisparser->{"rules"}{"sender"}; |
11583
|
|
|
|
|
|
|
|
11584
|
24
|
50
|
|
|
|
75
|
Parse::RecDescent::_trace(q{Trying rule: [sender]}, |
11585
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11586
|
|
|
|
|
|
|
q{sender}, |
11587
|
|
|
|
|
|
|
$tracelevel) |
11588
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11589
|
|
|
|
|
|
|
|
11590
|
24
|
|
|
|
|
51
|
my $def_at = @{$thisparser->{deferred}}; |
|
24
|
|
|
|
|
60
|
|
11591
|
24
|
|
|
|
|
44
|
my $err_at = @{$thisparser->{errors}}; |
|
24
|
|
|
|
|
52
|
|
11592
|
|
|
|
|
|
|
|
11593
|
24
|
|
|
|
|
86
|
my $score; |
11594
|
|
|
|
|
|
|
my $score_return; |
11595
|
24
|
|
|
|
|
0
|
my $_tok; |
11596
|
24
|
|
|
|
|
53
|
my $return = undef; |
11597
|
24
|
|
|
|
|
96
|
my $_matched=0; |
11598
|
24
|
|
|
|
|
53
|
my $commit=0; |
11599
|
24
|
|
|
|
|
55
|
my @item = (); |
11600
|
24
|
|
|
|
|
44
|
my %item = (); |
11601
|
24
|
|
|
|
|
45
|
my $repeating = $_[2]; |
11602
|
24
|
|
|
|
|
42
|
my $_noactions = $_[3]; |
11603
|
24
|
50
|
|
|
|
59
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
24
|
|
|
|
|
38
|
|
|
24
|
|
|
|
|
48
|
|
11604
|
24
|
|
|
|
|
43
|
my $_itempos = $_[5]; |
11605
|
24
|
50
|
|
|
|
72
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
11606
|
24
|
|
|
|
|
65
|
my $text; |
11607
|
|
|
|
|
|
|
my $lastsep; |
11608
|
24
|
|
|
|
|
0
|
my $current_match; |
11609
|
24
|
|
|
|
|
74
|
my $expectation = new Parse::RecDescent::Expectation(q{ADDRESSES}); |
11610
|
24
|
|
|
|
|
191
|
$expectation->at($_[1]); |
11611
|
|
|
|
|
|
|
|
11612
|
24
|
|
|
|
|
107
|
my $thisline; |
11613
|
24
|
|
|
|
|
99
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
11614
|
|
|
|
|
|
|
|
11615
|
|
|
|
|
|
|
|
11616
|
|
|
|
|
|
|
|
11617
|
24
|
|
33
|
|
|
226
|
while (!$_matched && !$commit) |
11618
|
|
|
|
|
|
|
{ |
11619
|
|
|
|
|
|
|
|
11620
|
24
|
50
|
|
|
|
64
|
Parse::RecDescent::_trace(q{Trying production: [ADDRESSES]}, |
11621
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11622
|
|
|
|
|
|
|
q{sender}, |
11623
|
|
|
|
|
|
|
$tracelevel) |
11624
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11625
|
24
|
|
|
|
|
72
|
my $thisprod = $thisrule->{"prods"}[0]; |
11626
|
24
|
|
|
|
|
46
|
$text = $_[1]; |
11627
|
24
|
|
|
|
|
39
|
my $_savetext; |
11628
|
24
|
|
|
|
|
49
|
@item = (q{sender}); |
11629
|
24
|
|
|
|
|
52
|
%item = (__RULE__ => q{sender}); |
11630
|
24
|
|
|
|
|
36
|
my $repcount = 0; |
11631
|
|
|
|
|
|
|
|
11632
|
|
|
|
|
|
|
|
11633
|
24
|
50
|
|
|
|
55
|
Parse::RecDescent::_trace(q{Trying subrule: [ADDRESSES]}, |
11634
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11635
|
|
|
|
|
|
|
q{sender}, |
11636
|
|
|
|
|
|
|
$tracelevel) |
11637
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11638
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
438
|
|
|
24
|
|
|
|
|
39
|
|
11639
|
24
|
|
|
|
|
63
|
$expectation->is(q{})->at($text); |
11640
|
24
|
50
|
|
24
|
|
246
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::ADDRESSES($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
53
|
|
11641
|
|
|
|
|
|
|
{ |
11642
|
|
|
|
|
|
|
|
11643
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
11644
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11645
|
|
|
|
|
|
|
q{sender}, |
11646
|
|
|
|
|
|
|
$tracelevel) |
11647
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11648
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
11649
|
0
|
|
|
|
|
0
|
last; |
11650
|
|
|
|
|
|
|
} |
11651
|
24
|
50
|
|
|
|
119
|
Parse::RecDescent::_trace(q{>>Matched subrule: [ADDRESSES]<< (return value: [} |
11652
|
|
|
|
|
|
|
. $_tok . q{]}, |
11653
|
|
|
|
|
|
|
|
11654
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11655
|
|
|
|
|
|
|
q{sender}, |
11656
|
|
|
|
|
|
|
$tracelevel) |
11657
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11658
|
24
|
|
|
|
|
62
|
$item{q{ADDRESSES}} = $_tok; |
11659
|
24
|
|
|
|
|
59
|
push @item, $_tok; |
11660
|
|
|
|
|
|
|
|
11661
|
|
|
|
|
|
|
} |
11662
|
|
|
|
|
|
|
|
11663
|
24
|
50
|
|
|
|
57
|
Parse::RecDescent::_trace(q{>>Matched production: [ADDRESSES]<<}, |
11664
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11665
|
|
|
|
|
|
|
q{sender}, |
11666
|
|
|
|
|
|
|
$tracelevel) |
11667
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11668
|
|
|
|
|
|
|
|
11669
|
|
|
|
|
|
|
|
11670
|
|
|
|
|
|
|
|
11671
|
24
|
|
|
|
|
51
|
$_matched = 1; |
11672
|
24
|
|
|
|
|
57
|
last; |
11673
|
|
|
|
|
|
|
} |
11674
|
|
|
|
|
|
|
|
11675
|
|
|
|
|
|
|
splice |
11676
|
24
|
50
|
|
|
|
102
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
11677
|
|
|
|
|
|
|
|
11678
|
24
|
50
|
33
|
|
|
83
|
unless ( $_matched || defined($score) ) |
11679
|
|
|
|
|
|
|
{ |
11680
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
11681
|
|
|
|
|
|
|
|
11682
|
|
|
|
|
|
|
|
11683
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
11684
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
11685
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11686
|
|
|
|
|
|
|
q{sender}, |
11687
|
|
|
|
|
|
|
$tracelevel) |
11688
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11689
|
0
|
|
|
|
|
0
|
return undef; |
11690
|
|
|
|
|
|
|
} |
11691
|
24
|
50
|
33
|
|
|
122
|
if (!defined($return) && defined($score)) |
11692
|
|
|
|
|
|
|
{ |
11693
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
11694
|
|
|
|
|
|
|
q{sender}, |
11695
|
|
|
|
|
|
|
$tracelevel) |
11696
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11697
|
0
|
|
|
|
|
0
|
$return = $score_return; |
11698
|
|
|
|
|
|
|
} |
11699
|
24
|
|
|
|
|
60
|
splice @{$thisparser->{errors}}, $err_at; |
|
24
|
|
|
|
|
63
|
|
11700
|
24
|
50
|
|
|
|
97
|
$return = $item[$#item] unless defined $return; |
11701
|
24
|
50
|
|
|
|
70
|
if (defined $::RD_TRACE) |
11702
|
|
|
|
|
|
|
{ |
11703
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
11704
|
|
|
|
|
|
|
$return . q{])}, "", |
11705
|
|
|
|
|
|
|
q{sender}, |
11706
|
|
|
|
|
|
|
$tracelevel); |
11707
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
11708
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
11709
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11710
|
|
|
|
|
|
|
, q{sender}, |
11711
|
|
|
|
|
|
|
$tracelevel) |
11712
|
|
|
|
|
|
|
} |
11713
|
24
|
|
|
|
|
61
|
$_[1] = $text; |
11714
|
24
|
|
|
|
|
142
|
return $return; |
11715
|
|
|
|
|
|
|
} |
11716
|
|
|
|
|
|
|
|
11717
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
11718
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::sourceroute |
11719
|
|
|
|
|
|
|
{ |
11720
|
94
|
|
|
94
|
|
203
|
my $thisparser = $_[0]; |
11721
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
378
|
|
11722
|
94
|
|
50
|
|
|
246
|
local $tracelevel = ($tracelevel||0)+1; |
11723
|
94
|
|
|
|
|
157
|
$ERRORS = 0; |
11724
|
94
|
|
|
|
|
209
|
my $thisrule = $thisparser->{"rules"}{"sourceroute"}; |
11725
|
|
|
|
|
|
|
|
11726
|
94
|
50
|
|
|
|
199
|
Parse::RecDescent::_trace(q{Trying rule: [sourceroute]}, |
11727
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11728
|
|
|
|
|
|
|
q{sourceroute}, |
11729
|
|
|
|
|
|
|
$tracelevel) |
11730
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11731
|
|
|
|
|
|
|
|
11732
|
94
|
|
|
|
|
138
|
my $def_at = @{$thisparser->{deferred}}; |
|
94
|
|
|
|
|
180
|
|
11733
|
94
|
|
|
|
|
167
|
my $err_at = @{$thisparser->{errors}}; |
|
94
|
|
|
|
|
178
|
|
11734
|
|
|
|
|
|
|
|
11735
|
94
|
|
|
|
|
265
|
my $score; |
11736
|
|
|
|
|
|
|
my $score_return; |
11737
|
94
|
|
|
|
|
0
|
my $_tok; |
11738
|
94
|
|
|
|
|
164
|
my $return = undef; |
11739
|
94
|
|
|
|
|
164
|
my $_matched=0; |
11740
|
94
|
|
|
|
|
144
|
my $commit=0; |
11741
|
94
|
|
|
|
|
182
|
my @item = (); |
11742
|
94
|
|
|
|
|
149
|
my %item = (); |
11743
|
94
|
|
|
|
|
184
|
my $repeating = $_[2]; |
11744
|
94
|
|
|
|
|
154
|
my $_noactions = $_[3]; |
11745
|
94
|
50
|
|
|
|
217
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
94
|
|
|
|
|
140
|
|
|
94
|
|
|
|
|
163
|
|
11746
|
94
|
|
|
|
|
184
|
my $_itempos = $_[5]; |
11747
|
94
|
50
|
|
|
|
239
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
11748
|
94
|
|
|
|
|
223
|
my $text; |
11749
|
|
|
|
|
|
|
my $lastsep; |
11750
|
94
|
|
|
|
|
0
|
my $current_match; |
11751
|
94
|
|
|
|
|
245
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or STRING}); |
11752
|
94
|
|
|
|
|
651
|
$expectation->at($_[1]); |
11753
|
|
|
|
|
|
|
|
11754
|
94
|
|
|
|
|
425
|
my $thisline; |
11755
|
94
|
|
|
|
|
350
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
11756
|
|
|
|
|
|
|
|
11757
|
|
|
|
|
|
|
|
11758
|
|
|
|
|
|
|
|
11759
|
94
|
|
33
|
|
|
818
|
while (!$_matched && !$commit) |
11760
|
|
|
|
|
|
|
{ |
11761
|
|
|
|
|
|
|
|
11762
|
94
|
50
|
|
|
|
243
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
11763
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11764
|
|
|
|
|
|
|
q{sourceroute}, |
11765
|
|
|
|
|
|
|
$tracelevel) |
11766
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11767
|
94
|
|
|
|
|
219
|
my $thisprod = $thisrule->{"prods"}[0]; |
11768
|
94
|
|
|
|
|
168
|
$text = $_[1]; |
11769
|
94
|
|
|
|
|
139
|
my $_savetext; |
11770
|
94
|
|
|
|
|
182
|
@item = (q{sourceroute}); |
11771
|
94
|
|
|
|
|
188
|
%item = (__RULE__ => q{sourceroute}); |
11772
|
94
|
|
|
|
|
134
|
my $repcount = 0; |
11773
|
|
|
|
|
|
|
|
11774
|
|
|
|
|
|
|
|
11775
|
94
|
50
|
|
|
|
192
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
11776
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11777
|
|
|
|
|
|
|
q{sourceroute}, |
11778
|
|
|
|
|
|
|
$tracelevel) |
11779
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11780
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
290
|
|
|
94
|
|
|
|
|
171
|
|
11781
|
94
|
|
|
|
|
244
|
$expectation->is(q{})->at($text); |
11782
|
94
|
50
|
|
94
|
|
883
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
94
|
|
|
|
|
205
|
|
11783
|
|
|
|
|
|
|
{ |
11784
|
|
|
|
|
|
|
|
11785
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
11786
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11787
|
|
|
|
|
|
|
q{sourceroute}, |
11788
|
|
|
|
|
|
|
$tracelevel) |
11789
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11790
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
11791
|
0
|
|
|
|
|
0
|
last; |
11792
|
|
|
|
|
|
|
} |
11793
|
94
|
50
|
|
|
|
339
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
11794
|
|
|
|
|
|
|
. $_tok . q{]}, |
11795
|
|
|
|
|
|
|
|
11796
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11797
|
|
|
|
|
|
|
q{sourceroute}, |
11798
|
|
|
|
|
|
|
$tracelevel) |
11799
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11800
|
94
|
|
|
|
|
251
|
$item{q{NIL}} = $_tok; |
11801
|
94
|
|
|
|
|
198
|
push @item, $_tok; |
11802
|
|
|
|
|
|
|
|
11803
|
|
|
|
|
|
|
} |
11804
|
|
|
|
|
|
|
|
11805
|
94
|
50
|
|
|
|
190
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
11806
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11807
|
|
|
|
|
|
|
q{sourceroute}, |
11808
|
|
|
|
|
|
|
$tracelevel) |
11809
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11810
|
|
|
|
|
|
|
|
11811
|
|
|
|
|
|
|
|
11812
|
|
|
|
|
|
|
|
11813
|
94
|
|
|
|
|
147
|
$_matched = 1; |
11814
|
94
|
|
|
|
|
170
|
last; |
11815
|
|
|
|
|
|
|
} |
11816
|
|
|
|
|
|
|
|
11817
|
|
|
|
|
|
|
splice |
11818
|
94
|
50
|
|
|
|
273
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
11819
|
|
|
|
|
|
|
|
11820
|
94
|
|
33
|
|
|
234
|
while (!$_matched && !$commit) |
11821
|
|
|
|
|
|
|
{ |
11822
|
|
|
|
|
|
|
|
11823
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
11824
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11825
|
|
|
|
|
|
|
q{sourceroute}, |
11826
|
|
|
|
|
|
|
$tracelevel) |
11827
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11828
|
0
|
|
|
|
|
0
|
my $thisprod = $thisrule->{"prods"}[1]; |
11829
|
0
|
|
|
|
|
0
|
$text = $_[1]; |
11830
|
0
|
|
|
|
|
0
|
my $_savetext; |
11831
|
0
|
|
|
|
|
0
|
@item = (q{sourceroute}); |
11832
|
0
|
|
|
|
|
0
|
%item = (__RULE__ => q{sourceroute}); |
11833
|
0
|
|
|
|
|
0
|
my $repcount = 0; |
11834
|
|
|
|
|
|
|
|
11835
|
|
|
|
|
|
|
|
11836
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
11837
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11838
|
|
|
|
|
|
|
q{sourceroute}, |
11839
|
|
|
|
|
|
|
$tracelevel) |
11840
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11841
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
456
|
|
|
0
|
|
|
|
|
0
|
|
11842
|
0
|
|
|
|
|
0
|
$expectation->is(q{})->at($text); |
11843
|
0
|
0
|
|
0
|
|
0
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
0
|
|
|
|
|
0
|
|
11844
|
|
|
|
|
|
|
{ |
11845
|
|
|
|
|
|
|
|
11846
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
11847
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11848
|
|
|
|
|
|
|
q{sourceroute}, |
11849
|
|
|
|
|
|
|
$tracelevel) |
11850
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11851
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
11852
|
0
|
|
|
|
|
0
|
last; |
11853
|
|
|
|
|
|
|
} |
11854
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
11855
|
|
|
|
|
|
|
. $_tok . q{]}, |
11856
|
|
|
|
|
|
|
|
11857
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11858
|
|
|
|
|
|
|
q{sourceroute}, |
11859
|
|
|
|
|
|
|
$tracelevel) |
11860
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11861
|
0
|
|
|
|
|
0
|
$item{q{STRING}} = $_tok; |
11862
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
11863
|
|
|
|
|
|
|
|
11864
|
|
|
|
|
|
|
} |
11865
|
|
|
|
|
|
|
|
11866
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
11867
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11868
|
|
|
|
|
|
|
q{sourceroute}, |
11869
|
|
|
|
|
|
|
$tracelevel) |
11870
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11871
|
|
|
|
|
|
|
|
11872
|
|
|
|
|
|
|
|
11873
|
|
|
|
|
|
|
|
11874
|
0
|
|
|
|
|
0
|
$_matched = 1; |
11875
|
0
|
|
|
|
|
0
|
last; |
11876
|
|
|
|
|
|
|
} |
11877
|
|
|
|
|
|
|
|
11878
|
|
|
|
|
|
|
splice |
11879
|
94
|
50
|
|
|
|
208
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
11880
|
|
|
|
|
|
|
|
11881
|
94
|
50
|
33
|
|
|
275
|
unless ( $_matched || defined($score) ) |
11882
|
|
|
|
|
|
|
{ |
11883
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
11884
|
|
|
|
|
|
|
|
11885
|
|
|
|
|
|
|
|
11886
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
11887
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
11888
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11889
|
|
|
|
|
|
|
q{sourceroute}, |
11890
|
|
|
|
|
|
|
$tracelevel) |
11891
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11892
|
0
|
|
|
|
|
0
|
return undef; |
11893
|
|
|
|
|
|
|
} |
11894
|
94
|
50
|
33
|
|
|
343
|
if (!defined($return) && defined($score)) |
11895
|
|
|
|
|
|
|
{ |
11896
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
11897
|
|
|
|
|
|
|
q{sourceroute}, |
11898
|
|
|
|
|
|
|
$tracelevel) |
11899
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11900
|
0
|
|
|
|
|
0
|
$return = $score_return; |
11901
|
|
|
|
|
|
|
} |
11902
|
94
|
|
|
|
|
168
|
splice @{$thisparser->{errors}}, $err_at; |
|
94
|
|
|
|
|
183
|
|
11903
|
94
|
50
|
|
|
|
255
|
$return = $item[$#item] unless defined $return; |
11904
|
94
|
50
|
|
|
|
207
|
if (defined $::RD_TRACE) |
11905
|
|
|
|
|
|
|
{ |
11906
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
11907
|
|
|
|
|
|
|
$return . q{])}, "", |
11908
|
|
|
|
|
|
|
q{sourceroute}, |
11909
|
|
|
|
|
|
|
$tracelevel); |
11910
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
11911
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
11912
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
11913
|
|
|
|
|
|
|
, q{sourceroute}, |
11914
|
|
|
|
|
|
|
$tracelevel) |
11915
|
|
|
|
|
|
|
} |
11916
|
94
|
|
|
|
|
206
|
$_[1] = $text; |
11917
|
94
|
|
|
|
|
679
|
return $return; |
11918
|
|
|
|
|
|
|
} |
11919
|
|
|
|
|
|
|
|
11920
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
11921
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::start |
11922
|
|
|
|
|
|
|
{ |
11923
|
10
|
|
|
10
|
|
859
|
my $thisparser = $_[0]; |
11924
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
1223
|
|
11925
|
10
|
|
50
|
|
|
58
|
local $tracelevel = ($tracelevel||0)+1; |
11926
|
10
|
|
|
|
|
25
|
$ERRORS = 0; |
11927
|
10
|
|
|
|
|
40
|
my $thisrule = $thisparser->{"rules"}{"start"}; |
11928
|
|
|
|
|
|
|
|
11929
|
10
|
50
|
|
|
|
38
|
Parse::RecDescent::_trace(q{Trying rule: [start]}, |
11930
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11931
|
|
|
|
|
|
|
q{start}, |
11932
|
|
|
|
|
|
|
$tracelevel) |
11933
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11934
|
|
|
|
|
|
|
|
11935
|
10
|
|
|
|
|
19
|
my $def_at = @{$thisparser->{deferred}}; |
|
10
|
|
|
|
|
25
|
|
11936
|
10
|
|
|
|
|
19
|
my $err_at = @{$thisparser->{errors}}; |
|
10
|
|
|
|
|
24
|
|
11937
|
|
|
|
|
|
|
|
11938
|
10
|
|
|
|
|
32
|
my $score; |
11939
|
|
|
|
|
|
|
my $score_return; |
11940
|
10
|
|
|
|
|
0
|
my $_tok; |
11941
|
10
|
|
|
|
|
16
|
my $return = undef; |
11942
|
10
|
|
|
|
|
18
|
my $_matched=0; |
11943
|
10
|
|
|
|
|
23
|
my $commit=0; |
11944
|
10
|
|
|
|
|
19
|
my @item = (); |
11945
|
10
|
|
|
|
|
22
|
my %item = (); |
11946
|
10
|
|
|
|
|
16
|
my $repeating = $_[2]; |
11947
|
10
|
|
|
|
|
17
|
my $_noactions = $_[3]; |
11948
|
10
|
50
|
|
|
|
32
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
10
|
|
|
|
|
15
|
|
|
10
|
|
|
|
|
30
|
|
11949
|
10
|
|
|
|
|
46
|
my $_itempos = $_[5]; |
11950
|
10
|
50
|
|
|
|
35
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
11951
|
10
|
|
|
|
|
28
|
my $text; |
11952
|
|
|
|
|
|
|
my $lastsep; |
11953
|
10
|
|
|
|
|
0
|
my $current_match; |
11954
|
10
|
|
|
|
|
34
|
my $expectation = new Parse::RecDescent::Expectation(q{/.*?\\(.*?BODYSTRUCTURE \\(/i}); |
11955
|
10
|
|
|
|
|
85
|
$expectation->at($_[1]); |
11956
|
|
|
|
|
|
|
|
11957
|
10
|
|
|
|
|
47
|
my $thisline; |
11958
|
10
|
|
|
|
|
62
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
11959
|
|
|
|
|
|
|
|
11960
|
|
|
|
|
|
|
|
11961
|
|
|
|
|
|
|
|
11962
|
10
|
|
33
|
|
|
112
|
while (!$_matched && !$commit) |
11963
|
|
|
|
|
|
|
{ |
11964
|
|
|
|
|
|
|
|
11965
|
10
|
50
|
|
|
|
26
|
Parse::RecDescent::_trace(q{Trying production: [/.*?\\(.*?BODYSTRUCTURE \\(/i part /\\).*\\)\\r?\\n?/]}, |
11966
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
11967
|
|
|
|
|
|
|
q{start}, |
11968
|
|
|
|
|
|
|
$tracelevel) |
11969
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11970
|
10
|
|
|
|
|
33
|
my $thisprod = $thisrule->{"prods"}[0]; |
11971
|
10
|
|
|
|
|
22
|
$text = $_[1]; |
11972
|
10
|
|
|
|
|
18
|
my $_savetext; |
11973
|
10
|
|
|
|
|
26
|
@item = (q{start}); |
11974
|
10
|
|
|
|
|
25
|
%item = (__RULE__ => q{start}); |
11975
|
10
|
|
|
|
|
17
|
my $repcount = 0; |
11976
|
|
|
|
|
|
|
|
11977
|
|
|
|
|
|
|
|
11978
|
10
|
50
|
|
|
|
33
|
Parse::RecDescent::_trace(q{Trying terminal: [/.*?\\(.*?BODYSTRUCTURE \\(/i]}, Parse::RecDescent::_tracefirst($text), |
11979
|
|
|
|
|
|
|
q{start}, |
11980
|
|
|
|
|
|
|
$tracelevel) |
11981
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11982
|
10
|
|
|
|
|
27
|
undef $lastsep; |
11983
|
10
|
|
|
|
|
28
|
$expectation->is(q{})->at($text); |
11984
|
|
|
|
|
|
|
|
11985
|
|
|
|
|
|
|
|
11986
|
10
|
50
|
33
|
|
|
146
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:.*?\(.*?BODYSTRUCTURE \()/i) |
|
10
|
50
|
|
|
|
158
|
|
11987
|
|
|
|
|
|
|
{ |
11988
|
0
|
0
|
|
|
|
0
|
$text = $lastsep . $text if defined $lastsep; |
11989
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
11990
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
11991
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
11992
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
11993
|
|
|
|
|
|
|
|
11994
|
0
|
|
|
|
|
0
|
last; |
11995
|
|
|
|
|
|
|
} |
11996
|
10
|
|
|
|
|
68
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
11997
|
10
|
|
|
|
|
78
|
substr($text,0,length($current_match),q{}); |
11998
|
10
|
50
|
|
|
|
29
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
11999
|
|
|
|
|
|
|
. $current_match . q{])}, |
12000
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
12001
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12002
|
10
|
|
|
|
|
46
|
push @item, $item{__PATTERN1__}=$current_match; |
12003
|
|
|
|
|
|
|
|
12004
|
|
|
|
|
|
|
|
12005
|
10
|
50
|
|
|
|
36
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [part]}, |
12006
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12007
|
|
|
|
|
|
|
q{start}, |
12008
|
|
|
|
|
|
|
$tracelevel) |
12009
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12010
|
10
|
|
|
|
|
30
|
$expectation->is(q{part})->at($text); |
12011
|
|
|
|
|
|
|
|
12012
|
10
|
50
|
|
10
|
|
147
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::part, 1, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
10
|
|
|
|
|
21
|
|
12013
|
|
|
|
|
|
|
{ |
12014
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
12015
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12016
|
|
|
|
|
|
|
q{start}, |
12017
|
|
|
|
|
|
|
$tracelevel) |
12018
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12019
|
0
|
|
|
|
|
0
|
last; |
12020
|
|
|
|
|
|
|
} |
12021
|
10
|
50
|
|
|
|
193
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [part]<< (} |
12022
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
12023
|
|
|
|
|
|
|
|
12024
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12025
|
|
|
|
|
|
|
q{start}, |
12026
|
|
|
|
|
|
|
$tracelevel) |
12027
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12028
|
10
|
|
|
|
|
31
|
$item{q{part(1)}} = $_tok; |
12029
|
10
|
|
|
|
|
20
|
push @item, $_tok; |
12030
|
|
|
|
|
|
|
|
12031
|
|
|
|
|
|
|
|
12032
|
|
|
|
|
|
|
|
12033
|
10
|
50
|
|
|
|
28
|
Parse::RecDescent::_trace(q{Trying terminal: [/\\).*\\)\\r?\\n?/]}, Parse::RecDescent::_tracefirst($text), |
12034
|
|
|
|
|
|
|
q{start}, |
12035
|
|
|
|
|
|
|
$tracelevel) |
12036
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12037
|
10
|
|
|
|
|
20
|
undef $lastsep; |
12038
|
10
|
|
|
|
|
28
|
$expectation->is(q{/\\).*\\)\\r?\\n?/})->at($text); |
12039
|
|
|
|
|
|
|
|
12040
|
|
|
|
|
|
|
|
12041
|
10
|
50
|
33
|
|
|
162
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and $text =~ m/\A(?:\).*\)\r?\n?)/) |
|
10
|
50
|
|
|
|
132
|
|
12042
|
|
|
|
|
|
|
{ |
12043
|
0
|
0
|
|
|
|
0
|
$text = $lastsep . $text if defined $lastsep; |
12044
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
12045
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
12046
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
12047
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12048
|
|
|
|
|
|
|
|
12049
|
0
|
|
|
|
|
0
|
last; |
12050
|
|
|
|
|
|
|
} |
12051
|
10
|
|
|
|
|
64
|
$current_match = substr($text, $-[0], $+[0] - $-[0]); |
12052
|
10
|
|
|
|
|
37
|
substr($text,0,length($current_match),q{}); |
12053
|
10
|
50
|
|
|
|
32
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
12054
|
|
|
|
|
|
|
. $current_match . q{])}, |
12055
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
12056
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12057
|
10
|
|
|
|
|
42
|
push @item, $item{__PATTERN2__}=$current_match; |
12058
|
|
|
|
|
|
|
|
12059
|
|
|
|
|
|
|
|
12060
|
10
|
50
|
|
|
|
31
|
Parse::RecDescent::_trace(q{Trying action}, |
12061
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12062
|
|
|
|
|
|
|
q{start}, |
12063
|
|
|
|
|
|
|
$tracelevel) |
12064
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12065
|
|
|
|
|
|
|
|
12066
|
|
|
|
|
|
|
|
12067
|
10
|
50
|
|
|
|
28
|
$_tok = ($_noactions) ? 0 : do { $return = $item{'part(1)'}[0] }; |
|
10
|
|
|
|
|
27
|
|
12068
|
10
|
50
|
|
|
|
27
|
unless (defined $_tok) |
12069
|
|
|
|
|
|
|
{ |
12070
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
12071
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12072
|
0
|
|
|
|
|
0
|
last; |
12073
|
|
|
|
|
|
|
} |
12074
|
10
|
50
|
|
|
|
32
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
12075
|
|
|
|
|
|
|
. $_tok . q{])}, |
12076
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
12077
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12078
|
10
|
|
|
|
|
19
|
push @item, $_tok; |
12079
|
10
|
|
|
|
|
23
|
$item{__ACTION1__}=$_tok; |
12080
|
|
|
|
|
|
|
|
12081
|
|
|
|
|
|
|
|
12082
|
10
|
50
|
|
|
|
26
|
Parse::RecDescent::_trace(q{>>Matched production: [/.*?\\(.*?BODYSTRUCTURE \\(/i part /\\).*\\)\\r?\\n?/]<<}, |
12083
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12084
|
|
|
|
|
|
|
q{start}, |
12085
|
|
|
|
|
|
|
$tracelevel) |
12086
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12087
|
|
|
|
|
|
|
|
12088
|
|
|
|
|
|
|
|
12089
|
|
|
|
|
|
|
|
12090
|
10
|
|
|
|
|
17
|
$_matched = 1; |
12091
|
10
|
|
|
|
|
23
|
last; |
12092
|
|
|
|
|
|
|
} |
12093
|
|
|
|
|
|
|
|
12094
|
|
|
|
|
|
|
splice |
12095
|
10
|
50
|
|
|
|
25
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
12096
|
|
|
|
|
|
|
|
12097
|
10
|
50
|
33
|
|
|
31
|
unless ( $_matched || defined($score) ) |
12098
|
|
|
|
|
|
|
{ |
12099
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
12100
|
|
|
|
|
|
|
|
12101
|
|
|
|
|
|
|
|
12102
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
12103
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
12104
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
12105
|
|
|
|
|
|
|
q{start}, |
12106
|
|
|
|
|
|
|
$tracelevel) |
12107
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12108
|
0
|
|
|
|
|
0
|
return undef; |
12109
|
|
|
|
|
|
|
} |
12110
|
10
|
50
|
33
|
|
|
37
|
if (!defined($return) && defined($score)) |
12111
|
|
|
|
|
|
|
{ |
12112
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
12113
|
|
|
|
|
|
|
q{start}, |
12114
|
|
|
|
|
|
|
$tracelevel) |
12115
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12116
|
0
|
|
|
|
|
0
|
$return = $score_return; |
12117
|
|
|
|
|
|
|
} |
12118
|
10
|
|
|
|
|
18
|
splice @{$thisparser->{errors}}, $err_at; |
|
10
|
|
|
|
|
28
|
|
12119
|
10
|
50
|
|
|
|
34
|
$return = $item[$#item] unless defined $return; |
12120
|
10
|
50
|
|
|
|
27
|
if (defined $::RD_TRACE) |
12121
|
|
|
|
|
|
|
{ |
12122
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
12123
|
|
|
|
|
|
|
$return . q{])}, "", |
12124
|
|
|
|
|
|
|
q{start}, |
12125
|
|
|
|
|
|
|
$tracelevel); |
12126
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
12127
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
12128
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12129
|
|
|
|
|
|
|
, q{start}, |
12130
|
|
|
|
|
|
|
$tracelevel) |
12131
|
|
|
|
|
|
|
} |
12132
|
10
|
|
|
|
|
22
|
$_[1] = $text; |
12133
|
10
|
|
|
|
|
89
|
return $return; |
12134
|
|
|
|
|
|
|
} |
12135
|
|
|
|
|
|
|
|
12136
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
12137
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::subject |
12138
|
|
|
|
|
|
|
{ |
12139
|
24
|
|
|
24
|
|
54
|
my $thisparser = $_[0]; |
12140
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
370
|
|
12141
|
24
|
|
50
|
|
|
63
|
local $tracelevel = ($tracelevel||0)+1; |
12142
|
24
|
|
|
|
|
47
|
$ERRORS = 0; |
12143
|
24
|
|
|
|
|
63
|
my $thisrule = $thisparser->{"rules"}{"subject"}; |
12144
|
|
|
|
|
|
|
|
12145
|
24
|
50
|
|
|
|
71
|
Parse::RecDescent::_trace(q{Trying rule: [subject]}, |
12146
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
12147
|
|
|
|
|
|
|
q{subject}, |
12148
|
|
|
|
|
|
|
$tracelevel) |
12149
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12150
|
|
|
|
|
|
|
|
12151
|
24
|
|
|
|
|
37
|
my $def_at = @{$thisparser->{deferred}}; |
|
24
|
|
|
|
|
56
|
|
12152
|
24
|
|
|
|
|
39
|
my $err_at = @{$thisparser->{errors}}; |
|
24
|
|
|
|
|
62
|
|
12153
|
|
|
|
|
|
|
|
12154
|
24
|
|
|
|
|
72
|
my $score; |
12155
|
|
|
|
|
|
|
my $score_return; |
12156
|
24
|
|
|
|
|
0
|
my $_tok; |
12157
|
24
|
|
|
|
|
40
|
my $return = undef; |
12158
|
24
|
|
|
|
|
38
|
my $_matched=0; |
12159
|
24
|
|
|
|
|
43
|
my $commit=0; |
12160
|
24
|
|
|
|
|
57
|
my @item = (); |
12161
|
24
|
|
|
|
|
41
|
my %item = (); |
12162
|
24
|
|
|
|
|
46
|
my $repeating = $_[2]; |
12163
|
24
|
|
|
|
|
43
|
my $_noactions = $_[3]; |
12164
|
24
|
50
|
|
|
|
56
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
24
|
|
|
|
|
35
|
|
|
24
|
|
|
|
|
53
|
|
12165
|
24
|
|
|
|
|
49
|
my $_itempos = $_[5]; |
12166
|
24
|
50
|
|
|
|
65
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
12167
|
24
|
|
|
|
|
79
|
my $text; |
12168
|
|
|
|
|
|
|
my $lastsep; |
12169
|
24
|
|
|
|
|
0
|
my $current_match; |
12170
|
24
|
|
|
|
|
79
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or STRING}); |
12171
|
24
|
|
|
|
|
183
|
$expectation->at($_[1]); |
12172
|
|
|
|
|
|
|
|
12173
|
24
|
|
|
|
|
111
|
my $thisline; |
12174
|
24
|
|
|
|
|
109
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
12175
|
|
|
|
|
|
|
|
12176
|
|
|
|
|
|
|
|
12177
|
|
|
|
|
|
|
|
12178
|
24
|
|
33
|
|
|
219
|
while (!$_matched && !$commit) |
12179
|
|
|
|
|
|
|
{ |
12180
|
|
|
|
|
|
|
|
12181
|
24
|
50
|
|
|
|
76
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
12182
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
12183
|
|
|
|
|
|
|
q{subject}, |
12184
|
|
|
|
|
|
|
$tracelevel) |
12185
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12186
|
24
|
|
|
|
|
60
|
my $thisprod = $thisrule->{"prods"}[0]; |
12187
|
24
|
|
|
|
|
53
|
$text = $_[1]; |
12188
|
24
|
|
|
|
|
42
|
my $_savetext; |
12189
|
24
|
|
|
|
|
56
|
@item = (q{subject}); |
12190
|
24
|
|
|
|
|
67
|
%item = (__RULE__ => q{subject}); |
12191
|
24
|
|
|
|
|
37
|
my $repcount = 0; |
12192
|
|
|
|
|
|
|
|
12193
|
|
|
|
|
|
|
|
12194
|
24
|
50
|
|
|
|
74
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
12195
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12196
|
|
|
|
|
|
|
q{subject}, |
12197
|
|
|
|
|
|
|
$tracelevel) |
12198
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12199
|
1
|
|
|
1
|
|
9
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
328
|
|
|
24
|
|
|
|
|
41
|
|
12200
|
24
|
|
|
|
|
72
|
$expectation->is(q{})->at($text); |
12201
|
24
|
50
|
|
24
|
|
272
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
52
|
|
12202
|
|
|
|
|
|
|
{ |
12203
|
|
|
|
|
|
|
|
12204
|
24
|
50
|
|
|
|
81
|
Parse::RecDescent::_trace(q{<>}, |
12205
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12206
|
|
|
|
|
|
|
q{subject}, |
12207
|
|
|
|
|
|
|
$tracelevel) |
12208
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12209
|
24
|
|
|
|
|
99
|
$expectation->failed(); |
12210
|
24
|
|
|
|
|
90
|
last; |
12211
|
|
|
|
|
|
|
} |
12212
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
12213
|
|
|
|
|
|
|
. $_tok . q{]}, |
12214
|
|
|
|
|
|
|
|
12215
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12216
|
|
|
|
|
|
|
q{subject}, |
12217
|
|
|
|
|
|
|
$tracelevel) |
12218
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12219
|
0
|
|
|
|
|
0
|
$item{q{NIL}} = $_tok; |
12220
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
12221
|
|
|
|
|
|
|
|
12222
|
|
|
|
|
|
|
} |
12223
|
|
|
|
|
|
|
|
12224
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
12225
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12226
|
|
|
|
|
|
|
q{subject}, |
12227
|
|
|
|
|
|
|
$tracelevel) |
12228
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12229
|
|
|
|
|
|
|
|
12230
|
|
|
|
|
|
|
|
12231
|
|
|
|
|
|
|
|
12232
|
0
|
|
|
|
|
0
|
$_matched = 1; |
12233
|
0
|
|
|
|
|
0
|
last; |
12234
|
|
|
|
|
|
|
} |
12235
|
|
|
|
|
|
|
|
12236
|
|
|
|
|
|
|
splice |
12237
|
24
|
50
|
|
|
|
97
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
24
|
|
|
|
|
63
|
|
12238
|
|
|
|
|
|
|
|
12239
|
24
|
|
33
|
|
|
126
|
while (!$_matched && !$commit) |
12240
|
|
|
|
|
|
|
{ |
12241
|
|
|
|
|
|
|
|
12242
|
24
|
50
|
|
|
|
106
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
12243
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
12244
|
|
|
|
|
|
|
q{subject}, |
12245
|
|
|
|
|
|
|
$tracelevel) |
12246
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12247
|
24
|
|
|
|
|
68
|
my $thisprod = $thisrule->{"prods"}[1]; |
12248
|
24
|
|
|
|
|
53
|
$text = $_[1]; |
12249
|
24
|
|
|
|
|
43
|
my $_savetext; |
12250
|
24
|
|
|
|
|
67
|
@item = (q{subject}); |
12251
|
24
|
|
|
|
|
81
|
%item = (__RULE__ => q{subject}); |
12252
|
24
|
|
|
|
|
49
|
my $repcount = 0; |
12253
|
|
|
|
|
|
|
|
12254
|
|
|
|
|
|
|
|
12255
|
24
|
50
|
|
|
|
62
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
12256
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12257
|
|
|
|
|
|
|
q{subject}, |
12258
|
|
|
|
|
|
|
$tracelevel) |
12259
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12260
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
73
|
|
|
1
|
|
|
|
|
458
|
|
|
24
|
|
|
|
|
39
|
|
12261
|
24
|
|
|
|
|
85
|
$expectation->is(q{})->at($text); |
12262
|
24
|
50
|
|
24
|
|
265
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
52
|
|
12263
|
|
|
|
|
|
|
{ |
12264
|
|
|
|
|
|
|
|
12265
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
12266
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12267
|
|
|
|
|
|
|
q{subject}, |
12268
|
|
|
|
|
|
|
$tracelevel) |
12269
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12270
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
12271
|
0
|
|
|
|
|
0
|
last; |
12272
|
|
|
|
|
|
|
} |
12273
|
24
|
50
|
|
|
|
91
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
12274
|
|
|
|
|
|
|
. $_tok . q{]}, |
12275
|
|
|
|
|
|
|
|
12276
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12277
|
|
|
|
|
|
|
q{subject}, |
12278
|
|
|
|
|
|
|
$tracelevel) |
12279
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12280
|
24
|
|
|
|
|
52
|
$item{q{STRING}} = $_tok; |
12281
|
24
|
|
|
|
|
52
|
push @item, $_tok; |
12282
|
|
|
|
|
|
|
|
12283
|
|
|
|
|
|
|
} |
12284
|
|
|
|
|
|
|
|
12285
|
24
|
50
|
|
|
|
71
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
12286
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12287
|
|
|
|
|
|
|
q{subject}, |
12288
|
|
|
|
|
|
|
$tracelevel) |
12289
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12290
|
|
|
|
|
|
|
|
12291
|
|
|
|
|
|
|
|
12292
|
|
|
|
|
|
|
|
12293
|
24
|
|
|
|
|
38
|
$_matched = 1; |
12294
|
24
|
|
|
|
|
45
|
last; |
12295
|
|
|
|
|
|
|
} |
12296
|
|
|
|
|
|
|
|
12297
|
|
|
|
|
|
|
splice |
12298
|
24
|
50
|
|
|
|
80
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
12299
|
|
|
|
|
|
|
|
12300
|
24
|
50
|
33
|
|
|
67
|
unless ( $_matched || defined($score) ) |
12301
|
|
|
|
|
|
|
{ |
12302
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
12303
|
|
|
|
|
|
|
|
12304
|
|
|
|
|
|
|
|
12305
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
12306
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
12307
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
12308
|
|
|
|
|
|
|
q{subject}, |
12309
|
|
|
|
|
|
|
$tracelevel) |
12310
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12311
|
0
|
|
|
|
|
0
|
return undef; |
12312
|
|
|
|
|
|
|
} |
12313
|
24
|
50
|
33
|
|
|
122
|
if (!defined($return) && defined($score)) |
12314
|
|
|
|
|
|
|
{ |
12315
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
12316
|
|
|
|
|
|
|
q{subject}, |
12317
|
|
|
|
|
|
|
$tracelevel) |
12318
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12319
|
0
|
|
|
|
|
0
|
$return = $score_return; |
12320
|
|
|
|
|
|
|
} |
12321
|
24
|
|
|
|
|
42
|
splice @{$thisparser->{errors}}, $err_at; |
|
24
|
|
|
|
|
59
|
|
12322
|
24
|
50
|
|
|
|
75
|
$return = $item[$#item] unless defined $return; |
12323
|
24
|
50
|
|
|
|
57
|
if (defined $::RD_TRACE) |
12324
|
|
|
|
|
|
|
{ |
12325
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
12326
|
|
|
|
|
|
|
$return . q{])}, "", |
12327
|
|
|
|
|
|
|
q{subject}, |
12328
|
|
|
|
|
|
|
$tracelevel); |
12329
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
12330
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
12331
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12332
|
|
|
|
|
|
|
, q{subject}, |
12333
|
|
|
|
|
|
|
$tracelevel) |
12334
|
|
|
|
|
|
|
} |
12335
|
24
|
|
|
|
|
61
|
$_[1] = $text; |
12336
|
24
|
|
|
|
|
150
|
return $return; |
12337
|
|
|
|
|
|
|
} |
12338
|
|
|
|
|
|
|
|
12339
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
12340
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::subpart |
12341
|
|
|
|
|
|
|
{ |
12342
|
200
|
|
|
200
|
|
3383
|
my $thisparser = $_[0]; |
12343
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
538
|
|
12344
|
200
|
|
50
|
|
|
495
|
local $tracelevel = ($tracelevel||0)+1; |
12345
|
200
|
|
|
|
|
315
|
$ERRORS = 0; |
12346
|
200
|
|
|
|
|
393
|
my $thisrule = $thisparser->{"rules"}{"subpart"}; |
12347
|
|
|
|
|
|
|
|
12348
|
200
|
50
|
|
|
|
423
|
Parse::RecDescent::_trace(q{Trying rule: [subpart]}, |
12349
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
12350
|
|
|
|
|
|
|
q{subpart}, |
12351
|
|
|
|
|
|
|
$tracelevel) |
12352
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12353
|
|
|
|
|
|
|
|
12354
|
200
|
|
|
|
|
308
|
my $def_at = @{$thisparser->{deferred}}; |
|
200
|
|
|
|
|
392
|
|
12355
|
200
|
|
|
|
|
338
|
my $err_at = @{$thisparser->{errors}}; |
|
200
|
|
|
|
|
532
|
|
12356
|
|
|
|
|
|
|
|
12357
|
200
|
|
|
|
|
495
|
my $score; |
12358
|
|
|
|
|
|
|
my $score_return; |
12359
|
200
|
|
|
|
|
0
|
my $_tok; |
12360
|
200
|
|
|
|
|
322
|
my $return = undef; |
12361
|
200
|
|
|
|
|
286
|
my $_matched=0; |
12362
|
200
|
|
|
|
|
318
|
my $commit=0; |
12363
|
200
|
|
|
|
|
342
|
my @item = (); |
12364
|
200
|
|
|
|
|
344
|
my %item = (); |
12365
|
200
|
|
|
|
|
316
|
my $repeating = $_[2]; |
12366
|
200
|
|
|
|
|
267
|
my $_noactions = $_[3]; |
12367
|
200
|
50
|
|
|
|
407
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
200
|
|
|
|
|
309
|
|
|
200
|
|
|
|
|
356
|
|
12368
|
200
|
|
|
|
|
407
|
my $_itempos = $_[5]; |
12369
|
200
|
50
|
|
|
|
490
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
12370
|
200
|
|
|
|
|
528
|
my $text; |
12371
|
|
|
|
|
|
|
my $lastsep; |
12372
|
200
|
|
|
|
|
0
|
my $current_match; |
12373
|
200
|
|
|
|
|
495
|
my $expectation = new Parse::RecDescent::Expectation(q{'('}); |
12374
|
200
|
|
|
|
|
1349
|
$expectation->at($_[1]); |
12375
|
|
|
|
|
|
|
|
12376
|
200
|
|
|
|
|
786
|
my $thisline; |
12377
|
200
|
|
|
|
|
660
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
12378
|
|
|
|
|
|
|
|
12379
|
|
|
|
|
|
|
|
12380
|
|
|
|
|
|
|
|
12381
|
200
|
|
33
|
|
|
1625
|
while (!$_matched && !$commit) |
12382
|
|
|
|
|
|
|
{ |
12383
|
|
|
|
|
|
|
|
12384
|
200
|
50
|
|
|
|
417
|
Parse::RecDescent::_trace(q{Trying production: ['(' part ')' ]}, |
12385
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
12386
|
|
|
|
|
|
|
q{subpart}, |
12387
|
|
|
|
|
|
|
$tracelevel) |
12388
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12389
|
200
|
|
|
|
|
429
|
my $thisprod = $thisrule->{"prods"}[0]; |
12390
|
200
|
|
|
|
|
371
|
$text = $_[1]; |
12391
|
200
|
|
|
|
|
317
|
my $_savetext; |
12392
|
200
|
|
|
|
|
402
|
@item = (q{subpart}); |
12393
|
200
|
|
|
|
|
417
|
%item = (__RULE__ => q{subpart}); |
12394
|
200
|
|
|
|
|
304
|
my $repcount = 0; |
12395
|
|
|
|
|
|
|
|
12396
|
|
|
|
|
|
|
|
12397
|
200
|
50
|
|
|
|
406
|
Parse::RecDescent::_trace(q{Trying terminal: ['(']}, |
12398
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12399
|
|
|
|
|
|
|
q{subpart}, |
12400
|
|
|
|
|
|
|
$tracelevel) |
12401
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12402
|
200
|
|
|
|
|
413
|
undef $lastsep; |
12403
|
200
|
|
|
|
|
468
|
$expectation->is(q{})->at($text); |
12404
|
|
|
|
|
|
|
|
12405
|
|
|
|
|
|
|
|
12406
|
200
|
100
|
33
|
|
|
2374
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and do { $_tok = "("; 1 } and |
|
200
|
100
|
66
|
|
|
1326
|
|
|
200
|
|
66
|
|
|
433
|
|
|
200
|
|
|
|
|
1036
|
|
12407
|
|
|
|
|
|
|
substr($text,0,length($_tok)) eq $_tok and |
12408
|
75
|
|
|
|
|
161
|
do { substr($text,0,length($_tok)) = ""; 1; } |
|
75
|
|
|
|
|
215
|
|
12409
|
|
|
|
|
|
|
) |
12410
|
|
|
|
|
|
|
{ |
12411
|
125
|
50
|
|
|
|
520
|
$text = $lastsep . $text if defined $lastsep; |
12412
|
|
|
|
|
|
|
|
12413
|
125
|
|
|
|
|
447
|
$expectation->failed(); |
12414
|
125
|
50
|
|
|
|
560
|
Parse::RecDescent::_trace(q{<>}, |
12415
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
12416
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12417
|
125
|
|
|
|
|
288
|
last; |
12418
|
|
|
|
|
|
|
} |
12419
|
75
|
50
|
|
|
|
189
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
12420
|
|
|
|
|
|
|
. $_tok . q{])}, |
12421
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
12422
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12423
|
75
|
|
|
|
|
200
|
push @item, $item{__STRING1__}=$_tok; |
12424
|
|
|
|
|
|
|
|
12425
|
|
|
|
|
|
|
|
12426
|
75
|
50
|
|
|
|
189
|
Parse::RecDescent::_trace(q{Trying subrule: [part]}, |
12427
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12428
|
|
|
|
|
|
|
q{subpart}, |
12429
|
|
|
|
|
|
|
$tracelevel) |
12430
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12431
|
1
|
|
|
1
|
|
9
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
801
|
|
|
75
|
|
|
|
|
139
|
|
12432
|
75
|
|
|
|
|
196
|
$expectation->is(q{part})->at($text); |
12433
|
75
|
50
|
|
75
|
|
904
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::part($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
75
|
|
|
|
|
151
|
|
12434
|
|
|
|
|
|
|
{ |
12435
|
|
|
|
|
|
|
|
12436
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
12437
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12438
|
|
|
|
|
|
|
q{subpart}, |
12439
|
|
|
|
|
|
|
$tracelevel) |
12440
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12441
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
12442
|
0
|
|
|
|
|
0
|
last; |
12443
|
|
|
|
|
|
|
} |
12444
|
75
|
50
|
|
|
|
277
|
Parse::RecDescent::_trace(q{>>Matched subrule: [part]<< (return value: [} |
12445
|
|
|
|
|
|
|
. $_tok . q{]}, |
12446
|
|
|
|
|
|
|
|
12447
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12448
|
|
|
|
|
|
|
q{subpart}, |
12449
|
|
|
|
|
|
|
$tracelevel) |
12450
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12451
|
75
|
|
|
|
|
171
|
$item{q{part}} = $_tok; |
12452
|
75
|
|
|
|
|
129
|
push @item, $_tok; |
12453
|
|
|
|
|
|
|
|
12454
|
|
|
|
|
|
|
} |
12455
|
|
|
|
|
|
|
|
12456
|
75
|
50
|
|
|
|
165
|
Parse::RecDescent::_trace(q{Trying terminal: [')']}, |
12457
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12458
|
|
|
|
|
|
|
q{subpart}, |
12459
|
|
|
|
|
|
|
$tracelevel) |
12460
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12461
|
75
|
|
|
|
|
124
|
undef $lastsep; |
12462
|
75
|
|
|
|
|
233
|
$expectation->is(q{')'})->at($text); |
12463
|
|
|
|
|
|
|
|
12464
|
|
|
|
|
|
|
|
12465
|
75
|
50
|
33
|
|
|
997
|
unless ($text =~ s/\A($skip)/$lastsep=$1 and ""/e and do { $_tok = ")"; 1 } and |
|
75
|
50
|
33
|
|
|
589
|
|
|
75
|
|
33
|
|
|
148
|
|
|
75
|
|
|
|
|
415
|
|
12466
|
|
|
|
|
|
|
substr($text,0,length($_tok)) eq $_tok and |
12467
|
75
|
|
|
|
|
164
|
do { substr($text,0,length($_tok)) = ""; 1; } |
|
75
|
|
|
|
|
222
|
|
12468
|
|
|
|
|
|
|
) |
12469
|
|
|
|
|
|
|
{ |
12470
|
0
|
0
|
|
|
|
0
|
$text = $lastsep . $text if defined $lastsep; |
12471
|
|
|
|
|
|
|
|
12472
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
12473
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
12474
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
12475
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12476
|
0
|
|
|
|
|
0
|
last; |
12477
|
|
|
|
|
|
|
} |
12478
|
75
|
50
|
|
|
|
209
|
Parse::RecDescent::_trace(q{>>Matched terminal<< (return value: [} |
12479
|
|
|
|
|
|
|
. $_tok . q{])}, |
12480
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
12481
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12482
|
75
|
|
|
|
|
188
|
push @item, $item{__STRING2__}=$_tok; |
12483
|
|
|
|
|
|
|
|
12484
|
|
|
|
|
|
|
|
12485
|
75
|
50
|
|
|
|
182
|
Parse::RecDescent::_trace(q{Trying action}, |
12486
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12487
|
|
|
|
|
|
|
q{subpart}, |
12488
|
|
|
|
|
|
|
$tracelevel) |
12489
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12490
|
|
|
|
|
|
|
|
12491
|
|
|
|
|
|
|
|
12492
|
75
|
50
|
|
|
|
160
|
$_tok = ($_noactions) ? 0 : do {$return = $item{part}}; |
|
75
|
|
|
|
|
151
|
|
12493
|
75
|
50
|
|
|
|
167
|
unless (defined $_tok) |
12494
|
|
|
|
|
|
|
{ |
12495
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
12496
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12497
|
0
|
|
|
|
|
0
|
last; |
12498
|
|
|
|
|
|
|
} |
12499
|
75
|
50
|
|
|
|
151
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
12500
|
|
|
|
|
|
|
. $_tok . q{])}, |
12501
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
12502
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12503
|
75
|
|
|
|
|
147
|
push @item, $_tok; |
12504
|
75
|
|
|
|
|
144
|
$item{__ACTION1__}=$_tok; |
12505
|
|
|
|
|
|
|
|
12506
|
|
|
|
|
|
|
|
12507
|
|
|
|
|
|
|
|
12508
|
|
|
|
|
|
|
|
12509
|
75
|
50
|
|
|
|
176
|
Parse::RecDescent::_trace(q{Trying directive: []}, |
12510
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12511
|
|
|
|
|
|
|
q{subpart}, |
12512
|
|
|
|
|
|
|
$tracelevel) |
12513
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12514
|
75
|
|
|
75
|
|
114
|
$_tok = do { push @{$thisparser->{deferred}}, sub { ++$subpartCount; }; }; |
|
75
|
|
|
|
|
106
|
|
|
75
|
|
|
|
|
436
|
|
|
75
|
|
|
|
|
313
|
|
12515
|
75
|
50
|
|
|
|
201
|
if (defined($_tok)) |
12516
|
|
|
|
|
|
|
{ |
12517
|
75
|
50
|
|
|
|
169
|
Parse::RecDescent::_trace(q{>>Matched directive<< (return value: [} |
12518
|
|
|
|
|
|
|
. $_tok . q{])}, |
12519
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
12520
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12521
|
|
|
|
|
|
|
} |
12522
|
|
|
|
|
|
|
else |
12523
|
|
|
|
|
|
|
{ |
12524
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
12525
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
12526
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12527
|
|
|
|
|
|
|
} |
12528
|
|
|
|
|
|
|
|
12529
|
75
|
50
|
|
|
|
177
|
last unless defined $_tok; |
12530
|
75
|
|
|
|
|
174
|
push @item, $item{__DIRECTIVE1__}=$_tok; |
12531
|
|
|
|
|
|
|
|
12532
|
|
|
|
|
|
|
|
12533
|
75
|
50
|
|
|
|
145
|
Parse::RecDescent::_trace(q{>>Matched production: ['(' part ')' ]<<}, |
12534
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12535
|
|
|
|
|
|
|
q{subpart}, |
12536
|
|
|
|
|
|
|
$tracelevel) |
12537
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12538
|
|
|
|
|
|
|
|
12539
|
|
|
|
|
|
|
|
12540
|
|
|
|
|
|
|
|
12541
|
75
|
|
|
|
|
107
|
$_matched = 1; |
12542
|
75
|
|
|
|
|
173
|
last; |
12543
|
|
|
|
|
|
|
} |
12544
|
|
|
|
|
|
|
|
12545
|
|
|
|
|
|
|
splice |
12546
|
200
|
100
|
|
|
|
467
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
125
|
|
|
|
|
325
|
|
12547
|
|
|
|
|
|
|
|
12548
|
200
|
100
|
66
|
|
|
626
|
unless ( $_matched || defined($score) ) |
12549
|
|
|
|
|
|
|
{ |
12550
|
125
|
|
|
|
|
196
|
splice @{$thisparser->{deferred}}, $def_at; |
|
125
|
|
|
|
|
230
|
|
12551
|
|
|
|
|
|
|
|
12552
|
|
|
|
|
|
|
|
12553
|
125
|
|
|
|
|
245
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
12554
|
125
|
50
|
|
|
|
240
|
Parse::RecDescent::_trace(q{<>}, |
12555
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
12556
|
|
|
|
|
|
|
q{subpart}, |
12557
|
|
|
|
|
|
|
$tracelevel) |
12558
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12559
|
125
|
|
|
|
|
650
|
return undef; |
12560
|
|
|
|
|
|
|
} |
12561
|
75
|
50
|
33
|
|
|
228
|
if (!defined($return) && defined($score)) |
12562
|
|
|
|
|
|
|
{ |
12563
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
12564
|
|
|
|
|
|
|
q{subpart}, |
12565
|
|
|
|
|
|
|
$tracelevel) |
12566
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12567
|
0
|
|
|
|
|
0
|
$return = $score_return; |
12568
|
|
|
|
|
|
|
} |
12569
|
75
|
|
|
|
|
103
|
splice @{$thisparser->{errors}}, $err_at; |
|
75
|
|
|
|
|
158
|
|
12570
|
75
|
50
|
|
|
|
170
|
$return = $item[$#item] unless defined $return; |
12571
|
75
|
50
|
|
|
|
190
|
if (defined $::RD_TRACE) |
12572
|
|
|
|
|
|
|
{ |
12573
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
12574
|
|
|
|
|
|
|
$return . q{])}, "", |
12575
|
|
|
|
|
|
|
q{subpart}, |
12576
|
|
|
|
|
|
|
$tracelevel); |
12577
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
12578
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
12579
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12580
|
|
|
|
|
|
|
, q{subpart}, |
12581
|
|
|
|
|
|
|
$tracelevel) |
12582
|
|
|
|
|
|
|
} |
12583
|
75
|
|
|
|
|
224
|
$_[1] = $text; |
12584
|
75
|
|
|
|
|
662
|
return $return; |
12585
|
|
|
|
|
|
|
} |
12586
|
|
|
|
|
|
|
|
12587
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
12588
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::textlines |
12589
|
|
|
|
|
|
|
{ |
12590
|
62
|
|
|
62
|
|
1032
|
my $thisparser = $_[0]; |
12591
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
361
|
|
12592
|
62
|
|
50
|
|
|
160
|
local $tracelevel = ($tracelevel||0)+1; |
12593
|
62
|
|
|
|
|
99
|
$ERRORS = 0; |
12594
|
62
|
|
|
|
|
135
|
my $thisrule = $thisparser->{"rules"}{"textlines"}; |
12595
|
|
|
|
|
|
|
|
12596
|
62
|
50
|
|
|
|
221
|
Parse::RecDescent::_trace(q{Trying rule: [textlines]}, |
12597
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
12598
|
|
|
|
|
|
|
q{textlines}, |
12599
|
|
|
|
|
|
|
$tracelevel) |
12600
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12601
|
|
|
|
|
|
|
|
12602
|
62
|
|
|
|
|
101
|
my $def_at = @{$thisparser->{deferred}}; |
|
62
|
|
|
|
|
124
|
|
12603
|
62
|
|
|
|
|
112
|
my $err_at = @{$thisparser->{errors}}; |
|
62
|
|
|
|
|
125
|
|
12604
|
|
|
|
|
|
|
|
12605
|
62
|
|
|
|
|
149
|
my $score; |
12606
|
|
|
|
|
|
|
my $score_return; |
12607
|
62
|
|
|
|
|
0
|
my $_tok; |
12608
|
62
|
|
|
|
|
110
|
my $return = undef; |
12609
|
62
|
|
|
|
|
95
|
my $_matched=0; |
12610
|
62
|
|
|
|
|
96
|
my $commit=0; |
12611
|
62
|
|
|
|
|
91
|
my @item = (); |
12612
|
62
|
|
|
|
|
96
|
my %item = (); |
12613
|
62
|
|
|
|
|
130
|
my $repeating = $_[2]; |
12614
|
62
|
|
|
|
|
111
|
my $_noactions = $_[3]; |
12615
|
62
|
50
|
|
|
|
120
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
62
|
|
|
|
|
93
|
|
|
62
|
|
|
|
|
124
|
|
12616
|
62
|
|
|
|
|
117
|
my $_itempos = $_[5]; |
12617
|
62
|
50
|
|
|
|
157
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
12618
|
62
|
|
|
|
|
151
|
my $text; |
12619
|
|
|
|
|
|
|
my $lastsep; |
12620
|
62
|
|
|
|
|
0
|
my $current_match; |
12621
|
62
|
|
|
|
|
201
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or NUMBER}); |
12622
|
62
|
|
|
|
|
436
|
$expectation->at($_[1]); |
12623
|
|
|
|
|
|
|
|
12624
|
62
|
|
|
|
|
263
|
my $thisline; |
12625
|
62
|
|
|
|
|
239
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
12626
|
|
|
|
|
|
|
|
12627
|
|
|
|
|
|
|
|
12628
|
|
|
|
|
|
|
|
12629
|
62
|
|
33
|
|
|
580
|
while (!$_matched && !$commit) |
12630
|
|
|
|
|
|
|
{ |
12631
|
|
|
|
|
|
|
|
12632
|
62
|
50
|
|
|
|
168
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
12633
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
12634
|
|
|
|
|
|
|
q{textlines}, |
12635
|
|
|
|
|
|
|
$tracelevel) |
12636
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12637
|
62
|
|
|
|
|
178
|
my $thisprod = $thisrule->{"prods"}[0]; |
12638
|
62
|
|
|
|
|
124
|
$text = $_[1]; |
12639
|
62
|
|
|
|
|
100
|
my $_savetext; |
12640
|
62
|
|
|
|
|
122
|
@item = (q{textlines}); |
12641
|
62
|
|
|
|
|
120
|
%item = (__RULE__ => q{textlines}); |
12642
|
62
|
|
|
|
|
102
|
my $repcount = 0; |
12643
|
|
|
|
|
|
|
|
12644
|
|
|
|
|
|
|
|
12645
|
62
|
50
|
|
|
|
166
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
12646
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12647
|
|
|
|
|
|
|
q{textlines}, |
12648
|
|
|
|
|
|
|
$tracelevel) |
12649
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12650
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
302
|
|
|
62
|
|
|
|
|
100
|
|
12651
|
62
|
|
|
|
|
141
|
$expectation->is(q{})->at($text); |
12652
|
62
|
50
|
|
62
|
|
601
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
62
|
|
|
|
|
123
|
|
12653
|
|
|
|
|
|
|
{ |
12654
|
|
|
|
|
|
|
|
12655
|
62
|
50
|
|
|
|
141
|
Parse::RecDescent::_trace(q{<>}, |
12656
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12657
|
|
|
|
|
|
|
q{textlines}, |
12658
|
|
|
|
|
|
|
$tracelevel) |
12659
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12660
|
62
|
|
|
|
|
169
|
$expectation->failed(); |
12661
|
62
|
|
|
|
|
237
|
last; |
12662
|
|
|
|
|
|
|
} |
12663
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
12664
|
|
|
|
|
|
|
. $_tok . q{]}, |
12665
|
|
|
|
|
|
|
|
12666
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12667
|
|
|
|
|
|
|
q{textlines}, |
12668
|
|
|
|
|
|
|
$tracelevel) |
12669
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12670
|
0
|
|
|
|
|
0
|
$item{q{NIL}} = $_tok; |
12671
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
12672
|
|
|
|
|
|
|
|
12673
|
|
|
|
|
|
|
} |
12674
|
|
|
|
|
|
|
|
12675
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
12676
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12677
|
|
|
|
|
|
|
q{textlines}, |
12678
|
|
|
|
|
|
|
$tracelevel) |
12679
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12680
|
|
|
|
|
|
|
|
12681
|
|
|
|
|
|
|
|
12682
|
|
|
|
|
|
|
|
12683
|
0
|
|
|
|
|
0
|
$_matched = 1; |
12684
|
0
|
|
|
|
|
0
|
last; |
12685
|
|
|
|
|
|
|
} |
12686
|
|
|
|
|
|
|
|
12687
|
|
|
|
|
|
|
splice |
12688
|
62
|
50
|
|
|
|
282
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
62
|
|
|
|
|
159
|
|
12689
|
|
|
|
|
|
|
|
12690
|
62
|
|
33
|
|
|
241
|
while (!$_matched && !$commit) |
12691
|
|
|
|
|
|
|
{ |
12692
|
|
|
|
|
|
|
|
12693
|
62
|
50
|
|
|
|
144
|
Parse::RecDescent::_trace(q{Trying production: [NUMBER]}, |
12694
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
12695
|
|
|
|
|
|
|
q{textlines}, |
12696
|
|
|
|
|
|
|
$tracelevel) |
12697
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12698
|
62
|
|
|
|
|
123
|
my $thisprod = $thisrule->{"prods"}[1]; |
12699
|
62
|
|
|
|
|
128
|
$text = $_[1]; |
12700
|
62
|
|
|
|
|
95
|
my $_savetext; |
12701
|
62
|
|
|
|
|
153
|
@item = (q{textlines}); |
12702
|
62
|
|
|
|
|
139
|
%item = (__RULE__ => q{textlines}); |
12703
|
62
|
|
|
|
|
104
|
my $repcount = 0; |
12704
|
|
|
|
|
|
|
|
12705
|
|
|
|
|
|
|
|
12706
|
62
|
50
|
|
|
|
127
|
Parse::RecDescent::_trace(q{Trying subrule: [NUMBER]}, |
12707
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12708
|
|
|
|
|
|
|
q{textlines}, |
12709
|
|
|
|
|
|
|
$tracelevel) |
12710
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12711
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
483
|
|
|
62
|
|
|
|
|
94
|
|
12712
|
62
|
|
|
|
|
163
|
$expectation->is(q{})->at($text); |
12713
|
62
|
100
|
|
62
|
|
588
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NUMBER($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
62
|
|
|
|
|
148
|
|
12714
|
|
|
|
|
|
|
{ |
12715
|
|
|
|
|
|
|
|
12716
|
2
|
50
|
|
|
|
7
|
Parse::RecDescent::_trace(q{<>}, |
12717
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12718
|
|
|
|
|
|
|
q{textlines}, |
12719
|
|
|
|
|
|
|
$tracelevel) |
12720
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12721
|
2
|
|
|
|
|
8
|
$expectation->failed(); |
12722
|
2
|
|
|
|
|
7
|
last; |
12723
|
|
|
|
|
|
|
} |
12724
|
60
|
50
|
|
|
|
253
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NUMBER]<< (return value: [} |
12725
|
|
|
|
|
|
|
. $_tok . q{]}, |
12726
|
|
|
|
|
|
|
|
12727
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12728
|
|
|
|
|
|
|
q{textlines}, |
12729
|
|
|
|
|
|
|
$tracelevel) |
12730
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12731
|
60
|
|
|
|
|
160
|
$item{q{NUMBER}} = $_tok; |
12732
|
60
|
|
|
|
|
117
|
push @item, $_tok; |
12733
|
|
|
|
|
|
|
|
12734
|
|
|
|
|
|
|
} |
12735
|
|
|
|
|
|
|
|
12736
|
60
|
50
|
|
|
|
129
|
Parse::RecDescent::_trace(q{>>Matched production: [NUMBER]<<}, |
12737
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12738
|
|
|
|
|
|
|
q{textlines}, |
12739
|
|
|
|
|
|
|
$tracelevel) |
12740
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12741
|
|
|
|
|
|
|
|
12742
|
|
|
|
|
|
|
|
12743
|
|
|
|
|
|
|
|
12744
|
60
|
|
|
|
|
92
|
$_matched = 1; |
12745
|
60
|
|
|
|
|
133
|
last; |
12746
|
|
|
|
|
|
|
} |
12747
|
|
|
|
|
|
|
|
12748
|
|
|
|
|
|
|
splice |
12749
|
62
|
100
|
|
|
|
132
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
2
|
|
|
|
|
6
|
|
12750
|
|
|
|
|
|
|
|
12751
|
62
|
100
|
66
|
|
|
163
|
unless ( $_matched || defined($score) ) |
12752
|
|
|
|
|
|
|
{ |
12753
|
2
|
|
|
|
|
4
|
splice @{$thisparser->{deferred}}, $def_at; |
|
2
|
|
|
|
|
5
|
|
12754
|
|
|
|
|
|
|
|
12755
|
|
|
|
|
|
|
|
12756
|
2
|
|
|
|
|
4
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
12757
|
2
|
50
|
|
|
|
6
|
Parse::RecDescent::_trace(q{<>}, |
12758
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
12759
|
|
|
|
|
|
|
q{textlines}, |
12760
|
|
|
|
|
|
|
$tracelevel) |
12761
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12762
|
2
|
|
|
|
|
9
|
return undef; |
12763
|
|
|
|
|
|
|
} |
12764
|
60
|
50
|
33
|
|
|
273
|
if (!defined($return) && defined($score)) |
12765
|
|
|
|
|
|
|
{ |
12766
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
12767
|
|
|
|
|
|
|
q{textlines}, |
12768
|
|
|
|
|
|
|
$tracelevel) |
12769
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12770
|
0
|
|
|
|
|
0
|
$return = $score_return; |
12771
|
|
|
|
|
|
|
} |
12772
|
60
|
|
|
|
|
93
|
splice @{$thisparser->{errors}}, $err_at; |
|
60
|
|
|
|
|
128
|
|
12773
|
60
|
50
|
|
|
|
172
|
$return = $item[$#item] unless defined $return; |
12774
|
60
|
50
|
|
|
|
148
|
if (defined $::RD_TRACE) |
12775
|
|
|
|
|
|
|
{ |
12776
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
12777
|
|
|
|
|
|
|
$return . q{])}, "", |
12778
|
|
|
|
|
|
|
q{textlines}, |
12779
|
|
|
|
|
|
|
$tracelevel); |
12780
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
12781
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
12782
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12783
|
|
|
|
|
|
|
, q{textlines}, |
12784
|
|
|
|
|
|
|
$tracelevel) |
12785
|
|
|
|
|
|
|
} |
12786
|
60
|
|
|
|
|
150
|
$_[1] = $text; |
12787
|
60
|
|
|
|
|
306
|
return $return; |
12788
|
|
|
|
|
|
|
} |
12789
|
|
|
|
|
|
|
|
12790
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
12791
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::textmessage |
12792
|
|
|
|
|
|
|
{ |
12793
|
94
|
|
|
94
|
|
187
|
my $thisparser = $_[0]; |
12794
|
1
|
|
|
1
|
|
8
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
342
|
|
12795
|
94
|
|
50
|
|
|
257
|
local $tracelevel = ($tracelevel||0)+1; |
12796
|
94
|
|
|
|
|
150
|
$ERRORS = 0; |
12797
|
94
|
|
|
|
|
184
|
my $thisrule = $thisparser->{"rules"}{"textmessage"}; |
12798
|
|
|
|
|
|
|
|
12799
|
94
|
50
|
|
|
|
195
|
Parse::RecDescent::_trace(q{Trying rule: [textmessage]}, |
12800
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
12801
|
|
|
|
|
|
|
q{textmessage}, |
12802
|
|
|
|
|
|
|
$tracelevel) |
12803
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12804
|
|
|
|
|
|
|
|
12805
|
94
|
|
|
|
|
158
|
my $def_at = @{$thisparser->{deferred}}; |
|
94
|
|
|
|
|
185
|
|
12806
|
94
|
|
|
|
|
139
|
my $err_at = @{$thisparser->{errors}}; |
|
94
|
|
|
|
|
200
|
|
12807
|
|
|
|
|
|
|
|
12808
|
94
|
|
|
|
|
218
|
my $score; |
12809
|
|
|
|
|
|
|
my $score_return; |
12810
|
94
|
|
|
|
|
0
|
my $_tok; |
12811
|
94
|
|
|
|
|
138
|
my $return = undef; |
12812
|
94
|
|
|
|
|
132
|
my $_matched=0; |
12813
|
94
|
|
|
|
|
157
|
my $commit=0; |
12814
|
94
|
|
|
|
|
169
|
my @item = (); |
12815
|
94
|
|
|
|
|
174
|
my %item = (); |
12816
|
94
|
|
|
|
|
135
|
my $repeating = $_[2]; |
12817
|
94
|
|
|
|
|
161
|
my $_noactions = $_[3]; |
12818
|
94
|
50
|
|
|
|
208
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
94
|
|
|
|
|
161
|
|
|
94
|
|
|
|
|
170
|
|
12819
|
94
|
|
|
|
|
154
|
my $_itempos = $_[5]; |
12820
|
94
|
50
|
|
|
|
221
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
12821
|
94
|
|
|
|
|
225
|
my $text; |
12822
|
|
|
|
|
|
|
my $lastsep; |
12823
|
94
|
|
|
|
|
0
|
my $current_match; |
12824
|
94
|
|
|
|
|
256
|
my $expectation = new Parse::RecDescent::Expectation(q{TEXT}); |
12825
|
94
|
|
|
|
|
663
|
$expectation->at($_[1]); |
12826
|
|
|
|
|
|
|
|
12827
|
94
|
|
|
|
|
379
|
my $thisline; |
12828
|
94
|
|
|
|
|
669
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
12829
|
|
|
|
|
|
|
|
12830
|
|
|
|
|
|
|
|
12831
|
|
|
|
|
|
|
|
12832
|
94
|
|
33
|
|
|
936
|
while (!$_matched && !$commit) |
12833
|
|
|
|
|
|
|
{ |
12834
|
|
|
|
|
|
|
|
12835
|
94
|
50
|
|
|
|
223
|
Parse::RecDescent::_trace(q{Trying production: [TEXT basicfields textlines bodyMD5 bodydisp bodylang bodyextra bodyextensions]}, |
12836
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
12837
|
|
|
|
|
|
|
q{textmessage}, |
12838
|
|
|
|
|
|
|
$tracelevel) |
12839
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12840
|
94
|
|
|
|
|
186
|
my $thisprod = $thisrule->{"prods"}[0]; |
12841
|
94
|
|
|
|
|
183
|
$text = $_[1]; |
12842
|
94
|
|
|
|
|
213
|
my $_savetext; |
12843
|
94
|
|
|
|
|
178
|
@item = (q{textmessage}); |
12844
|
94
|
|
|
|
|
181
|
%item = (__RULE__ => q{textmessage}); |
12845
|
94
|
|
|
|
|
137
|
my $repcount = 0; |
12846
|
|
|
|
|
|
|
|
12847
|
|
|
|
|
|
|
|
12848
|
94
|
50
|
|
|
|
207
|
Parse::RecDescent::_trace(q{Trying subrule: [TEXT]}, |
12849
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12850
|
|
|
|
|
|
|
q{textmessage}, |
12851
|
|
|
|
|
|
|
$tracelevel) |
12852
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12853
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
471
|
|
|
94
|
|
|
|
|
134
|
|
12854
|
94
|
|
|
|
|
231
|
$expectation->is(q{})->at($text); |
12855
|
94
|
100
|
|
94
|
|
851
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::TEXT($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
94
|
|
|
|
|
235
|
|
12856
|
|
|
|
|
|
|
{ |
12857
|
|
|
|
|
|
|
|
12858
|
53
|
50
|
|
|
|
130
|
Parse::RecDescent::_trace(q{<>}, |
12859
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12860
|
|
|
|
|
|
|
q{textmessage}, |
12861
|
|
|
|
|
|
|
$tracelevel) |
12862
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12863
|
53
|
|
|
|
|
209
|
$expectation->failed(); |
12864
|
53
|
|
|
|
|
189
|
last; |
12865
|
|
|
|
|
|
|
} |
12866
|
41
|
50
|
|
|
|
168
|
Parse::RecDescent::_trace(q{>>Matched subrule: [TEXT]<< (return value: [} |
12867
|
|
|
|
|
|
|
. $_tok . q{]}, |
12868
|
|
|
|
|
|
|
|
12869
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12870
|
|
|
|
|
|
|
q{textmessage}, |
12871
|
|
|
|
|
|
|
$tracelevel) |
12872
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12873
|
41
|
|
|
|
|
111
|
$item{q{TEXT}} = $_tok; |
12874
|
41
|
|
|
|
|
84
|
push @item, $_tok; |
12875
|
|
|
|
|
|
|
|
12876
|
|
|
|
|
|
|
} |
12877
|
|
|
|
|
|
|
|
12878
|
|
|
|
|
|
|
|
12879
|
|
|
|
|
|
|
|
12880
|
41
|
50
|
|
|
|
96
|
Parse::RecDescent::_trace(q{Trying directive: []}, |
12881
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12882
|
|
|
|
|
|
|
q{textmessage}, |
12883
|
|
|
|
|
|
|
$tracelevel) |
12884
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12885
|
41
|
|
|
|
|
70
|
$_tok = do { $commit = 1 }; |
|
41
|
|
|
|
|
75
|
|
12886
|
41
|
50
|
|
|
|
109
|
if (defined($_tok)) |
12887
|
|
|
|
|
|
|
{ |
12888
|
41
|
50
|
|
|
|
97
|
Parse::RecDescent::_trace(q{>>Matched directive<< (return value: [} |
12889
|
|
|
|
|
|
|
. $_tok . q{])}, |
12890
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
12891
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12892
|
|
|
|
|
|
|
} |
12893
|
|
|
|
|
|
|
else |
12894
|
|
|
|
|
|
|
{ |
12895
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
12896
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
12897
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12898
|
|
|
|
|
|
|
} |
12899
|
|
|
|
|
|
|
|
12900
|
41
|
50
|
|
|
|
86
|
last unless defined $_tok; |
12901
|
41
|
|
|
|
|
96
|
push @item, $item{__DIRECTIVE1__}=$_tok; |
12902
|
|
|
|
|
|
|
|
12903
|
|
|
|
|
|
|
|
12904
|
41
|
50
|
|
|
|
97
|
Parse::RecDescent::_trace(q{Trying subrule: [basicfields]}, |
12905
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12906
|
|
|
|
|
|
|
q{textmessage}, |
12907
|
|
|
|
|
|
|
$tracelevel) |
12908
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12909
|
1
|
|
|
1
|
|
9
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
1342
|
|
|
41
|
|
|
|
|
58
|
|
12910
|
41
|
|
|
|
|
128
|
$expectation->is(q{basicfields})->at($text); |
12911
|
41
|
50
|
|
41
|
|
495
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::basicfields($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
41
|
|
|
|
|
86
|
|
12912
|
|
|
|
|
|
|
{ |
12913
|
|
|
|
|
|
|
|
12914
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
12915
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12916
|
|
|
|
|
|
|
q{textmessage}, |
12917
|
|
|
|
|
|
|
$tracelevel) |
12918
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12919
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
12920
|
0
|
|
|
|
|
0
|
last; |
12921
|
|
|
|
|
|
|
} |
12922
|
41
|
50
|
|
|
|
154
|
Parse::RecDescent::_trace(q{>>Matched subrule: [basicfields]<< (return value: [} |
12923
|
|
|
|
|
|
|
. $_tok . q{]}, |
12924
|
|
|
|
|
|
|
|
12925
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12926
|
|
|
|
|
|
|
q{textmessage}, |
12927
|
|
|
|
|
|
|
$tracelevel) |
12928
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12929
|
41
|
|
|
|
|
127
|
$item{q{basicfields}} = $_tok; |
12930
|
41
|
|
|
|
|
97
|
push @item, $_tok; |
12931
|
|
|
|
|
|
|
|
12932
|
|
|
|
|
|
|
} |
12933
|
|
|
|
|
|
|
|
12934
|
41
|
50
|
|
|
|
90
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [textlines]}, |
12935
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12936
|
|
|
|
|
|
|
q{textmessage}, |
12937
|
|
|
|
|
|
|
$tracelevel) |
12938
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12939
|
41
|
|
|
|
|
140
|
$expectation->is(q{textlines})->at($text); |
12940
|
|
|
|
|
|
|
|
12941
|
41
|
50
|
|
41
|
|
476
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::textlines, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
41
|
|
|
|
|
100
|
|
12942
|
|
|
|
|
|
|
{ |
12943
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
12944
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12945
|
|
|
|
|
|
|
q{textmessage}, |
12946
|
|
|
|
|
|
|
$tracelevel) |
12947
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12948
|
0
|
|
|
|
|
0
|
last; |
12949
|
|
|
|
|
|
|
} |
12950
|
41
|
50
|
|
|
|
757
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [textlines]<< (} |
12951
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
12952
|
|
|
|
|
|
|
|
12953
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12954
|
|
|
|
|
|
|
q{textmessage}, |
12955
|
|
|
|
|
|
|
$tracelevel) |
12956
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12957
|
41
|
|
|
|
|
100
|
$item{q{textlines(?)}} = $_tok; |
12958
|
41
|
|
|
|
|
104
|
push @item, $_tok; |
12959
|
|
|
|
|
|
|
|
12960
|
|
|
|
|
|
|
|
12961
|
|
|
|
|
|
|
|
12962
|
41
|
50
|
|
|
|
101
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodyMD5]}, |
12963
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12964
|
|
|
|
|
|
|
q{textmessage}, |
12965
|
|
|
|
|
|
|
$tracelevel) |
12966
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12967
|
41
|
|
|
|
|
126
|
$expectation->is(q{bodyMD5})->at($text); |
12968
|
|
|
|
|
|
|
|
12969
|
41
|
50
|
|
41
|
|
479
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyMD5, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
41
|
|
|
|
|
92
|
|
12970
|
|
|
|
|
|
|
{ |
12971
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
12972
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12973
|
|
|
|
|
|
|
q{textmessage}, |
12974
|
|
|
|
|
|
|
$tracelevel) |
12975
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12976
|
0
|
|
|
|
|
0
|
last; |
12977
|
|
|
|
|
|
|
} |
12978
|
41
|
50
|
|
|
|
781
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodyMD5]<< (} |
12979
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
12980
|
|
|
|
|
|
|
|
12981
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12982
|
|
|
|
|
|
|
q{textmessage}, |
12983
|
|
|
|
|
|
|
$tracelevel) |
12984
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12985
|
41
|
|
|
|
|
96
|
$item{q{bodyMD5(?)}} = $_tok; |
12986
|
41
|
|
|
|
|
90
|
push @item, $_tok; |
12987
|
|
|
|
|
|
|
|
12988
|
|
|
|
|
|
|
|
12989
|
|
|
|
|
|
|
|
12990
|
41
|
50
|
|
|
|
101
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodydisp]}, |
12991
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
12992
|
|
|
|
|
|
|
q{textmessage}, |
12993
|
|
|
|
|
|
|
$tracelevel) |
12994
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
12995
|
41
|
|
|
|
|
124
|
$expectation->is(q{bodydisp})->at($text); |
12996
|
|
|
|
|
|
|
|
12997
|
41
|
50
|
|
41
|
|
459
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodydisp, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
41
|
|
|
|
|
85
|
|
12998
|
|
|
|
|
|
|
{ |
12999
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
13000
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13001
|
|
|
|
|
|
|
q{textmessage}, |
13002
|
|
|
|
|
|
|
$tracelevel) |
13003
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13004
|
0
|
|
|
|
|
0
|
last; |
13005
|
|
|
|
|
|
|
} |
13006
|
41
|
50
|
|
|
|
688
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodydisp]<< (} |
13007
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
13008
|
|
|
|
|
|
|
|
13009
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13010
|
|
|
|
|
|
|
q{textmessage}, |
13011
|
|
|
|
|
|
|
$tracelevel) |
13012
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13013
|
41
|
|
|
|
|
103
|
$item{q{bodydisp(?)}} = $_tok; |
13014
|
41
|
|
|
|
|
84
|
push @item, $_tok; |
13015
|
|
|
|
|
|
|
|
13016
|
|
|
|
|
|
|
|
13017
|
|
|
|
|
|
|
|
13018
|
41
|
50
|
|
|
|
91
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodylang]}, |
13019
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13020
|
|
|
|
|
|
|
q{textmessage}, |
13021
|
|
|
|
|
|
|
$tracelevel) |
13022
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13023
|
41
|
|
|
|
|
132
|
$expectation->is(q{bodylang})->at($text); |
13024
|
|
|
|
|
|
|
|
13025
|
41
|
50
|
|
41
|
|
467
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodylang, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
41
|
|
|
|
|
84
|
|
13026
|
|
|
|
|
|
|
{ |
13027
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
13028
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13029
|
|
|
|
|
|
|
q{textmessage}, |
13030
|
|
|
|
|
|
|
$tracelevel) |
13031
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13032
|
0
|
|
|
|
|
0
|
last; |
13033
|
|
|
|
|
|
|
} |
13034
|
41
|
50
|
|
|
|
662
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodylang]<< (} |
13035
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
13036
|
|
|
|
|
|
|
|
13037
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13038
|
|
|
|
|
|
|
q{textmessage}, |
13039
|
|
|
|
|
|
|
$tracelevel) |
13040
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13041
|
41
|
|
|
|
|
107
|
$item{q{bodylang(?)}} = $_tok; |
13042
|
41
|
|
|
|
|
81
|
push @item, $_tok; |
13043
|
|
|
|
|
|
|
|
13044
|
|
|
|
|
|
|
|
13045
|
|
|
|
|
|
|
|
13046
|
41
|
50
|
|
|
|
90
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodyextra]}, |
13047
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13048
|
|
|
|
|
|
|
q{textmessage}, |
13049
|
|
|
|
|
|
|
$tracelevel) |
13050
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13051
|
41
|
|
|
|
|
113
|
$expectation->is(q{bodyextra})->at($text); |
13052
|
|
|
|
|
|
|
|
13053
|
41
|
50
|
|
41
|
|
457
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyextra, 0, 1, $_noactions,$expectation,sub { \@arg },undef))) |
|
41
|
|
|
|
|
83
|
|
13054
|
|
|
|
|
|
|
{ |
13055
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
13056
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13057
|
|
|
|
|
|
|
q{textmessage}, |
13058
|
|
|
|
|
|
|
$tracelevel) |
13059
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13060
|
0
|
|
|
|
|
0
|
last; |
13061
|
|
|
|
|
|
|
} |
13062
|
41
|
50
|
|
|
|
694
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodyextra]<< (} |
13063
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
13064
|
|
|
|
|
|
|
|
13065
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13066
|
|
|
|
|
|
|
q{textmessage}, |
13067
|
|
|
|
|
|
|
$tracelevel) |
13068
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13069
|
41
|
|
|
|
|
105
|
$item{q{bodyextra(?)}} = $_tok; |
13070
|
41
|
|
|
|
|
78
|
push @item, $_tok; |
13071
|
|
|
|
|
|
|
|
13072
|
|
|
|
|
|
|
|
13073
|
|
|
|
|
|
|
|
13074
|
41
|
50
|
|
|
|
115
|
Parse::RecDescent::_trace(q{Trying repeated subrule: [bodyextensions]}, |
13075
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13076
|
|
|
|
|
|
|
q{textmessage}, |
13077
|
|
|
|
|
|
|
$tracelevel) |
13078
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13079
|
41
|
|
|
|
|
116
|
$expectation->is(q{bodyextensions})->at($text); |
13080
|
|
|
|
|
|
|
|
13081
|
41
|
50
|
|
45
|
|
507
|
unless (defined ($_tok = $thisparser->_parserepeat($text, \&Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::bodyextensions, 0, 100000000, $_noactions,$expectation,sub { \@arg },undef))) |
|
45
|
|
|
|
|
97
|
|
13082
|
|
|
|
|
|
|
{ |
13083
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
13084
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13085
|
|
|
|
|
|
|
q{textmessage}, |
13086
|
|
|
|
|
|
|
$tracelevel) |
13087
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13088
|
0
|
|
|
|
|
0
|
last; |
13089
|
|
|
|
|
|
|
} |
13090
|
41
|
50
|
|
|
|
583
|
Parse::RecDescent::_trace(q{>>Matched repeated subrule: [bodyextensions]<< (} |
13091
|
|
|
|
|
|
|
. @$_tok . q{ times)}, |
13092
|
|
|
|
|
|
|
|
13093
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13094
|
|
|
|
|
|
|
q{textmessage}, |
13095
|
|
|
|
|
|
|
$tracelevel) |
13096
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13097
|
41
|
|
|
|
|
116
|
$item{q{bodyextensions(s?)}} = $_tok; |
13098
|
41
|
|
|
|
|
83
|
push @item, $_tok; |
13099
|
|
|
|
|
|
|
|
13100
|
|
|
|
|
|
|
|
13101
|
|
|
|
|
|
|
|
13102
|
41
|
50
|
|
|
|
86
|
Parse::RecDescent::_trace(q{Trying action}, |
13103
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13104
|
|
|
|
|
|
|
q{textmessage}, |
13105
|
|
|
|
|
|
|
$tracelevel) |
13106
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13107
|
|
|
|
|
|
|
|
13108
|
|
|
|
|
|
|
|
13109
|
41
|
50
|
|
|
|
88
|
$_tok = ($_noactions) ? 0 : do { |
13110
|
41
|
|
50
|
|
|
130
|
$return = $item{basicfields} || {}; |
13111
|
41
|
|
|
|
|
108
|
$return->{bodytype} = 'TEXT'; |
13112
|
41
|
|
|
|
|
129
|
take_optional_items($return, \%item |
13113
|
|
|
|
|
|
|
, qw/textlines bodyMD5 bodydisp bodylang bodyextra/); |
13114
|
41
|
|
|
|
|
112
|
1; |
13115
|
|
|
|
|
|
|
}; |
13116
|
41
|
50
|
|
|
|
120
|
unless (defined $_tok) |
13117
|
|
|
|
|
|
|
{ |
13118
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<> (return value: [undef])}) |
13119
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13120
|
0
|
|
|
|
|
0
|
last; |
13121
|
|
|
|
|
|
|
} |
13122
|
41
|
50
|
|
|
|
106
|
Parse::RecDescent::_trace(q{>>Matched action<< (return value: [} |
13123
|
|
|
|
|
|
|
. $_tok . q{])}, |
13124
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text)) |
13125
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13126
|
41
|
|
|
|
|
88
|
push @item, $_tok; |
13127
|
41
|
|
|
|
|
81
|
$item{__ACTION1__}=$_tok; |
13128
|
|
|
|
|
|
|
|
13129
|
|
|
|
|
|
|
|
13130
|
41
|
50
|
|
|
|
87
|
Parse::RecDescent::_trace(q{>>Matched production: [TEXT basicfields textlines bodyMD5 bodydisp bodylang bodyextra bodyextensions]<<}, |
13131
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13132
|
|
|
|
|
|
|
q{textmessage}, |
13133
|
|
|
|
|
|
|
$tracelevel) |
13134
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13135
|
|
|
|
|
|
|
|
13136
|
|
|
|
|
|
|
|
13137
|
|
|
|
|
|
|
|
13138
|
41
|
|
|
|
|
65
|
$_matched = 1; |
13139
|
41
|
|
|
|
|
78
|
last; |
13140
|
|
|
|
|
|
|
} |
13141
|
|
|
|
|
|
|
|
13142
|
|
|
|
|
|
|
splice |
13143
|
94
|
100
|
|
|
|
291
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
53
|
|
|
|
|
160
|
|
13144
|
|
|
|
|
|
|
|
13145
|
94
|
100
|
66
|
|
|
292
|
unless ( $_matched || defined($score) ) |
13146
|
|
|
|
|
|
|
{ |
13147
|
53
|
|
|
|
|
91
|
splice @{$thisparser->{deferred}}, $def_at; |
|
53
|
|
|
|
|
94
|
|
13148
|
|
|
|
|
|
|
|
13149
|
|
|
|
|
|
|
|
13150
|
53
|
|
|
|
|
87
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
13151
|
53
|
50
|
|
|
|
116
|
Parse::RecDescent::_trace(q{<>}, |
13152
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
13153
|
|
|
|
|
|
|
q{textmessage}, |
13154
|
|
|
|
|
|
|
$tracelevel) |
13155
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13156
|
53
|
|
|
|
|
262
|
return undef; |
13157
|
|
|
|
|
|
|
} |
13158
|
41
|
50
|
33
|
|
|
140
|
if (!defined($return) && defined($score)) |
13159
|
|
|
|
|
|
|
{ |
13160
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
13161
|
|
|
|
|
|
|
q{textmessage}, |
13162
|
|
|
|
|
|
|
$tracelevel) |
13163
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13164
|
0
|
|
|
|
|
0
|
$return = $score_return; |
13165
|
|
|
|
|
|
|
} |
13166
|
41
|
|
|
|
|
74
|
splice @{$thisparser->{errors}}, $err_at; |
|
41
|
|
|
|
|
92
|
|
13167
|
41
|
50
|
|
|
|
102
|
$return = $item[$#item] unless defined $return; |
13168
|
41
|
50
|
|
|
|
111
|
if (defined $::RD_TRACE) |
13169
|
|
|
|
|
|
|
{ |
13170
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
13171
|
|
|
|
|
|
|
$return . q{])}, "", |
13172
|
|
|
|
|
|
|
q{textmessage}, |
13173
|
|
|
|
|
|
|
$tracelevel); |
13174
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
13175
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
13176
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13177
|
|
|
|
|
|
|
, q{textmessage}, |
13178
|
|
|
|
|
|
|
$tracelevel) |
13179
|
|
|
|
|
|
|
} |
13180
|
41
|
|
|
|
|
80
|
$_[1] = $text; |
13181
|
41
|
|
|
|
|
331
|
return $return; |
13182
|
|
|
|
|
|
|
} |
13183
|
|
|
|
|
|
|
|
13184
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
13185
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::to |
13186
|
|
|
|
|
|
|
{ |
13187
|
24
|
|
|
24
|
|
51
|
my $thisparser = $_[0]; |
13188
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
363
|
|
13189
|
24
|
|
50
|
|
|
74
|
local $tracelevel = ($tracelevel||0)+1; |
13190
|
24
|
|
|
|
|
43
|
$ERRORS = 0; |
13191
|
24
|
|
|
|
|
68
|
my $thisrule = $thisparser->{"rules"}{"to"}; |
13192
|
|
|
|
|
|
|
|
13193
|
24
|
50
|
|
|
|
57
|
Parse::RecDescent::_trace(q{Trying rule: [to]}, |
13194
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
13195
|
|
|
|
|
|
|
q{to}, |
13196
|
|
|
|
|
|
|
$tracelevel) |
13197
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13198
|
|
|
|
|
|
|
|
13199
|
24
|
|
|
|
|
45
|
my $def_at = @{$thisparser->{deferred}}; |
|
24
|
|
|
|
|
64
|
|
13200
|
24
|
|
|
|
|
69
|
my $err_at = @{$thisparser->{errors}}; |
|
24
|
|
|
|
|
70
|
|
13201
|
|
|
|
|
|
|
|
13202
|
24
|
|
|
|
|
73
|
my $score; |
13203
|
|
|
|
|
|
|
my $score_return; |
13204
|
24
|
|
|
|
|
0
|
my $_tok; |
13205
|
24
|
|
|
|
|
48
|
my $return = undef; |
13206
|
24
|
|
|
|
|
36
|
my $_matched=0; |
13207
|
24
|
|
|
|
|
47
|
my $commit=0; |
13208
|
24
|
|
|
|
|
50
|
my @item = (); |
13209
|
24
|
|
|
|
|
59
|
my %item = (); |
13210
|
24
|
|
|
|
|
44
|
my $repeating = $_[2]; |
13211
|
24
|
|
|
|
|
43
|
my $_noactions = $_[3]; |
13212
|
24
|
50
|
|
|
|
56
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
24
|
|
|
|
|
39
|
|
|
24
|
|
|
|
|
48
|
|
13213
|
24
|
|
|
|
|
43
|
my $_itempos = $_[5]; |
13214
|
24
|
50
|
|
|
|
78
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
13215
|
24
|
|
|
|
|
77
|
my $text; |
13216
|
|
|
|
|
|
|
my $lastsep; |
13217
|
24
|
|
|
|
|
0
|
my $current_match; |
13218
|
24
|
|
|
|
|
67
|
my $expectation = new Parse::RecDescent::Expectation(q{ADDRESSES}); |
13219
|
24
|
|
|
|
|
171
|
$expectation->at($_[1]); |
13220
|
|
|
|
|
|
|
|
13221
|
24
|
|
|
|
|
107
|
my $thisline; |
13222
|
24
|
|
|
|
|
96
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
13223
|
|
|
|
|
|
|
|
13224
|
|
|
|
|
|
|
|
13225
|
|
|
|
|
|
|
|
13226
|
24
|
|
33
|
|
|
228
|
while (!$_matched && !$commit) |
13227
|
|
|
|
|
|
|
{ |
13228
|
|
|
|
|
|
|
|
13229
|
24
|
50
|
|
|
|
65
|
Parse::RecDescent::_trace(q{Trying production: [ADDRESSES]}, |
13230
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
13231
|
|
|
|
|
|
|
q{to}, |
13232
|
|
|
|
|
|
|
$tracelevel) |
13233
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13234
|
24
|
|
|
|
|
78
|
my $thisprod = $thisrule->{"prods"}[0]; |
13235
|
24
|
|
|
|
|
47
|
$text = $_[1]; |
13236
|
24
|
|
|
|
|
42
|
my $_savetext; |
13237
|
24
|
|
|
|
|
50
|
@item = (q{to}); |
13238
|
24
|
|
|
|
|
61
|
%item = (__RULE__ => q{to}); |
13239
|
24
|
|
|
|
|
46
|
my $repcount = 0; |
13240
|
|
|
|
|
|
|
|
13241
|
|
|
|
|
|
|
|
13242
|
24
|
50
|
|
|
|
77
|
Parse::RecDescent::_trace(q{Trying subrule: [ADDRESSES]}, |
13243
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13244
|
|
|
|
|
|
|
q{to}, |
13245
|
|
|
|
|
|
|
$tracelevel) |
13246
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13247
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
17
|
|
|
1
|
|
|
|
|
442
|
|
|
24
|
|
|
|
|
36
|
|
13248
|
24
|
|
|
|
|
72
|
$expectation->is(q{})->at($text); |
13249
|
24
|
50
|
|
24
|
|
258
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::ADDRESSES($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
24
|
|
|
|
|
80
|
|
13250
|
|
|
|
|
|
|
{ |
13251
|
|
|
|
|
|
|
|
13252
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
13253
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13254
|
|
|
|
|
|
|
q{to}, |
13255
|
|
|
|
|
|
|
$tracelevel) |
13256
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13257
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
13258
|
0
|
|
|
|
|
0
|
last; |
13259
|
|
|
|
|
|
|
} |
13260
|
24
|
50
|
|
|
|
110
|
Parse::RecDescent::_trace(q{>>Matched subrule: [ADDRESSES]<< (return value: [} |
13261
|
|
|
|
|
|
|
. $_tok . q{]}, |
13262
|
|
|
|
|
|
|
|
13263
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13264
|
|
|
|
|
|
|
q{to}, |
13265
|
|
|
|
|
|
|
$tracelevel) |
13266
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13267
|
24
|
|
|
|
|
59
|
$item{q{ADDRESSES}} = $_tok; |
13268
|
24
|
|
|
|
|
53
|
push @item, $_tok; |
13269
|
|
|
|
|
|
|
|
13270
|
|
|
|
|
|
|
} |
13271
|
|
|
|
|
|
|
|
13272
|
24
|
50
|
|
|
|
60
|
Parse::RecDescent::_trace(q{>>Matched production: [ADDRESSES]<<}, |
13273
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13274
|
|
|
|
|
|
|
q{to}, |
13275
|
|
|
|
|
|
|
$tracelevel) |
13276
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13277
|
|
|
|
|
|
|
|
13278
|
|
|
|
|
|
|
|
13279
|
|
|
|
|
|
|
|
13280
|
24
|
|
|
|
|
41
|
$_matched = 1; |
13281
|
24
|
|
|
|
|
42
|
last; |
13282
|
|
|
|
|
|
|
} |
13283
|
|
|
|
|
|
|
|
13284
|
|
|
|
|
|
|
splice |
13285
|
24
|
50
|
|
|
|
68
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
13286
|
|
|
|
|
|
|
|
13287
|
24
|
50
|
33
|
|
|
78
|
unless ( $_matched || defined($score) ) |
13288
|
|
|
|
|
|
|
{ |
13289
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
13290
|
|
|
|
|
|
|
|
13291
|
|
|
|
|
|
|
|
13292
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
13293
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
13294
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
13295
|
|
|
|
|
|
|
q{to}, |
13296
|
|
|
|
|
|
|
$tracelevel) |
13297
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13298
|
0
|
|
|
|
|
0
|
return undef; |
13299
|
|
|
|
|
|
|
} |
13300
|
24
|
50
|
33
|
|
|
104
|
if (!defined($return) && defined($score)) |
13301
|
|
|
|
|
|
|
{ |
13302
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
13303
|
|
|
|
|
|
|
q{to}, |
13304
|
|
|
|
|
|
|
$tracelevel) |
13305
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13306
|
0
|
|
|
|
|
0
|
$return = $score_return; |
13307
|
|
|
|
|
|
|
} |
13308
|
24
|
|
|
|
|
47
|
splice @{$thisparser->{errors}}, $err_at; |
|
24
|
|
|
|
|
66
|
|
13309
|
24
|
50
|
|
|
|
79
|
$return = $item[$#item] unless defined $return; |
13310
|
24
|
50
|
|
|
|
60
|
if (defined $::RD_TRACE) |
13311
|
|
|
|
|
|
|
{ |
13312
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
13313
|
|
|
|
|
|
|
$return . q{])}, "", |
13314
|
|
|
|
|
|
|
q{to}, |
13315
|
|
|
|
|
|
|
$tracelevel); |
13316
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
13317
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
13318
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13319
|
|
|
|
|
|
|
, q{to}, |
13320
|
|
|
|
|
|
|
$tracelevel) |
13321
|
|
|
|
|
|
|
} |
13322
|
24
|
|
|
|
|
62
|
$_[1] = $text; |
13323
|
24
|
|
|
|
|
134
|
return $return; |
13324
|
|
|
|
|
|
|
} |
13325
|
|
|
|
|
|
|
|
13326
|
|
|
|
|
|
|
# ARGS ARE: ($parser, $text; $repeating, $_noactions, \@args, $_itempos) |
13327
|
|
|
|
|
|
|
sub Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::value |
13328
|
|
|
|
|
|
|
{ |
13329
|
132
|
|
|
132
|
|
223
|
my $thisparser = $_[0]; |
13330
|
1
|
|
|
1
|
|
9
|
use vars q{$tracelevel}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
359
|
|
13331
|
132
|
|
50
|
|
|
336
|
local $tracelevel = ($tracelevel||0)+1; |
13332
|
132
|
|
|
|
|
193
|
$ERRORS = 0; |
13333
|
132
|
|
|
|
|
259
|
my $thisrule = $thisparser->{"rules"}{"value"}; |
13334
|
|
|
|
|
|
|
|
13335
|
132
|
50
|
|
|
|
338
|
Parse::RecDescent::_trace(q{Trying rule: [value]}, |
13336
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
13337
|
|
|
|
|
|
|
q{value}, |
13338
|
|
|
|
|
|
|
$tracelevel) |
13339
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13340
|
|
|
|
|
|
|
|
13341
|
132
|
|
|
|
|
182
|
my $def_at = @{$thisparser->{deferred}}; |
|
132
|
|
|
|
|
267
|
|
13342
|
132
|
|
|
|
|
192
|
my $err_at = @{$thisparser->{errors}}; |
|
132
|
|
|
|
|
221
|
|
13343
|
|
|
|
|
|
|
|
13344
|
132
|
|
|
|
|
328
|
my $score; |
13345
|
|
|
|
|
|
|
my $score_return; |
13346
|
132
|
|
|
|
|
0
|
my $_tok; |
13347
|
132
|
|
|
|
|
227
|
my $return = undef; |
13348
|
132
|
|
|
|
|
200
|
my $_matched=0; |
13349
|
132
|
|
|
|
|
193
|
my $commit=0; |
13350
|
132
|
|
|
|
|
241
|
my @item = (); |
13351
|
132
|
|
|
|
|
195
|
my %item = (); |
13352
|
132
|
|
|
|
|
239
|
my $repeating = $_[2]; |
13353
|
132
|
|
|
|
|
193
|
my $_noactions = $_[3]; |
13354
|
132
|
50
|
|
|
|
286
|
my @arg = defined $_[4] ? @{ &{$_[4]} } : (); |
|
132
|
|
|
|
|
214
|
|
|
132
|
|
|
|
|
260
|
|
13355
|
132
|
|
|
|
|
230
|
my $_itempos = $_[5]; |
13356
|
132
|
50
|
|
|
|
326
|
my %arg = ($#arg & 01) ? @arg : (@arg, undef); |
13357
|
132
|
|
|
|
|
306
|
my $text; |
13358
|
|
|
|
|
|
|
my $lastsep; |
13359
|
132
|
|
|
|
|
0
|
my $current_match; |
13360
|
132
|
|
|
|
|
375
|
my $expectation = new Parse::RecDescent::Expectation(q{NIL, or NUMBER, or STRING, or KVPAIRS}); |
13361
|
132
|
|
|
|
|
1038
|
$expectation->at($_[1]); |
13362
|
|
|
|
|
|
|
|
13363
|
132
|
|
|
|
|
535
|
my $thisline; |
13364
|
132
|
|
|
|
|
487
|
tie $thisline, q{Parse::RecDescent::LineCounter}, \$text, $thisparser; |
13365
|
|
|
|
|
|
|
|
13366
|
|
|
|
|
|
|
|
13367
|
|
|
|
|
|
|
|
13368
|
132
|
|
33
|
|
|
1071
|
while (!$_matched && !$commit) |
13369
|
|
|
|
|
|
|
{ |
13370
|
|
|
|
|
|
|
|
13371
|
132
|
50
|
|
|
|
302
|
Parse::RecDescent::_trace(q{Trying production: [NIL]}, |
13372
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
13373
|
|
|
|
|
|
|
q{value}, |
13374
|
|
|
|
|
|
|
$tracelevel) |
13375
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13376
|
132
|
|
|
|
|
278
|
my $thisprod = $thisrule->{"prods"}[0]; |
13377
|
132
|
|
|
|
|
227
|
$text = $_[1]; |
13378
|
132
|
|
|
|
|
211
|
my $_savetext; |
13379
|
132
|
|
|
|
|
248
|
@item = (q{value}); |
13380
|
132
|
|
|
|
|
258
|
%item = (__RULE__ => q{value}); |
13381
|
132
|
|
|
|
|
203
|
my $repcount = 0; |
13382
|
|
|
|
|
|
|
|
13383
|
|
|
|
|
|
|
|
13384
|
132
|
50
|
|
|
|
271
|
Parse::RecDescent::_trace(q{Trying subrule: [NIL]}, |
13385
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13386
|
|
|
|
|
|
|
q{value}, |
13387
|
|
|
|
|
|
|
$tracelevel) |
13388
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13389
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
286
|
|
|
132
|
|
|
|
|
180
|
|
13390
|
132
|
|
|
|
|
306
|
$expectation->is(q{})->at($text); |
13391
|
132
|
100
|
|
132
|
|
1223
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NIL($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
132
|
|
|
|
|
231
|
|
13392
|
|
|
|
|
|
|
{ |
13393
|
|
|
|
|
|
|
|
13394
|
120
|
50
|
|
|
|
242
|
Parse::RecDescent::_trace(q{<>}, |
13395
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13396
|
|
|
|
|
|
|
q{value}, |
13397
|
|
|
|
|
|
|
$tracelevel) |
13398
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13399
|
120
|
|
|
|
|
339
|
$expectation->failed(); |
13400
|
120
|
|
|
|
|
416
|
last; |
13401
|
|
|
|
|
|
|
} |
13402
|
12
|
50
|
|
|
|
49
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NIL]<< (return value: [} |
13403
|
|
|
|
|
|
|
. $_tok . q{]}, |
13404
|
|
|
|
|
|
|
|
13405
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13406
|
|
|
|
|
|
|
q{value}, |
13407
|
|
|
|
|
|
|
$tracelevel) |
13408
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13409
|
12
|
|
|
|
|
33
|
$item{q{NIL}} = $_tok; |
13410
|
12
|
|
|
|
|
31
|
push @item, $_tok; |
13411
|
|
|
|
|
|
|
|
13412
|
|
|
|
|
|
|
} |
13413
|
|
|
|
|
|
|
|
13414
|
12
|
50
|
|
|
|
36
|
Parse::RecDescent::_trace(q{>>Matched production: [NIL]<<}, |
13415
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13416
|
|
|
|
|
|
|
q{value}, |
13417
|
|
|
|
|
|
|
$tracelevel) |
13418
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13419
|
|
|
|
|
|
|
|
13420
|
|
|
|
|
|
|
|
13421
|
|
|
|
|
|
|
|
13422
|
12
|
|
|
|
|
22
|
$_matched = 1; |
13423
|
12
|
|
|
|
|
22
|
last; |
13424
|
|
|
|
|
|
|
} |
13425
|
|
|
|
|
|
|
|
13426
|
|
|
|
|
|
|
splice |
13427
|
132
|
100
|
|
|
|
440
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
120
|
|
|
|
|
246
|
|
13428
|
|
|
|
|
|
|
|
13429
|
132
|
|
66
|
|
|
594
|
while (!$_matched && !$commit) |
13430
|
|
|
|
|
|
|
{ |
13431
|
|
|
|
|
|
|
|
13432
|
120
|
50
|
|
|
|
267
|
Parse::RecDescent::_trace(q{Trying production: [NUMBER]}, |
13433
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
13434
|
|
|
|
|
|
|
q{value}, |
13435
|
|
|
|
|
|
|
$tracelevel) |
13436
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13437
|
120
|
|
|
|
|
237
|
my $thisprod = $thisrule->{"prods"}[1]; |
13438
|
120
|
|
|
|
|
216
|
$text = $_[1]; |
13439
|
120
|
|
|
|
|
172
|
my $_savetext; |
13440
|
120
|
|
|
|
|
296
|
@item = (q{value}); |
13441
|
120
|
|
|
|
|
274
|
%item = (__RULE__ => q{value}); |
13442
|
120
|
|
|
|
|
180
|
my $repcount = 0; |
13443
|
|
|
|
|
|
|
|
13444
|
|
|
|
|
|
|
|
13445
|
120
|
50
|
|
|
|
337
|
Parse::RecDescent::_trace(q{Trying subrule: [NUMBER]}, |
13446
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13447
|
|
|
|
|
|
|
q{value}, |
13448
|
|
|
|
|
|
|
$tracelevel) |
13449
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13450
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
316
|
|
|
120
|
|
|
|
|
226
|
|
13451
|
120
|
|
|
|
|
305
|
$expectation->is(q{})->at($text); |
13452
|
120
|
50
|
|
120
|
|
1166
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::NUMBER($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
120
|
|
|
|
|
223
|
|
13453
|
|
|
|
|
|
|
{ |
13454
|
|
|
|
|
|
|
|
13455
|
120
|
50
|
|
|
|
265
|
Parse::RecDescent::_trace(q{<>}, |
13456
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13457
|
|
|
|
|
|
|
q{value}, |
13458
|
|
|
|
|
|
|
$tracelevel) |
13459
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13460
|
120
|
|
|
|
|
429
|
$expectation->failed(); |
13461
|
120
|
|
|
|
|
416
|
last; |
13462
|
|
|
|
|
|
|
} |
13463
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched subrule: [NUMBER]<< (return value: [} |
13464
|
|
|
|
|
|
|
. $_tok . q{]}, |
13465
|
|
|
|
|
|
|
|
13466
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13467
|
|
|
|
|
|
|
q{value}, |
13468
|
|
|
|
|
|
|
$tracelevel) |
13469
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13470
|
0
|
|
|
|
|
0
|
$item{q{NUMBER}} = $_tok; |
13471
|
0
|
|
|
|
|
0
|
push @item, $_tok; |
13472
|
|
|
|
|
|
|
|
13473
|
|
|
|
|
|
|
} |
13474
|
|
|
|
|
|
|
|
13475
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched production: [NUMBER]<<}, |
13476
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13477
|
|
|
|
|
|
|
q{value}, |
13478
|
|
|
|
|
|
|
$tracelevel) |
13479
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13480
|
|
|
|
|
|
|
|
13481
|
|
|
|
|
|
|
|
13482
|
|
|
|
|
|
|
|
13483
|
0
|
|
|
|
|
0
|
$_matched = 1; |
13484
|
0
|
|
|
|
|
0
|
last; |
13485
|
|
|
|
|
|
|
} |
13486
|
|
|
|
|
|
|
|
13487
|
|
|
|
|
|
|
splice |
13488
|
132
|
100
|
|
|
|
496
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
120
|
|
|
|
|
260
|
|
13489
|
|
|
|
|
|
|
|
13490
|
132
|
|
66
|
|
|
468
|
while (!$_matched && !$commit) |
13491
|
|
|
|
|
|
|
{ |
13492
|
|
|
|
|
|
|
|
13493
|
120
|
50
|
|
|
|
254
|
Parse::RecDescent::_trace(q{Trying production: [STRING]}, |
13494
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
13495
|
|
|
|
|
|
|
q{value}, |
13496
|
|
|
|
|
|
|
$tracelevel) |
13497
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13498
|
120
|
|
|
|
|
204
|
my $thisprod = $thisrule->{"prods"}[2]; |
13499
|
120
|
|
|
|
|
227
|
$text = $_[1]; |
13500
|
120
|
|
|
|
|
193
|
my $_savetext; |
13501
|
120
|
|
|
|
|
275
|
@item = (q{value}); |
13502
|
120
|
|
|
|
|
275
|
%item = (__RULE__ => q{value}); |
13503
|
120
|
|
|
|
|
181
|
my $repcount = 0; |
13504
|
|
|
|
|
|
|
|
13505
|
|
|
|
|
|
|
|
13506
|
120
|
50
|
|
|
|
557
|
Parse::RecDescent::_trace(q{Trying subrule: [STRING]}, |
13507
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13508
|
|
|
|
|
|
|
q{value}, |
13509
|
|
|
|
|
|
|
$tracelevel) |
13510
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13511
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
301
|
|
|
120
|
|
|
|
|
166
|
|
13512
|
120
|
|
|
|
|
275
|
$expectation->is(q{})->at($text); |
13513
|
120
|
100
|
|
120
|
|
1209
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::STRING($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
120
|
|
|
|
|
257
|
|
13514
|
|
|
|
|
|
|
{ |
13515
|
|
|
|
|
|
|
|
13516
|
16
|
50
|
|
|
|
56
|
Parse::RecDescent::_trace(q{<>}, |
13517
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13518
|
|
|
|
|
|
|
q{value}, |
13519
|
|
|
|
|
|
|
$tracelevel) |
13520
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13521
|
16
|
|
|
|
|
54
|
$expectation->failed(); |
13522
|
16
|
|
|
|
|
60
|
last; |
13523
|
|
|
|
|
|
|
} |
13524
|
104
|
50
|
|
|
|
375
|
Parse::RecDescent::_trace(q{>>Matched subrule: [STRING]<< (return value: [} |
13525
|
|
|
|
|
|
|
. $_tok . q{]}, |
13526
|
|
|
|
|
|
|
|
13527
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13528
|
|
|
|
|
|
|
q{value}, |
13529
|
|
|
|
|
|
|
$tracelevel) |
13530
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13531
|
104
|
|
|
|
|
222
|
$item{q{STRING}} = $_tok; |
13532
|
104
|
|
|
|
|
184
|
push @item, $_tok; |
13533
|
|
|
|
|
|
|
|
13534
|
|
|
|
|
|
|
} |
13535
|
|
|
|
|
|
|
|
13536
|
104
|
50
|
|
|
|
213
|
Parse::RecDescent::_trace(q{>>Matched production: [STRING]<<}, |
13537
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13538
|
|
|
|
|
|
|
q{value}, |
13539
|
|
|
|
|
|
|
$tracelevel) |
13540
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13541
|
|
|
|
|
|
|
|
13542
|
|
|
|
|
|
|
|
13543
|
|
|
|
|
|
|
|
13544
|
104
|
|
|
|
|
155
|
$_matched = 1; |
13545
|
104
|
|
|
|
|
171
|
last; |
13546
|
|
|
|
|
|
|
} |
13547
|
|
|
|
|
|
|
|
13548
|
|
|
|
|
|
|
splice |
13549
|
132
|
100
|
|
|
|
273
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
16
|
|
|
|
|
37
|
|
13550
|
|
|
|
|
|
|
|
13551
|
132
|
|
66
|
|
|
307
|
while (!$_matched && !$commit) |
13552
|
|
|
|
|
|
|
{ |
13553
|
|
|
|
|
|
|
|
13554
|
16
|
50
|
|
|
|
44
|
Parse::RecDescent::_trace(q{Trying production: [KVPAIRS]}, |
13555
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
13556
|
|
|
|
|
|
|
q{value}, |
13557
|
|
|
|
|
|
|
$tracelevel) |
13558
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13559
|
16
|
|
|
|
|
35
|
my $thisprod = $thisrule->{"prods"}[3]; |
13560
|
16
|
|
|
|
|
37
|
$text = $_[1]; |
13561
|
16
|
|
|
|
|
25
|
my $_savetext; |
13562
|
16
|
|
|
|
|
41
|
@item = (q{value}); |
13563
|
16
|
|
|
|
|
40
|
%item = (__RULE__ => q{value}); |
13564
|
16
|
|
|
|
|
32
|
my $repcount = 0; |
13565
|
|
|
|
|
|
|
|
13566
|
|
|
|
|
|
|
|
13567
|
16
|
50
|
|
|
|
42
|
Parse::RecDescent::_trace(q{Trying subrule: [KVPAIRS]}, |
13568
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13569
|
|
|
|
|
|
|
q{value}, |
13570
|
|
|
|
|
|
|
$tracelevel) |
13571
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13572
|
1
|
|
|
1
|
|
8
|
if (1) { no strict qw{refs}; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
8731
|
|
|
16
|
|
|
|
|
28
|
|
13573
|
16
|
|
|
|
|
39
|
$expectation->is(q{})->at($text); |
13574
|
16
|
50
|
|
16
|
|
193
|
unless (defined ($_tok = Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse::KVPAIRS($thisparser,$text,$repeating,$_noactions,sub { \@arg },undef))) |
|
16
|
|
|
|
|
35
|
|
13575
|
|
|
|
|
|
|
{ |
13576
|
|
|
|
|
|
|
|
13577
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
13578
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13579
|
|
|
|
|
|
|
q{value}, |
13580
|
|
|
|
|
|
|
$tracelevel) |
13581
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13582
|
0
|
|
|
|
|
0
|
$expectation->failed(); |
13583
|
0
|
|
|
|
|
0
|
last; |
13584
|
|
|
|
|
|
|
} |
13585
|
16
|
50
|
|
|
|
65
|
Parse::RecDescent::_trace(q{>>Matched subrule: [KVPAIRS]<< (return value: [} |
13586
|
|
|
|
|
|
|
. $_tok . q{]}, |
13587
|
|
|
|
|
|
|
|
13588
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13589
|
|
|
|
|
|
|
q{value}, |
13590
|
|
|
|
|
|
|
$tracelevel) |
13591
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13592
|
16
|
|
|
|
|
41
|
$item{q{KVPAIRS}} = $_tok; |
13593
|
16
|
|
|
|
|
35
|
push @item, $_tok; |
13594
|
|
|
|
|
|
|
|
13595
|
|
|
|
|
|
|
} |
13596
|
|
|
|
|
|
|
|
13597
|
16
|
50
|
|
|
|
50
|
Parse::RecDescent::_trace(q{>>Matched production: [KVPAIRS]<<}, |
13598
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13599
|
|
|
|
|
|
|
q{value}, |
13600
|
|
|
|
|
|
|
$tracelevel) |
13601
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13602
|
|
|
|
|
|
|
|
13603
|
|
|
|
|
|
|
|
13604
|
|
|
|
|
|
|
|
13605
|
16
|
|
|
|
|
29
|
$_matched = 1; |
13606
|
16
|
|
|
|
|
29
|
last; |
13607
|
|
|
|
|
|
|
} |
13608
|
|
|
|
|
|
|
|
13609
|
|
|
|
|
|
|
splice |
13610
|
132
|
50
|
|
|
|
301
|
@{$thisparser->{deferred}}, $def_at unless $_matched; |
|
0
|
|
|
|
|
0
|
|
13611
|
|
|
|
|
|
|
|
13612
|
132
|
50
|
33
|
|
|
275
|
unless ( $_matched || defined($score) ) |
13613
|
|
|
|
|
|
|
{ |
13614
|
0
|
|
|
|
|
0
|
splice @{$thisparser->{deferred}}, $def_at; |
|
0
|
|
|
|
|
0
|
|
13615
|
|
|
|
|
|
|
|
13616
|
|
|
|
|
|
|
|
13617
|
0
|
|
|
|
|
0
|
$_[1] = $text; # NOT SURE THIS IS NEEDED |
13618
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{<>}, |
13619
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($_[1]), |
13620
|
|
|
|
|
|
|
q{value}, |
13621
|
|
|
|
|
|
|
$tracelevel) |
13622
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13623
|
0
|
|
|
|
|
0
|
return undef; |
13624
|
|
|
|
|
|
|
} |
13625
|
132
|
50
|
33
|
|
|
456
|
if (!defined($return) && defined($score)) |
13626
|
|
|
|
|
|
|
{ |
13627
|
0
|
0
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Accepted scored production<<}, "", |
13628
|
|
|
|
|
|
|
q{value}, |
13629
|
|
|
|
|
|
|
$tracelevel) |
13630
|
|
|
|
|
|
|
if defined $::RD_TRACE; |
13631
|
0
|
|
|
|
|
0
|
$return = $score_return; |
13632
|
|
|
|
|
|
|
} |
13633
|
132
|
|
|
|
|
225
|
splice @{$thisparser->{errors}}, $err_at; |
|
132
|
|
|
|
|
243
|
|
13634
|
132
|
50
|
|
|
|
337
|
$return = $item[$#item] unless defined $return; |
13635
|
132
|
50
|
|
|
|
258
|
if (defined $::RD_TRACE) |
13636
|
|
|
|
|
|
|
{ |
13637
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{>>Matched rule<< (return value: [} . |
13638
|
|
|
|
|
|
|
$return . q{])}, "", |
13639
|
|
|
|
|
|
|
q{value}, |
13640
|
|
|
|
|
|
|
$tracelevel); |
13641
|
0
|
|
|
|
|
0
|
Parse::RecDescent::_trace(q{(consumed: [} . |
13642
|
|
|
|
|
|
|
Parse::RecDescent::_tracemax(substr($_[1],0,-length($text))) . q{])}, |
13643
|
|
|
|
|
|
|
Parse::RecDescent::_tracefirst($text), |
13644
|
|
|
|
|
|
|
, q{value}, |
13645
|
|
|
|
|
|
|
$tracelevel) |
13646
|
|
|
|
|
|
|
} |
13647
|
132
|
|
|
|
|
300
|
$_[1] = $text; |
13648
|
132
|
|
|
|
|
664
|
return $return; |
13649
|
|
|
|
|
|
|
} |
13650
|
|
|
|
|
|
|
} |
13651
|
1
|
|
|
1
|
0
|
1021
|
package Mail::IMAPClient::BodyStructure::Parse; sub new { my $self = bless( { |
13652
|
|
|
|
|
|
|
'_AUTOACTION' => undef, |
13653
|
|
|
|
|
|
|
'_AUTOTREE' => undef, |
13654
|
|
|
|
|
|
|
'_check' => { |
13655
|
|
|
|
|
|
|
'itempos' => '', |
13656
|
|
|
|
|
|
|
'prevcolumn' => '', |
13657
|
|
|
|
|
|
|
'prevline' => '', |
13658
|
|
|
|
|
|
|
'prevoffset' => '', |
13659
|
|
|
|
|
|
|
'thiscolumn' => '', |
13660
|
|
|
|
|
|
|
'thisoffset' => '' |
13661
|
|
|
|
|
|
|
}, |
13662
|
|
|
|
|
|
|
'deferrable' => 1, |
13663
|
|
|
|
|
|
|
'localvars' => '', |
13664
|
|
|
|
|
|
|
'namespace' => 'Parse::RecDescent::Mail::IMAPClient::BodyStructure::Parse', |
13665
|
|
|
|
|
|
|
'rules' => { |
13666
|
|
|
|
|
|
|
'ADDRESSES' => bless( { |
13667
|
|
|
|
|
|
|
'calls' => [ |
13668
|
|
|
|
|
|
|
'NIL', |
13669
|
|
|
|
|
|
|
'RFCNONCOMPLY', |
13670
|
|
|
|
|
|
|
'addressstruct' |
13671
|
|
|
|
|
|
|
], |
13672
|
|
|
|
|
|
|
'changed' => 0, |
13673
|
|
|
|
|
|
|
'impcount' => 0, |
13674
|
|
|
|
|
|
|
'line' => 96, |
13675
|
|
|
|
|
|
|
'name' => 'ADDRESSES', |
13676
|
|
|
|
|
|
|
'opcount' => 0, |
13677
|
|
|
|
|
|
|
'prods' => [ |
13678
|
|
|
|
|
|
|
bless( { |
13679
|
|
|
|
|
|
|
'actcount' => 0, |
13680
|
|
|
|
|
|
|
'dircount' => 0, |
13681
|
|
|
|
|
|
|
'error' => undef, |
13682
|
|
|
|
|
|
|
'items' => [ |
13683
|
|
|
|
|
|
|
bless( { |
13684
|
|
|
|
|
|
|
'argcode' => undef, |
13685
|
|
|
|
|
|
|
'implicit' => undef, |
13686
|
|
|
|
|
|
|
'line' => 96, |
13687
|
|
|
|
|
|
|
'lookahead' => 0, |
13688
|
|
|
|
|
|
|
'matchrule' => 0, |
13689
|
|
|
|
|
|
|
'subrule' => 'NIL' |
13690
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
13691
|
|
|
|
|
|
|
], |
13692
|
|
|
|
|
|
|
'line' => undef, |
13693
|
|
|
|
|
|
|
'number' => 0, |
13694
|
|
|
|
|
|
|
'patcount' => 0, |
13695
|
|
|
|
|
|
|
'strcount' => 0, |
13696
|
|
|
|
|
|
|
'uncommit' => undef |
13697
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
13698
|
|
|
|
|
|
|
bless( { |
13699
|
|
|
|
|
|
|
'actcount' => 0, |
13700
|
|
|
|
|
|
|
'dircount' => 0, |
13701
|
|
|
|
|
|
|
'error' => undef, |
13702
|
|
|
|
|
|
|
'items' => [ |
13703
|
|
|
|
|
|
|
bless( { |
13704
|
|
|
|
|
|
|
'argcode' => undef, |
13705
|
|
|
|
|
|
|
'implicit' => undef, |
13706
|
|
|
|
|
|
|
'line' => 96, |
13707
|
|
|
|
|
|
|
'lookahead' => 0, |
13708
|
|
|
|
|
|
|
'matchrule' => 0, |
13709
|
|
|
|
|
|
|
'subrule' => 'RFCNONCOMPLY' |
13710
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
13711
|
|
|
|
|
|
|
], |
13712
|
|
|
|
|
|
|
'line' => 96, |
13713
|
|
|
|
|
|
|
'number' => 1, |
13714
|
|
|
|
|
|
|
'patcount' => 0, |
13715
|
|
|
|
|
|
|
'strcount' => 0, |
13716
|
|
|
|
|
|
|
'uncommit' => undef |
13717
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
13718
|
|
|
|
|
|
|
bless( { |
13719
|
|
|
|
|
|
|
'actcount' => 1, |
13720
|
|
|
|
|
|
|
'dircount' => 0, |
13721
|
|
|
|
|
|
|
'error' => undef, |
13722
|
|
|
|
|
|
|
'items' => [ |
13723
|
|
|
|
|
|
|
bless( { |
13724
|
|
|
|
|
|
|
'description' => '\'(\'', |
13725
|
|
|
|
|
|
|
'hashname' => '__STRING1__', |
13726
|
|
|
|
|
|
|
'line' => 97, |
13727
|
|
|
|
|
|
|
'lookahead' => 0, |
13728
|
|
|
|
|
|
|
'pattern' => '(' |
13729
|
|
|
|
|
|
|
}, 'Parse::RecDescent::InterpLit' ), |
13730
|
|
|
|
|
|
|
bless( { |
13731
|
|
|
|
|
|
|
'argcode' => undef, |
13732
|
|
|
|
|
|
|
'expected' => undef, |
13733
|
|
|
|
|
|
|
'line' => 97, |
13734
|
|
|
|
|
|
|
'lookahead' => 0, |
13735
|
|
|
|
|
|
|
'matchrule' => 0, |
13736
|
|
|
|
|
|
|
'max' => 100000000, |
13737
|
|
|
|
|
|
|
'min' => 1, |
13738
|
|
|
|
|
|
|
'repspec' => 's', |
13739
|
|
|
|
|
|
|
'subrule' => 'addressstruct' |
13740
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
13741
|
|
|
|
|
|
|
bless( { |
13742
|
|
|
|
|
|
|
'description' => '\')\'', |
13743
|
|
|
|
|
|
|
'hashname' => '__STRING2__', |
13744
|
|
|
|
|
|
|
'line' => 97, |
13745
|
|
|
|
|
|
|
'lookahead' => 0, |
13746
|
|
|
|
|
|
|
'pattern' => ')' |
13747
|
|
|
|
|
|
|
}, 'Parse::RecDescent::InterpLit' ), |
13748
|
|
|
|
|
|
|
bless( { |
13749
|
|
|
|
|
|
|
'code' => '{ $return = $item{\'addressstruct(s)\'} }', |
13750
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
13751
|
|
|
|
|
|
|
'line' => 97, |
13752
|
|
|
|
|
|
|
'lookahead' => 0 |
13753
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
13754
|
|
|
|
|
|
|
], |
13755
|
|
|
|
|
|
|
'line' => 97, |
13756
|
|
|
|
|
|
|
'number' => 2, |
13757
|
|
|
|
|
|
|
'patcount' => 0, |
13758
|
|
|
|
|
|
|
'strcount' => 2, |
13759
|
|
|
|
|
|
|
'uncommit' => undef |
13760
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
13761
|
|
|
|
|
|
|
], |
13762
|
|
|
|
|
|
|
'vars' => '' |
13763
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
13764
|
|
|
|
|
|
|
'BARESTRING' => bless( { |
13765
|
|
|
|
|
|
|
'calls' => [], |
13766
|
|
|
|
|
|
|
'changed' => 0, |
13767
|
|
|
|
|
|
|
'impcount' => 0, |
13768
|
|
|
|
|
|
|
'line' => 43, |
13769
|
|
|
|
|
|
|
'name' => 'BARESTRING', |
13770
|
|
|
|
|
|
|
'opcount' => 0, |
13771
|
|
|
|
|
|
|
'prods' => [ |
13772
|
|
|
|
|
|
|
bless( { |
13773
|
|
|
|
|
|
|
'actcount' => 1, |
13774
|
|
|
|
|
|
|
'dircount' => 0, |
13775
|
|
|
|
|
|
|
'error' => undef, |
13776
|
|
|
|
|
|
|
'items' => [ |
13777
|
|
|
|
|
|
|
bless( { |
13778
|
|
|
|
|
|
|
'description' => '/^[)(\'"]/', |
13779
|
|
|
|
|
|
|
'hashname' => '__PATTERN1__', |
13780
|
|
|
|
|
|
|
'ldelim' => '/', |
13781
|
|
|
|
|
|
|
'line' => 43, |
13782
|
|
|
|
|
|
|
'lookahead' => -1, |
13783
|
|
|
|
|
|
|
'mod' => '', |
13784
|
|
|
|
|
|
|
'pattern' => '^[)(\'"]', |
13785
|
|
|
|
|
|
|
'rdelim' => '/' |
13786
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
13787
|
|
|
|
|
|
|
bless( { |
13788
|
|
|
|
|
|
|
'description' => '/^(?!\\\\(|\\\\))(?:\\\\\\\\ |\\\\S)+/', |
13789
|
|
|
|
|
|
|
'hashname' => '__PATTERN2__', |
13790
|
|
|
|
|
|
|
'ldelim' => '/', |
13791
|
|
|
|
|
|
|
'line' => 43, |
13792
|
|
|
|
|
|
|
'lookahead' => 0, |
13793
|
|
|
|
|
|
|
'mod' => '', |
13794
|
|
|
|
|
|
|
'pattern' => '^(?!\\(|\\))(?:\\\\ |\\S)+', |
13795
|
|
|
|
|
|
|
'rdelim' => '/' |
13796
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
13797
|
|
|
|
|
|
|
bless( { |
13798
|
|
|
|
|
|
|
'code' => '{ $return = $item{__PATTERN1__} }', |
13799
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
13800
|
|
|
|
|
|
|
'line' => 44, |
13801
|
|
|
|
|
|
|
'lookahead' => 0 |
13802
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
13803
|
|
|
|
|
|
|
], |
13804
|
|
|
|
|
|
|
'line' => undef, |
13805
|
|
|
|
|
|
|
'number' => 0, |
13806
|
|
|
|
|
|
|
'patcount' => 2, |
13807
|
|
|
|
|
|
|
'strcount' => 0, |
13808
|
|
|
|
|
|
|
'uncommit' => undef |
13809
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
13810
|
|
|
|
|
|
|
], |
13811
|
|
|
|
|
|
|
'vars' => '' |
13812
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
13813
|
|
|
|
|
|
|
'DOUBLE_QUOTED_STRING' => bless( { |
13814
|
|
|
|
|
|
|
'calls' => [], |
13815
|
|
|
|
|
|
|
'changed' => 0, |
13816
|
|
|
|
|
|
|
'impcount' => 0, |
13817
|
|
|
|
|
|
|
'line' => 41, |
13818
|
|
|
|
|
|
|
'name' => 'DOUBLE_QUOTED_STRING', |
13819
|
|
|
|
|
|
|
'opcount' => 0, |
13820
|
|
|
|
|
|
|
'prods' => [ |
13821
|
|
|
|
|
|
|
bless( { |
13822
|
|
|
|
|
|
|
'actcount' => 1, |
13823
|
|
|
|
|
|
|
'dircount' => 0, |
13824
|
|
|
|
|
|
|
'error' => undef, |
13825
|
|
|
|
|
|
|
'items' => [ |
13826
|
|
|
|
|
|
|
bless( { |
13827
|
|
|
|
|
|
|
'description' => '\'"\'', |
13828
|
|
|
|
|
|
|
'hashname' => '__STRING1__', |
13829
|
|
|
|
|
|
|
'line' => 41, |
13830
|
|
|
|
|
|
|
'lookahead' => 0, |
13831
|
|
|
|
|
|
|
'pattern' => '"' |
13832
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Literal' ), |
13833
|
|
|
|
|
|
|
bless( { |
13834
|
|
|
|
|
|
|
'description' => '/(?:\\\\\\\\["\\\\\\\\]|[^"])*/', |
13835
|
|
|
|
|
|
|
'hashname' => '__PATTERN1__', |
13836
|
|
|
|
|
|
|
'ldelim' => '/', |
13837
|
|
|
|
|
|
|
'line' => 41, |
13838
|
|
|
|
|
|
|
'lookahead' => 0, |
13839
|
|
|
|
|
|
|
'mod' => '', |
13840
|
|
|
|
|
|
|
'pattern' => '(?:\\\\["\\\\]|[^"])*', |
13841
|
|
|
|
|
|
|
'rdelim' => '/' |
13842
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
13843
|
|
|
|
|
|
|
bless( { |
13844
|
|
|
|
|
|
|
'description' => '\'"\'', |
13845
|
|
|
|
|
|
|
'hashname' => '__STRING2__', |
13846
|
|
|
|
|
|
|
'line' => 41, |
13847
|
|
|
|
|
|
|
'lookahead' => 0, |
13848
|
|
|
|
|
|
|
'pattern' => '"' |
13849
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Literal' ), |
13850
|
|
|
|
|
|
|
bless( { |
13851
|
|
|
|
|
|
|
'code' => '{ $return = $item{__PATTERN1__} }', |
13852
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
13853
|
|
|
|
|
|
|
'line' => 41, |
13854
|
|
|
|
|
|
|
'lookahead' => 0 |
13855
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
13856
|
|
|
|
|
|
|
], |
13857
|
|
|
|
|
|
|
'line' => undef, |
13858
|
|
|
|
|
|
|
'number' => 0, |
13859
|
|
|
|
|
|
|
'patcount' => 1, |
13860
|
|
|
|
|
|
|
'strcount' => 2, |
13861
|
|
|
|
|
|
|
'uncommit' => undef |
13862
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
13863
|
|
|
|
|
|
|
], |
13864
|
|
|
|
|
|
|
'vars' => '' |
13865
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
13866
|
|
|
|
|
|
|
'HTML' => bless( { |
13867
|
|
|
|
|
|
|
'calls' => [], |
13868
|
|
|
|
|
|
|
'changed' => 0, |
13869
|
|
|
|
|
|
|
'impcount' => 0, |
13870
|
|
|
|
|
|
|
'line' => 31, |
13871
|
|
|
|
|
|
|
'name' => 'HTML', |
13872
|
|
|
|
|
|
|
'opcount' => 0, |
13873
|
|
|
|
|
|
|
'prods' => [ |
13874
|
|
|
|
|
|
|
bless( { |
13875
|
|
|
|
|
|
|
'actcount' => 1, |
13876
|
|
|
|
|
|
|
'dircount' => 0, |
13877
|
|
|
|
|
|
|
'error' => undef, |
13878
|
|
|
|
|
|
|
'items' => [ |
13879
|
|
|
|
|
|
|
bless( { |
13880
|
|
|
|
|
|
|
'description' => '/"HTML"|HTML/i', |
13881
|
|
|
|
|
|
|
'hashname' => '__PATTERN1__', |
13882
|
|
|
|
|
|
|
'ldelim' => '/', |
13883
|
|
|
|
|
|
|
'line' => 31, |
13884
|
|
|
|
|
|
|
'lookahead' => 0, |
13885
|
|
|
|
|
|
|
'mod' => 'i', |
13886
|
|
|
|
|
|
|
'pattern' => '"HTML"|HTML', |
13887
|
|
|
|
|
|
|
'rdelim' => '/' |
13888
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
13889
|
|
|
|
|
|
|
bless( { |
13890
|
|
|
|
|
|
|
'code' => '{ $return = "HTML" }', |
13891
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
13892
|
|
|
|
|
|
|
'line' => 31, |
13893
|
|
|
|
|
|
|
'lookahead' => 0 |
13894
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
13895
|
|
|
|
|
|
|
], |
13896
|
|
|
|
|
|
|
'line' => undef, |
13897
|
|
|
|
|
|
|
'number' => 0, |
13898
|
|
|
|
|
|
|
'patcount' => 1, |
13899
|
|
|
|
|
|
|
'strcount' => 0, |
13900
|
|
|
|
|
|
|
'uncommit' => undef |
13901
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
13902
|
|
|
|
|
|
|
], |
13903
|
|
|
|
|
|
|
'vars' => '' |
13904
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
13905
|
|
|
|
|
|
|
'KVPAIRS' => bless( { |
13906
|
|
|
|
|
|
|
'calls' => [ |
13907
|
|
|
|
|
|
|
'kvpair' |
13908
|
|
|
|
|
|
|
], |
13909
|
|
|
|
|
|
|
'changed' => 0, |
13910
|
|
|
|
|
|
|
'impcount' => 0, |
13911
|
|
|
|
|
|
|
'line' => 62, |
13912
|
|
|
|
|
|
|
'name' => 'KVPAIRS', |
13913
|
|
|
|
|
|
|
'opcount' => 0, |
13914
|
|
|
|
|
|
|
'prods' => [ |
13915
|
|
|
|
|
|
|
bless( { |
13916
|
|
|
|
|
|
|
'actcount' => 1, |
13917
|
|
|
|
|
|
|
'dircount' => 0, |
13918
|
|
|
|
|
|
|
'error' => undef, |
13919
|
|
|
|
|
|
|
'items' => [ |
13920
|
|
|
|
|
|
|
bless( { |
13921
|
|
|
|
|
|
|
'description' => '\'(\'', |
13922
|
|
|
|
|
|
|
'hashname' => '__STRING1__', |
13923
|
|
|
|
|
|
|
'line' => 62, |
13924
|
|
|
|
|
|
|
'lookahead' => 0, |
13925
|
|
|
|
|
|
|
'pattern' => '(' |
13926
|
|
|
|
|
|
|
}, 'Parse::RecDescent::InterpLit' ), |
13927
|
|
|
|
|
|
|
bless( { |
13928
|
|
|
|
|
|
|
'argcode' => undef, |
13929
|
|
|
|
|
|
|
'expected' => undef, |
13930
|
|
|
|
|
|
|
'line' => 62, |
13931
|
|
|
|
|
|
|
'lookahead' => 0, |
13932
|
|
|
|
|
|
|
'matchrule' => 0, |
13933
|
|
|
|
|
|
|
'max' => 100000000, |
13934
|
|
|
|
|
|
|
'min' => 1, |
13935
|
|
|
|
|
|
|
'repspec' => 's', |
13936
|
|
|
|
|
|
|
'subrule' => 'kvpair' |
13937
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
13938
|
|
|
|
|
|
|
bless( { |
13939
|
|
|
|
|
|
|
'description' => '\')\'', |
13940
|
|
|
|
|
|
|
'hashname' => '__STRING2__', |
13941
|
|
|
|
|
|
|
'line' => 62, |
13942
|
|
|
|
|
|
|
'lookahead' => 0, |
13943
|
|
|
|
|
|
|
'pattern' => ')' |
13944
|
|
|
|
|
|
|
}, 'Parse::RecDescent::InterpLit' ), |
13945
|
|
|
|
|
|
|
bless( { |
13946
|
|
|
|
|
|
|
'code' => '{ $return = { map { (%$_) } @{$item{\'kvpair(s)\'}} } }', |
13947
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
13948
|
|
|
|
|
|
|
'line' => 63, |
13949
|
|
|
|
|
|
|
'lookahead' => 0 |
13950
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
13951
|
|
|
|
|
|
|
], |
13952
|
|
|
|
|
|
|
'line' => undef, |
13953
|
|
|
|
|
|
|
'number' => 0, |
13954
|
|
|
|
|
|
|
'patcount' => 0, |
13955
|
|
|
|
|
|
|
'strcount' => 2, |
13956
|
|
|
|
|
|
|
'uncommit' => undef |
13957
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
13958
|
|
|
|
|
|
|
], |
13959
|
|
|
|
|
|
|
'vars' => '' |
13960
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
13961
|
|
|
|
|
|
|
'MESSAGE' => bless( { |
13962
|
|
|
|
|
|
|
'calls' => [], |
13963
|
|
|
|
|
|
|
'changed' => 0, |
13964
|
|
|
|
|
|
|
'impcount' => 0, |
13965
|
|
|
|
|
|
|
'line' => 32, |
13966
|
|
|
|
|
|
|
'name' => 'MESSAGE', |
13967
|
|
|
|
|
|
|
'opcount' => 0, |
13968
|
|
|
|
|
|
|
'prods' => [ |
13969
|
|
|
|
|
|
|
bless( { |
13970
|
|
|
|
|
|
|
'actcount' => 1, |
13971
|
|
|
|
|
|
|
'dircount' => 0, |
13972
|
|
|
|
|
|
|
'error' => undef, |
13973
|
|
|
|
|
|
|
'items' => [ |
13974
|
|
|
|
|
|
|
bless( { |
13975
|
|
|
|
|
|
|
'description' => '/^"MESSAGE"|^MESSAGE/i', |
13976
|
|
|
|
|
|
|
'hashname' => '__PATTERN1__', |
13977
|
|
|
|
|
|
|
'ldelim' => '/', |
13978
|
|
|
|
|
|
|
'line' => 32, |
13979
|
|
|
|
|
|
|
'lookahead' => 0, |
13980
|
|
|
|
|
|
|
'mod' => 'i', |
13981
|
|
|
|
|
|
|
'pattern' => '^"MESSAGE"|^MESSAGE', |
13982
|
|
|
|
|
|
|
'rdelim' => '/' |
13983
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
13984
|
|
|
|
|
|
|
bless( { |
13985
|
|
|
|
|
|
|
'code' => '{ $return = "MESSAGE"}', |
13986
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
13987
|
|
|
|
|
|
|
'line' => 32, |
13988
|
|
|
|
|
|
|
'lookahead' => 0 |
13989
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
13990
|
|
|
|
|
|
|
], |
13991
|
|
|
|
|
|
|
'line' => undef, |
13992
|
|
|
|
|
|
|
'number' => 0, |
13993
|
|
|
|
|
|
|
'patcount' => 1, |
13994
|
|
|
|
|
|
|
'strcount' => 0, |
13995
|
|
|
|
|
|
|
'uncommit' => undef |
13996
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
13997
|
|
|
|
|
|
|
], |
13998
|
|
|
|
|
|
|
'vars' => '' |
13999
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
14000
|
|
|
|
|
|
|
'NIL' => bless( { |
14001
|
|
|
|
|
|
|
'calls' => [], |
14002
|
|
|
|
|
|
|
'changed' => 0, |
14003
|
|
|
|
|
|
|
'impcount' => 0, |
14004
|
|
|
|
|
|
|
'line' => 34, |
14005
|
|
|
|
|
|
|
'name' => 'NIL', |
14006
|
|
|
|
|
|
|
'opcount' => 0, |
14007
|
|
|
|
|
|
|
'prods' => [ |
14008
|
|
|
|
|
|
|
bless( { |
14009
|
|
|
|
|
|
|
'actcount' => 1, |
14010
|
|
|
|
|
|
|
'dircount' => 0, |
14011
|
|
|
|
|
|
|
'error' => undef, |
14012
|
|
|
|
|
|
|
'items' => [ |
14013
|
|
|
|
|
|
|
bless( { |
14014
|
|
|
|
|
|
|
'description' => '/^NIL/i', |
14015
|
|
|
|
|
|
|
'hashname' => '__PATTERN1__', |
14016
|
|
|
|
|
|
|
'ldelim' => '/', |
14017
|
|
|
|
|
|
|
'line' => 34, |
14018
|
|
|
|
|
|
|
'lookahead' => 0, |
14019
|
|
|
|
|
|
|
'mod' => 'i', |
14020
|
|
|
|
|
|
|
'pattern' => '^NIL', |
14021
|
|
|
|
|
|
|
'rdelim' => '/' |
14022
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
14023
|
|
|
|
|
|
|
bless( { |
14024
|
|
|
|
|
|
|
'code' => '{ $return = "NIL" }', |
14025
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
14026
|
|
|
|
|
|
|
'line' => 34, |
14027
|
|
|
|
|
|
|
'lookahead' => 0 |
14028
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
14029
|
|
|
|
|
|
|
], |
14030
|
|
|
|
|
|
|
'line' => undef, |
14031
|
|
|
|
|
|
|
'number' => 0, |
14032
|
|
|
|
|
|
|
'patcount' => 1, |
14033
|
|
|
|
|
|
|
'strcount' => 0, |
14034
|
|
|
|
|
|
|
'uncommit' => undef |
14035
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
14036
|
|
|
|
|
|
|
], |
14037
|
|
|
|
|
|
|
'vars' => '' |
14038
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
14039
|
|
|
|
|
|
|
'NUMBER' => bless( { |
14040
|
|
|
|
|
|
|
'calls' => [], |
14041
|
|
|
|
|
|
|
'changed' => 0, |
14042
|
|
|
|
|
|
|
'impcount' => 0, |
14043
|
|
|
|
|
|
|
'line' => 36, |
14044
|
|
|
|
|
|
|
'name' => 'NUMBER', |
14045
|
|
|
|
|
|
|
'opcount' => 0, |
14046
|
|
|
|
|
|
|
'prods' => [ |
14047
|
|
|
|
|
|
|
bless( { |
14048
|
|
|
|
|
|
|
'actcount' => 1, |
14049
|
|
|
|
|
|
|
'dircount' => 0, |
14050
|
|
|
|
|
|
|
'error' => undef, |
14051
|
|
|
|
|
|
|
'items' => [ |
14052
|
|
|
|
|
|
|
bless( { |
14053
|
|
|
|
|
|
|
'description' => '/^(\\\\d+)/', |
14054
|
|
|
|
|
|
|
'hashname' => '__PATTERN1__', |
14055
|
|
|
|
|
|
|
'ldelim' => '/', |
14056
|
|
|
|
|
|
|
'line' => 36, |
14057
|
|
|
|
|
|
|
'lookahead' => 0, |
14058
|
|
|
|
|
|
|
'mod' => '', |
14059
|
|
|
|
|
|
|
'pattern' => '^(\\d+)', |
14060
|
|
|
|
|
|
|
'rdelim' => '/' |
14061
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
14062
|
|
|
|
|
|
|
bless( { |
14063
|
|
|
|
|
|
|
'code' => '{ $return = $item[1] }', |
14064
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
14065
|
|
|
|
|
|
|
'line' => 36, |
14066
|
|
|
|
|
|
|
'lookahead' => 0 |
14067
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
14068
|
|
|
|
|
|
|
], |
14069
|
|
|
|
|
|
|
'line' => undef, |
14070
|
|
|
|
|
|
|
'number' => 0, |
14071
|
|
|
|
|
|
|
'patcount' => 1, |
14072
|
|
|
|
|
|
|
'strcount' => 0, |
14073
|
|
|
|
|
|
|
'uncommit' => undef |
14074
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
14075
|
|
|
|
|
|
|
], |
14076
|
|
|
|
|
|
|
'vars' => '' |
14077
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
14078
|
|
|
|
|
|
|
'PLAIN' => bless( { |
14079
|
|
|
|
|
|
|
'calls' => [], |
14080
|
|
|
|
|
|
|
'changed' => 0, |
14081
|
|
|
|
|
|
|
'impcount' => 0, |
14082
|
|
|
|
|
|
|
'line' => 30, |
14083
|
|
|
|
|
|
|
'name' => 'PLAIN', |
14084
|
|
|
|
|
|
|
'opcount' => 0, |
14085
|
|
|
|
|
|
|
'prods' => [ |
14086
|
|
|
|
|
|
|
bless( { |
14087
|
|
|
|
|
|
|
'actcount' => 1, |
14088
|
|
|
|
|
|
|
'dircount' => 0, |
14089
|
|
|
|
|
|
|
'error' => undef, |
14090
|
|
|
|
|
|
|
'items' => [ |
14091
|
|
|
|
|
|
|
bless( { |
14092
|
|
|
|
|
|
|
'description' => '/^"PLAIN"|^PLAIN/i', |
14093
|
|
|
|
|
|
|
'hashname' => '__PATTERN1__', |
14094
|
|
|
|
|
|
|
'ldelim' => '/', |
14095
|
|
|
|
|
|
|
'line' => 30, |
14096
|
|
|
|
|
|
|
'lookahead' => 0, |
14097
|
|
|
|
|
|
|
'mod' => 'i', |
14098
|
|
|
|
|
|
|
'pattern' => '^"PLAIN"|^PLAIN', |
14099
|
|
|
|
|
|
|
'rdelim' => '/' |
14100
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
14101
|
|
|
|
|
|
|
bless( { |
14102
|
|
|
|
|
|
|
'code' => '{ $return = "PLAIN" }', |
14103
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
14104
|
|
|
|
|
|
|
'line' => 30, |
14105
|
|
|
|
|
|
|
'lookahead' => 0 |
14106
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
14107
|
|
|
|
|
|
|
], |
14108
|
|
|
|
|
|
|
'line' => undef, |
14109
|
|
|
|
|
|
|
'number' => 0, |
14110
|
|
|
|
|
|
|
'patcount' => 1, |
14111
|
|
|
|
|
|
|
'strcount' => 0, |
14112
|
|
|
|
|
|
|
'uncommit' => undef |
14113
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
14114
|
|
|
|
|
|
|
], |
14115
|
|
|
|
|
|
|
'vars' => '' |
14116
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
14117
|
|
|
|
|
|
|
'RFC822' => bless( { |
14118
|
|
|
|
|
|
|
'calls' => [], |
14119
|
|
|
|
|
|
|
'changed' => 0, |
14120
|
|
|
|
|
|
|
'impcount' => 0, |
14121
|
|
|
|
|
|
|
'line' => 33, |
14122
|
|
|
|
|
|
|
'name' => 'RFC822', |
14123
|
|
|
|
|
|
|
'opcount' => 0, |
14124
|
|
|
|
|
|
|
'prods' => [ |
14125
|
|
|
|
|
|
|
bless( { |
14126
|
|
|
|
|
|
|
'actcount' => 1, |
14127
|
|
|
|
|
|
|
'dircount' => 0, |
14128
|
|
|
|
|
|
|
'error' => undef, |
14129
|
|
|
|
|
|
|
'items' => [ |
14130
|
|
|
|
|
|
|
bless( { |
14131
|
|
|
|
|
|
|
'description' => '/^"RFC822"|^RFC822/i', |
14132
|
|
|
|
|
|
|
'hashname' => '__PATTERN1__', |
14133
|
|
|
|
|
|
|
'ldelim' => '/', |
14134
|
|
|
|
|
|
|
'line' => 33, |
14135
|
|
|
|
|
|
|
'lookahead' => 0, |
14136
|
|
|
|
|
|
|
'mod' => 'i', |
14137
|
|
|
|
|
|
|
'pattern' => '^"RFC822"|^RFC822', |
14138
|
|
|
|
|
|
|
'rdelim' => '/' |
14139
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
14140
|
|
|
|
|
|
|
bless( { |
14141
|
|
|
|
|
|
|
'code' => '{ $return = "RFC822" }', |
14142
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
14143
|
|
|
|
|
|
|
'line' => 33, |
14144
|
|
|
|
|
|
|
'lookahead' => 0 |
14145
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
14146
|
|
|
|
|
|
|
], |
14147
|
|
|
|
|
|
|
'line' => undef, |
14148
|
|
|
|
|
|
|
'number' => 0, |
14149
|
|
|
|
|
|
|
'patcount' => 1, |
14150
|
|
|
|
|
|
|
'strcount' => 0, |
14151
|
|
|
|
|
|
|
'uncommit' => undef |
14152
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
14153
|
|
|
|
|
|
|
], |
14154
|
|
|
|
|
|
|
'vars' => '' |
14155
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
14156
|
|
|
|
|
|
|
'RFCNONCOMPLY' => bless( { |
14157
|
|
|
|
|
|
|
'calls' => [], |
14158
|
|
|
|
|
|
|
'changed' => 0, |
14159
|
|
|
|
|
|
|
'impcount' => 0, |
14160
|
|
|
|
|
|
|
'line' => 35, |
14161
|
|
|
|
|
|
|
'name' => 'RFCNONCOMPLY', |
14162
|
|
|
|
|
|
|
'opcount' => 0, |
14163
|
|
|
|
|
|
|
'prods' => [ |
14164
|
|
|
|
|
|
|
bless( { |
14165
|
|
|
|
|
|
|
'actcount' => 1, |
14166
|
|
|
|
|
|
|
'dircount' => 0, |
14167
|
|
|
|
|
|
|
'error' => undef, |
14168
|
|
|
|
|
|
|
'items' => [ |
14169
|
|
|
|
|
|
|
bless( { |
14170
|
|
|
|
|
|
|
'description' => '/^\\\\(\\\\)/i', |
14171
|
|
|
|
|
|
|
'hashname' => '__PATTERN1__', |
14172
|
|
|
|
|
|
|
'ldelim' => '/', |
14173
|
|
|
|
|
|
|
'line' => 35, |
14174
|
|
|
|
|
|
|
'lookahead' => 0, |
14175
|
|
|
|
|
|
|
'mod' => 'i', |
14176
|
|
|
|
|
|
|
'pattern' => '^\\(\\)', |
14177
|
|
|
|
|
|
|
'rdelim' => '/' |
14178
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
14179
|
|
|
|
|
|
|
bless( { |
14180
|
|
|
|
|
|
|
'code' => '{ $return = "NIL" }', |
14181
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
14182
|
|
|
|
|
|
|
'line' => 35, |
14183
|
|
|
|
|
|
|
'lookahead' => 0 |
14184
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
14185
|
|
|
|
|
|
|
], |
14186
|
|
|
|
|
|
|
'line' => undef, |
14187
|
|
|
|
|
|
|
'number' => 0, |
14188
|
|
|
|
|
|
|
'patcount' => 1, |
14189
|
|
|
|
|
|
|
'strcount' => 0, |
14190
|
|
|
|
|
|
|
'uncommit' => undef |
14191
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
14192
|
|
|
|
|
|
|
], |
14193
|
|
|
|
|
|
|
'vars' => '' |
14194
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
14195
|
|
|
|
|
|
|
'SINGLE_QUOTED_STRING' => bless( { |
14196
|
|
|
|
|
|
|
'calls' => [], |
14197
|
|
|
|
|
|
|
'changed' => 0, |
14198
|
|
|
|
|
|
|
'impcount' => 0, |
14199
|
|
|
|
|
|
|
'line' => 38, |
14200
|
|
|
|
|
|
|
'name' => 'SINGLE_QUOTED_STRING', |
14201
|
|
|
|
|
|
|
'opcount' => 0, |
14202
|
|
|
|
|
|
|
'prods' => [ |
14203
|
|
|
|
|
|
|
bless( { |
14204
|
|
|
|
|
|
|
'actcount' => 1, |
14205
|
|
|
|
|
|
|
'dircount' => 0, |
14206
|
|
|
|
|
|
|
'error' => undef, |
14207
|
|
|
|
|
|
|
'items' => [ |
14208
|
|
|
|
|
|
|
bless( { |
14209
|
|
|
|
|
|
|
'description' => '\'\'\'', |
14210
|
|
|
|
|
|
|
'hashname' => '__STRING1__', |
14211
|
|
|
|
|
|
|
'line' => 40, |
14212
|
|
|
|
|
|
|
'lookahead' => 0, |
14213
|
|
|
|
|
|
|
'pattern' => '\'' |
14214
|
|
|
|
|
|
|
}, 'Parse::RecDescent::InterpLit' ), |
14215
|
|
|
|
|
|
|
bless( { |
14216
|
|
|
|
|
|
|
'description' => '/(?:\\\\\\\\[\'\\\\\\\\]|[^\'])*/', |
14217
|
|
|
|
|
|
|
'hashname' => '__PATTERN1__', |
14218
|
|
|
|
|
|
|
'ldelim' => '/', |
14219
|
|
|
|
|
|
|
'line' => 40, |
14220
|
|
|
|
|
|
|
'lookahead' => 0, |
14221
|
|
|
|
|
|
|
'mod' => '', |
14222
|
|
|
|
|
|
|
'pattern' => '(?:\\\\[\'\\\\]|[^\'])*', |
14223
|
|
|
|
|
|
|
'rdelim' => '/' |
14224
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
14225
|
|
|
|
|
|
|
bless( { |
14226
|
|
|
|
|
|
|
'description' => '\'\'\'', |
14227
|
|
|
|
|
|
|
'hashname' => '__STRING2__', |
14228
|
|
|
|
|
|
|
'line' => 40, |
14229
|
|
|
|
|
|
|
'lookahead' => 0, |
14230
|
|
|
|
|
|
|
'pattern' => '\'' |
14231
|
|
|
|
|
|
|
}, 'Parse::RecDescent::InterpLit' ), |
14232
|
|
|
|
|
|
|
bless( { |
14233
|
|
|
|
|
|
|
'code' => '{ $return = $item{__PATTERN1__} }', |
14234
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
14235
|
|
|
|
|
|
|
'line' => 40, |
14236
|
|
|
|
|
|
|
'lookahead' => 0 |
14237
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
14238
|
|
|
|
|
|
|
], |
14239
|
|
|
|
|
|
|
'line' => undef, |
14240
|
|
|
|
|
|
|
'number' => 0, |
14241
|
|
|
|
|
|
|
'patcount' => 1, |
14242
|
|
|
|
|
|
|
'strcount' => 2, |
14243
|
|
|
|
|
|
|
'uncommit' => undef |
14244
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
14245
|
|
|
|
|
|
|
], |
14246
|
|
|
|
|
|
|
'vars' => '' |
14247
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
14248
|
|
|
|
|
|
|
'STRING' => bless( { |
14249
|
|
|
|
|
|
|
'calls' => [ |
14250
|
|
|
|
|
|
|
'DOUBLE_QUOTED_STRING', |
14251
|
|
|
|
|
|
|
'SINGLE_QUOTED_STRING', |
14252
|
|
|
|
|
|
|
'BARESTRING' |
14253
|
|
|
|
|
|
|
], |
14254
|
|
|
|
|
|
|
'changed' => 0, |
14255
|
|
|
|
|
|
|
'impcount' => 0, |
14256
|
|
|
|
|
|
|
'line' => 46, |
14257
|
|
|
|
|
|
|
'name' => 'STRING', |
14258
|
|
|
|
|
|
|
'opcount' => 0, |
14259
|
|
|
|
|
|
|
'prods' => [ |
14260
|
|
|
|
|
|
|
bless( { |
14261
|
|
|
|
|
|
|
'actcount' => 0, |
14262
|
|
|
|
|
|
|
'dircount' => 0, |
14263
|
|
|
|
|
|
|
'error' => undef, |
14264
|
|
|
|
|
|
|
'items' => [ |
14265
|
|
|
|
|
|
|
bless( { |
14266
|
|
|
|
|
|
|
'argcode' => undef, |
14267
|
|
|
|
|
|
|
'implicit' => undef, |
14268
|
|
|
|
|
|
|
'line' => 46, |
14269
|
|
|
|
|
|
|
'lookahead' => 0, |
14270
|
|
|
|
|
|
|
'matchrule' => 0, |
14271
|
|
|
|
|
|
|
'subrule' => 'DOUBLE_QUOTED_STRING' |
14272
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
14273
|
|
|
|
|
|
|
], |
14274
|
|
|
|
|
|
|
'line' => undef, |
14275
|
|
|
|
|
|
|
'number' => 0, |
14276
|
|
|
|
|
|
|
'patcount' => 0, |
14277
|
|
|
|
|
|
|
'strcount' => 0, |
14278
|
|
|
|
|
|
|
'uncommit' => undef |
14279
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
14280
|
|
|
|
|
|
|
bless( { |
14281
|
|
|
|
|
|
|
'actcount' => 0, |
14282
|
|
|
|
|
|
|
'dircount' => 0, |
14283
|
|
|
|
|
|
|
'error' => undef, |
14284
|
|
|
|
|
|
|
'items' => [ |
14285
|
|
|
|
|
|
|
bless( { |
14286
|
|
|
|
|
|
|
'argcode' => undef, |
14287
|
|
|
|
|
|
|
'implicit' => undef, |
14288
|
|
|
|
|
|
|
'line' => 46, |
14289
|
|
|
|
|
|
|
'lookahead' => 0, |
14290
|
|
|
|
|
|
|
'matchrule' => 0, |
14291
|
|
|
|
|
|
|
'subrule' => 'SINGLE_QUOTED_STRING' |
14292
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
14293
|
|
|
|
|
|
|
], |
14294
|
|
|
|
|
|
|
'line' => 46, |
14295
|
|
|
|
|
|
|
'number' => 1, |
14296
|
|
|
|
|
|
|
'patcount' => 0, |
14297
|
|
|
|
|
|
|
'strcount' => 0, |
14298
|
|
|
|
|
|
|
'uncommit' => undef |
14299
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
14300
|
|
|
|
|
|
|
bless( { |
14301
|
|
|
|
|
|
|
'actcount' => 0, |
14302
|
|
|
|
|
|
|
'dircount' => 0, |
14303
|
|
|
|
|
|
|
'error' => undef, |
14304
|
|
|
|
|
|
|
'items' => [ |
14305
|
|
|
|
|
|
|
bless( { |
14306
|
|
|
|
|
|
|
'argcode' => undef, |
14307
|
|
|
|
|
|
|
'implicit' => undef, |
14308
|
|
|
|
|
|
|
'line' => 46, |
14309
|
|
|
|
|
|
|
'lookahead' => 0, |
14310
|
|
|
|
|
|
|
'matchrule' => 0, |
14311
|
|
|
|
|
|
|
'subrule' => 'BARESTRING' |
14312
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
14313
|
|
|
|
|
|
|
], |
14314
|
|
|
|
|
|
|
'line' => 46, |
14315
|
|
|
|
|
|
|
'number' => 2, |
14316
|
|
|
|
|
|
|
'patcount' => 0, |
14317
|
|
|
|
|
|
|
'strcount' => 0, |
14318
|
|
|
|
|
|
|
'uncommit' => undef |
14319
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
14320
|
|
|
|
|
|
|
], |
14321
|
|
|
|
|
|
|
'vars' => '' |
14322
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
14323
|
|
|
|
|
|
|
'STRINGS' => bless( { |
14324
|
|
|
|
|
|
|
'calls' => [ |
14325
|
|
|
|
|
|
|
'STRING' |
14326
|
|
|
|
|
|
|
], |
14327
|
|
|
|
|
|
|
'changed' => 0, |
14328
|
|
|
|
|
|
|
'impcount' => 0, |
14329
|
|
|
|
|
|
|
'line' => 48, |
14330
|
|
|
|
|
|
|
'name' => 'STRINGS', |
14331
|
|
|
|
|
|
|
'opcount' => 0, |
14332
|
|
|
|
|
|
|
'prods' => [ |
14333
|
|
|
|
|
|
|
bless( { |
14334
|
|
|
|
|
|
|
'actcount' => 1, |
14335
|
|
|
|
|
|
|
'dircount' => 0, |
14336
|
|
|
|
|
|
|
'error' => undef, |
14337
|
|
|
|
|
|
|
'items' => [ |
14338
|
|
|
|
|
|
|
bless( { |
14339
|
|
|
|
|
|
|
'description' => '\'(\'', |
14340
|
|
|
|
|
|
|
'hashname' => '__STRING1__', |
14341
|
|
|
|
|
|
|
'line' => 48, |
14342
|
|
|
|
|
|
|
'lookahead' => 0, |
14343
|
|
|
|
|
|
|
'pattern' => '(' |
14344
|
|
|
|
|
|
|
}, 'Parse::RecDescent::InterpLit' ), |
14345
|
|
|
|
|
|
|
bless( { |
14346
|
|
|
|
|
|
|
'argcode' => undef, |
14347
|
|
|
|
|
|
|
'expected' => undef, |
14348
|
|
|
|
|
|
|
'line' => 48, |
14349
|
|
|
|
|
|
|
'lookahead' => 0, |
14350
|
|
|
|
|
|
|
'matchrule' => 0, |
14351
|
|
|
|
|
|
|
'max' => 100000000, |
14352
|
|
|
|
|
|
|
'min' => 1, |
14353
|
|
|
|
|
|
|
'repspec' => 's', |
14354
|
|
|
|
|
|
|
'subrule' => 'STRING' |
14355
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
14356
|
|
|
|
|
|
|
bless( { |
14357
|
|
|
|
|
|
|
'description' => '\')\'', |
14358
|
|
|
|
|
|
|
'hashname' => '__STRING2__', |
14359
|
|
|
|
|
|
|
'line' => 48, |
14360
|
|
|
|
|
|
|
'lookahead' => 0, |
14361
|
|
|
|
|
|
|
'pattern' => ')' |
14362
|
|
|
|
|
|
|
}, 'Parse::RecDescent::InterpLit' ), |
14363
|
|
|
|
|
|
|
bless( { |
14364
|
|
|
|
|
|
|
'code' => '{ $return = $item{\'STRING(s)\'} }', |
14365
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
14366
|
|
|
|
|
|
|
'line' => 48, |
14367
|
|
|
|
|
|
|
'lookahead' => 0 |
14368
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
14369
|
|
|
|
|
|
|
], |
14370
|
|
|
|
|
|
|
'line' => undef, |
14371
|
|
|
|
|
|
|
'number' => 0, |
14372
|
|
|
|
|
|
|
'patcount' => 0, |
14373
|
|
|
|
|
|
|
'strcount' => 2, |
14374
|
|
|
|
|
|
|
'uncommit' => undef |
14375
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
14376
|
|
|
|
|
|
|
], |
14377
|
|
|
|
|
|
|
'vars' => '' |
14378
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
14379
|
|
|
|
|
|
|
'TEXT' => bless( { |
14380
|
|
|
|
|
|
|
'calls' => [], |
14381
|
|
|
|
|
|
|
'changed' => 0, |
14382
|
|
|
|
|
|
|
'impcount' => 0, |
14383
|
|
|
|
|
|
|
'line' => 27, |
14384
|
|
|
|
|
|
|
'name' => 'TEXT', |
14385
|
|
|
|
|
|
|
'opcount' => 0, |
14386
|
|
|
|
|
|
|
'prods' => [ |
14387
|
|
|
|
|
|
|
bless( { |
14388
|
|
|
|
|
|
|
'actcount' => 1, |
14389
|
|
|
|
|
|
|
'dircount' => 0, |
14390
|
|
|
|
|
|
|
'error' => undef, |
14391
|
|
|
|
|
|
|
'items' => [ |
14392
|
|
|
|
|
|
|
bless( { |
14393
|
|
|
|
|
|
|
'description' => '/^"TEXT"|^TEXT/i', |
14394
|
|
|
|
|
|
|
'hashname' => '__PATTERN1__', |
14395
|
|
|
|
|
|
|
'ldelim' => '/', |
14396
|
|
|
|
|
|
|
'line' => 29, |
14397
|
|
|
|
|
|
|
'lookahead' => 0, |
14398
|
|
|
|
|
|
|
'mod' => 'i', |
14399
|
|
|
|
|
|
|
'pattern' => '^"TEXT"|^TEXT', |
14400
|
|
|
|
|
|
|
'rdelim' => '/' |
14401
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
14402
|
|
|
|
|
|
|
bless( { |
14403
|
|
|
|
|
|
|
'code' => '{ $return = "TEXT" }', |
14404
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
14405
|
|
|
|
|
|
|
'line' => 29, |
14406
|
|
|
|
|
|
|
'lookahead' => 0 |
14407
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
14408
|
|
|
|
|
|
|
], |
14409
|
|
|
|
|
|
|
'line' => undef, |
14410
|
|
|
|
|
|
|
'number' => 0, |
14411
|
|
|
|
|
|
|
'patcount' => 1, |
14412
|
|
|
|
|
|
|
'strcount' => 0, |
14413
|
|
|
|
|
|
|
'uncommit' => undef |
14414
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
14415
|
|
|
|
|
|
|
], |
14416
|
|
|
|
|
|
|
'vars' => '' |
14417
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
14418
|
|
|
|
|
|
|
'addressstruct' => bless( { |
14419
|
|
|
|
|
|
|
'calls' => [ |
14420
|
|
|
|
|
|
|
'personalname', |
14421
|
|
|
|
|
|
|
'sourceroute', |
14422
|
|
|
|
|
|
|
'mailboxname', |
14423
|
|
|
|
|
|
|
'hostname' |
14424
|
|
|
|
|
|
|
], |
14425
|
|
|
|
|
|
|
'changed' => 0, |
14426
|
|
|
|
|
|
|
'impcount' => 0, |
14427
|
|
|
|
|
|
|
'line' => 83, |
14428
|
|
|
|
|
|
|
'name' => 'addressstruct', |
14429
|
|
|
|
|
|
|
'opcount' => 0, |
14430
|
|
|
|
|
|
|
'prods' => [ |
14431
|
|
|
|
|
|
|
bless( { |
14432
|
|
|
|
|
|
|
'actcount' => 1, |
14433
|
|
|
|
|
|
|
'dircount' => 0, |
14434
|
|
|
|
|
|
|
'error' => undef, |
14435
|
|
|
|
|
|
|
'items' => [ |
14436
|
|
|
|
|
|
|
bless( { |
14437
|
|
|
|
|
|
|
'description' => '\'(\'', |
14438
|
|
|
|
|
|
|
'hashname' => '__STRING1__', |
14439
|
|
|
|
|
|
|
'line' => 83, |
14440
|
|
|
|
|
|
|
'lookahead' => 0, |
14441
|
|
|
|
|
|
|
'pattern' => '(' |
14442
|
|
|
|
|
|
|
}, 'Parse::RecDescent::InterpLit' ), |
14443
|
|
|
|
|
|
|
bless( { |
14444
|
|
|
|
|
|
|
'argcode' => undef, |
14445
|
|
|
|
|
|
|
'implicit' => undef, |
14446
|
|
|
|
|
|
|
'line' => 83, |
14447
|
|
|
|
|
|
|
'lookahead' => 0, |
14448
|
|
|
|
|
|
|
'matchrule' => 0, |
14449
|
|
|
|
|
|
|
'subrule' => 'personalname' |
14450
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
14451
|
|
|
|
|
|
|
bless( { |
14452
|
|
|
|
|
|
|
'argcode' => undef, |
14453
|
|
|
|
|
|
|
'implicit' => undef, |
14454
|
|
|
|
|
|
|
'line' => 83, |
14455
|
|
|
|
|
|
|
'lookahead' => 0, |
14456
|
|
|
|
|
|
|
'matchrule' => 0, |
14457
|
|
|
|
|
|
|
'subrule' => 'sourceroute' |
14458
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
14459
|
|
|
|
|
|
|
bless( { |
14460
|
|
|
|
|
|
|
'argcode' => undef, |
14461
|
|
|
|
|
|
|
'implicit' => undef, |
14462
|
|
|
|
|
|
|
'line' => 83, |
14463
|
|
|
|
|
|
|
'lookahead' => 0, |
14464
|
|
|
|
|
|
|
'matchrule' => 0, |
14465
|
|
|
|
|
|
|
'subrule' => 'mailboxname' |
14466
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
14467
|
|
|
|
|
|
|
bless( { |
14468
|
|
|
|
|
|
|
'argcode' => undef, |
14469
|
|
|
|
|
|
|
'implicit' => undef, |
14470
|
|
|
|
|
|
|
'line' => 83, |
14471
|
|
|
|
|
|
|
'lookahead' => 0, |
14472
|
|
|
|
|
|
|
'matchrule' => 0, |
14473
|
|
|
|
|
|
|
'subrule' => 'hostname' |
14474
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
14475
|
|
|
|
|
|
|
bless( { |
14476
|
|
|
|
|
|
|
'description' => '\')\'', |
14477
|
|
|
|
|
|
|
'hashname' => '__STRING2__', |
14478
|
|
|
|
|
|
|
'line' => 83, |
14479
|
|
|
|
|
|
|
'lookahead' => 0, |
14480
|
|
|
|
|
|
|
'pattern' => ')' |
14481
|
|
|
|
|
|
|
}, 'Parse::RecDescent::InterpLit' ), |
14482
|
|
|
|
|
|
|
bless( { |
14483
|
|
|
|
|
|
|
'code' => '{ bless { personalname => $item{personalname} |
14484
|
|
|
|
|
|
|
, sourceroute => $item{sourceroute} |
14485
|
|
|
|
|
|
|
, mailboxname => $item{mailboxname} |
14486
|
|
|
|
|
|
|
, hostname => $item{hostname} |
14487
|
|
|
|
|
|
|
}, \'Mail::IMAPClient::BodyStructure::Address\'; |
14488
|
|
|
|
|
|
|
}', |
14489
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
14490
|
|
|
|
|
|
|
'line' => 84, |
14491
|
|
|
|
|
|
|
'lookahead' => 0 |
14492
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
14493
|
|
|
|
|
|
|
], |
14494
|
|
|
|
|
|
|
'line' => undef, |
14495
|
|
|
|
|
|
|
'number' => 0, |
14496
|
|
|
|
|
|
|
'patcount' => 0, |
14497
|
|
|
|
|
|
|
'strcount' => 2, |
14498
|
|
|
|
|
|
|
'uncommit' => undef |
14499
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
14500
|
|
|
|
|
|
|
], |
14501
|
|
|
|
|
|
|
'vars' => '' |
14502
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
14503
|
|
|
|
|
|
|
'basicfields' => bless( { |
14504
|
|
|
|
|
|
|
'calls' => [ |
14505
|
|
|
|
|
|
|
'bodysubtype', |
14506
|
|
|
|
|
|
|
'bodyparms', |
14507
|
|
|
|
|
|
|
'bodyid', |
14508
|
|
|
|
|
|
|
'bodydesc', |
14509
|
|
|
|
|
|
|
'bodyenc', |
14510
|
|
|
|
|
|
|
'bodysize' |
14511
|
|
|
|
|
|
|
], |
14512
|
|
|
|
|
|
|
'changed' => 0, |
14513
|
|
|
|
|
|
|
'impcount' => 0, |
14514
|
|
|
|
|
|
|
'line' => 115, |
14515
|
|
|
|
|
|
|
'name' => 'basicfields', |
14516
|
|
|
|
|
|
|
'opcount' => 0, |
14517
|
|
|
|
|
|
|
'prods' => [ |
14518
|
|
|
|
|
|
|
bless( { |
14519
|
|
|
|
|
|
|
'actcount' => 1, |
14520
|
|
|
|
|
|
|
'dircount' => 0, |
14521
|
|
|
|
|
|
|
'error' => undef, |
14522
|
|
|
|
|
|
|
'items' => [ |
14523
|
|
|
|
|
|
|
bless( { |
14524
|
|
|
|
|
|
|
'argcode' => undef, |
14525
|
|
|
|
|
|
|
'implicit' => undef, |
14526
|
|
|
|
|
|
|
'line' => 115, |
14527
|
|
|
|
|
|
|
'lookahead' => 0, |
14528
|
|
|
|
|
|
|
'matchrule' => 0, |
14529
|
|
|
|
|
|
|
'subrule' => 'bodysubtype' |
14530
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
14531
|
|
|
|
|
|
|
bless( { |
14532
|
|
|
|
|
|
|
'argcode' => undef, |
14533
|
|
|
|
|
|
|
'expected' => undef, |
14534
|
|
|
|
|
|
|
'line' => 115, |
14535
|
|
|
|
|
|
|
'lookahead' => 0, |
14536
|
|
|
|
|
|
|
'matchrule' => 0, |
14537
|
|
|
|
|
|
|
'max' => 1, |
14538
|
|
|
|
|
|
|
'min' => 0, |
14539
|
|
|
|
|
|
|
'repspec' => '?', |
14540
|
|
|
|
|
|
|
'subrule' => 'bodyparms' |
14541
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
14542
|
|
|
|
|
|
|
bless( { |
14543
|
|
|
|
|
|
|
'argcode' => undef, |
14544
|
|
|
|
|
|
|
'expected' => undef, |
14545
|
|
|
|
|
|
|
'line' => 115, |
14546
|
|
|
|
|
|
|
'lookahead' => 0, |
14547
|
|
|
|
|
|
|
'matchrule' => 0, |
14548
|
|
|
|
|
|
|
'max' => 1, |
14549
|
|
|
|
|
|
|
'min' => 0, |
14550
|
|
|
|
|
|
|
'repspec' => '?', |
14551
|
|
|
|
|
|
|
'subrule' => 'bodyid' |
14552
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
14553
|
|
|
|
|
|
|
bless( { |
14554
|
|
|
|
|
|
|
'argcode' => undef, |
14555
|
|
|
|
|
|
|
'expected' => undef, |
14556
|
|
|
|
|
|
|
'line' => 116, |
14557
|
|
|
|
|
|
|
'lookahead' => 0, |
14558
|
|
|
|
|
|
|
'matchrule' => 0, |
14559
|
|
|
|
|
|
|
'max' => 1, |
14560
|
|
|
|
|
|
|
'min' => 0, |
14561
|
|
|
|
|
|
|
'repspec' => '?', |
14562
|
|
|
|
|
|
|
'subrule' => 'bodydesc' |
14563
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
14564
|
|
|
|
|
|
|
bless( { |
14565
|
|
|
|
|
|
|
'argcode' => undef, |
14566
|
|
|
|
|
|
|
'expected' => undef, |
14567
|
|
|
|
|
|
|
'line' => 116, |
14568
|
|
|
|
|
|
|
'lookahead' => 0, |
14569
|
|
|
|
|
|
|
'matchrule' => 0, |
14570
|
|
|
|
|
|
|
'max' => 1, |
14571
|
|
|
|
|
|
|
'min' => 0, |
14572
|
|
|
|
|
|
|
'repspec' => '?', |
14573
|
|
|
|
|
|
|
'subrule' => 'bodyenc' |
14574
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
14575
|
|
|
|
|
|
|
bless( { |
14576
|
|
|
|
|
|
|
'argcode' => undef, |
14577
|
|
|
|
|
|
|
'expected' => undef, |
14578
|
|
|
|
|
|
|
'line' => 116, |
14579
|
|
|
|
|
|
|
'lookahead' => 0, |
14580
|
|
|
|
|
|
|
'matchrule' => 0, |
14581
|
|
|
|
|
|
|
'max' => 1, |
14582
|
|
|
|
|
|
|
'min' => 0, |
14583
|
|
|
|
|
|
|
'repspec' => '?', |
14584
|
|
|
|
|
|
|
'subrule' => 'bodysize' |
14585
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
14586
|
|
|
|
|
|
|
bless( { |
14587
|
|
|
|
|
|
|
'code' => '{ $return = { bodysubtype => $item{bodysubtype} }; |
14588
|
|
|
|
|
|
|
take_optional_items($return, \\%item, |
14589
|
|
|
|
|
|
|
qw/bodyparms bodyid bodydesc bodyenc bodysize/); |
14590
|
|
|
|
|
|
|
1; |
14591
|
|
|
|
|
|
|
}', |
14592
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
14593
|
|
|
|
|
|
|
'line' => 117, |
14594
|
|
|
|
|
|
|
'lookahead' => 0 |
14595
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
14596
|
|
|
|
|
|
|
], |
14597
|
|
|
|
|
|
|
'line' => undef, |
14598
|
|
|
|
|
|
|
'number' => 0, |
14599
|
|
|
|
|
|
|
'patcount' => 0, |
14600
|
|
|
|
|
|
|
'strcount' => 0, |
14601
|
|
|
|
|
|
|
'uncommit' => undef |
14602
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
14603
|
|
|
|
|
|
|
], |
14604
|
|
|
|
|
|
|
'vars' => '' |
14605
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
14606
|
|
|
|
|
|
|
'bcc' => bless( { |
14607
|
|
|
|
|
|
|
'calls' => [ |
14608
|
|
|
|
|
|
|
'ADDRESSES' |
14609
|
|
|
|
|
|
|
], |
14610
|
|
|
|
|
|
|
'changed' => 0, |
14611
|
|
|
|
|
|
|
'impcount' => 0, |
14612
|
|
|
|
|
|
|
'line' => 100, |
14613
|
|
|
|
|
|
|
'name' => 'bcc', |
14614
|
|
|
|
|
|
|
'opcount' => 0, |
14615
|
|
|
|
|
|
|
'prods' => [ |
14616
|
|
|
|
|
|
|
bless( { |
14617
|
|
|
|
|
|
|
'actcount' => 0, |
14618
|
|
|
|
|
|
|
'dircount' => 0, |
14619
|
|
|
|
|
|
|
'error' => undef, |
14620
|
|
|
|
|
|
|
'items' => [ |
14621
|
|
|
|
|
|
|
bless( { |
14622
|
|
|
|
|
|
|
'argcode' => undef, |
14623
|
|
|
|
|
|
|
'implicit' => undef, |
14624
|
|
|
|
|
|
|
'line' => 100, |
14625
|
|
|
|
|
|
|
'lookahead' => 0, |
14626
|
|
|
|
|
|
|
'matchrule' => 0, |
14627
|
|
|
|
|
|
|
'subrule' => 'ADDRESSES' |
14628
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
14629
|
|
|
|
|
|
|
], |
14630
|
|
|
|
|
|
|
'line' => undef, |
14631
|
|
|
|
|
|
|
'number' => 0, |
14632
|
|
|
|
|
|
|
'patcount' => 0, |
14633
|
|
|
|
|
|
|
'strcount' => 0, |
14634
|
|
|
|
|
|
|
'uncommit' => undef |
14635
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
14636
|
|
|
|
|
|
|
], |
14637
|
|
|
|
|
|
|
'vars' => '' |
14638
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
14639
|
|
|
|
|
|
|
'bodyMD5' => bless( { |
14640
|
|
|
|
|
|
|
'calls' => [ |
14641
|
|
|
|
|
|
|
'NIL', |
14642
|
|
|
|
|
|
|
'STRING' |
14643
|
|
|
|
|
|
|
], |
14644
|
|
|
|
|
|
|
'changed' => 0, |
14645
|
|
|
|
|
|
|
'impcount' => 0, |
14646
|
|
|
|
|
|
|
'line' => 72, |
14647
|
|
|
|
|
|
|
'name' => 'bodyMD5', |
14648
|
|
|
|
|
|
|
'opcount' => 0, |
14649
|
|
|
|
|
|
|
'prods' => [ |
14650
|
|
|
|
|
|
|
bless( { |
14651
|
|
|
|
|
|
|
'actcount' => 0, |
14652
|
|
|
|
|
|
|
'dircount' => 0, |
14653
|
|
|
|
|
|
|
'error' => undef, |
14654
|
|
|
|
|
|
|
'items' => [ |
14655
|
|
|
|
|
|
|
bless( { |
14656
|
|
|
|
|
|
|
'argcode' => undef, |
14657
|
|
|
|
|
|
|
'implicit' => undef, |
14658
|
|
|
|
|
|
|
'line' => 72, |
14659
|
|
|
|
|
|
|
'lookahead' => 0, |
14660
|
|
|
|
|
|
|
'matchrule' => 0, |
14661
|
|
|
|
|
|
|
'subrule' => 'NIL' |
14662
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
14663
|
|
|
|
|
|
|
], |
14664
|
|
|
|
|
|
|
'line' => undef, |
14665
|
|
|
|
|
|
|
'number' => 0, |
14666
|
|
|
|
|
|
|
'patcount' => 0, |
14667
|
|
|
|
|
|
|
'strcount' => 0, |
14668
|
|
|
|
|
|
|
'uncommit' => undef |
14669
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
14670
|
|
|
|
|
|
|
bless( { |
14671
|
|
|
|
|
|
|
'actcount' => 0, |
14672
|
|
|
|
|
|
|
'dircount' => 0, |
14673
|
|
|
|
|
|
|
'error' => undef, |
14674
|
|
|
|
|
|
|
'items' => [ |
14675
|
|
|
|
|
|
|
bless( { |
14676
|
|
|
|
|
|
|
'argcode' => undef, |
14677
|
|
|
|
|
|
|
'implicit' => undef, |
14678
|
|
|
|
|
|
|
'line' => 72, |
14679
|
|
|
|
|
|
|
'lookahead' => 0, |
14680
|
|
|
|
|
|
|
'matchrule' => 0, |
14681
|
|
|
|
|
|
|
'subrule' => 'STRING' |
14682
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
14683
|
|
|
|
|
|
|
], |
14684
|
|
|
|
|
|
|
'line' => 72, |
14685
|
|
|
|
|
|
|
'number' => 1, |
14686
|
|
|
|
|
|
|
'patcount' => 0, |
14687
|
|
|
|
|
|
|
'strcount' => 0, |
14688
|
|
|
|
|
|
|
'uncommit' => undef |
14689
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
14690
|
|
|
|
|
|
|
], |
14691
|
|
|
|
|
|
|
'vars' => '' |
14692
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
14693
|
|
|
|
|
|
|
'bodydesc' => bless( { |
14694
|
|
|
|
|
|
|
'calls' => [ |
14695
|
|
|
|
|
|
|
'NIL', |
14696
|
|
|
|
|
|
|
'STRING' |
14697
|
|
|
|
|
|
|
], |
14698
|
|
|
|
|
|
|
'changed' => 0, |
14699
|
|
|
|
|
|
|
'impcount' => 0, |
14700
|
|
|
|
|
|
|
'line' => 69, |
14701
|
|
|
|
|
|
|
'name' => 'bodydesc', |
14702
|
|
|
|
|
|
|
'opcount' => 0, |
14703
|
|
|
|
|
|
|
'prods' => [ |
14704
|
|
|
|
|
|
|
bless( { |
14705
|
|
|
|
|
|
|
'actcount' => 0, |
14706
|
|
|
|
|
|
|
'dircount' => 0, |
14707
|
|
|
|
|
|
|
'error' => undef, |
14708
|
|
|
|
|
|
|
'items' => [ |
14709
|
|
|
|
|
|
|
bless( { |
14710
|
|
|
|
|
|
|
'description' => '/[()]/', |
14711
|
|
|
|
|
|
|
'hashname' => '__PATTERN1__', |
14712
|
|
|
|
|
|
|
'ldelim' => '/', |
14713
|
|
|
|
|
|
|
'line' => 69, |
14714
|
|
|
|
|
|
|
'lookahead' => -1, |
14715
|
|
|
|
|
|
|
'mod' => '', |
14716
|
|
|
|
|
|
|
'pattern' => '[()]', |
14717
|
|
|
|
|
|
|
'rdelim' => '/' |
14718
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
14719
|
|
|
|
|
|
|
bless( { |
14720
|
|
|
|
|
|
|
'argcode' => undef, |
14721
|
|
|
|
|
|
|
'implicit' => undef, |
14722
|
|
|
|
|
|
|
'line' => 69, |
14723
|
|
|
|
|
|
|
'lookahead' => 0, |
14724
|
|
|
|
|
|
|
'matchrule' => 0, |
14725
|
|
|
|
|
|
|
'subrule' => 'NIL' |
14726
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
14727
|
|
|
|
|
|
|
], |
14728
|
|
|
|
|
|
|
'line' => undef, |
14729
|
|
|
|
|
|
|
'number' => 0, |
14730
|
|
|
|
|
|
|
'patcount' => 1, |
14731
|
|
|
|
|
|
|
'strcount' => 0, |
14732
|
|
|
|
|
|
|
'uncommit' => undef |
14733
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
14734
|
|
|
|
|
|
|
bless( { |
14735
|
|
|
|
|
|
|
'actcount' => 0, |
14736
|
|
|
|
|
|
|
'dircount' => 0, |
14737
|
|
|
|
|
|
|
'error' => undef, |
14738
|
|
|
|
|
|
|
'items' => [ |
14739
|
|
|
|
|
|
|
bless( { |
14740
|
|
|
|
|
|
|
'argcode' => undef, |
14741
|
|
|
|
|
|
|
'implicit' => undef, |
14742
|
|
|
|
|
|
|
'line' => 69, |
14743
|
|
|
|
|
|
|
'lookahead' => 0, |
14744
|
|
|
|
|
|
|
'matchrule' => 0, |
14745
|
|
|
|
|
|
|
'subrule' => 'STRING' |
14746
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
14747
|
|
|
|
|
|
|
], |
14748
|
|
|
|
|
|
|
'line' => 69, |
14749
|
|
|
|
|
|
|
'number' => 1, |
14750
|
|
|
|
|
|
|
'patcount' => 0, |
14751
|
|
|
|
|
|
|
'strcount' => 0, |
14752
|
|
|
|
|
|
|
'uncommit' => undef |
14753
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
14754
|
|
|
|
|
|
|
], |
14755
|
|
|
|
|
|
|
'vars' => '' |
14756
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
14757
|
|
|
|
|
|
|
'bodydisp' => bless( { |
14758
|
|
|
|
|
|
|
'calls' => [ |
14759
|
|
|
|
|
|
|
'NIL', |
14760
|
|
|
|
|
|
|
'KVPAIRS' |
14761
|
|
|
|
|
|
|
], |
14762
|
|
|
|
|
|
|
'changed' => 0, |
14763
|
|
|
|
|
|
|
'impcount' => 0, |
14764
|
|
|
|
|
|
|
'line' => 67, |
14765
|
|
|
|
|
|
|
'name' => 'bodydisp', |
14766
|
|
|
|
|
|
|
'opcount' => 0, |
14767
|
|
|
|
|
|
|
'prods' => [ |
14768
|
|
|
|
|
|
|
bless( { |
14769
|
|
|
|
|
|
|
'actcount' => 0, |
14770
|
|
|
|
|
|
|
'dircount' => 0, |
14771
|
|
|
|
|
|
|
'error' => undef, |
14772
|
|
|
|
|
|
|
'items' => [ |
14773
|
|
|
|
|
|
|
bless( { |
14774
|
|
|
|
|
|
|
'argcode' => undef, |
14775
|
|
|
|
|
|
|
'implicit' => undef, |
14776
|
|
|
|
|
|
|
'line' => 67, |
14777
|
|
|
|
|
|
|
'lookahead' => 0, |
14778
|
|
|
|
|
|
|
'matchrule' => 0, |
14779
|
|
|
|
|
|
|
'subrule' => 'NIL' |
14780
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
14781
|
|
|
|
|
|
|
], |
14782
|
|
|
|
|
|
|
'line' => undef, |
14783
|
|
|
|
|
|
|
'number' => 0, |
14784
|
|
|
|
|
|
|
'patcount' => 0, |
14785
|
|
|
|
|
|
|
'strcount' => 0, |
14786
|
|
|
|
|
|
|
'uncommit' => undef |
14787
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
14788
|
|
|
|
|
|
|
bless( { |
14789
|
|
|
|
|
|
|
'actcount' => 0, |
14790
|
|
|
|
|
|
|
'dircount' => 0, |
14791
|
|
|
|
|
|
|
'error' => undef, |
14792
|
|
|
|
|
|
|
'items' => [ |
14793
|
|
|
|
|
|
|
bless( { |
14794
|
|
|
|
|
|
|
'argcode' => undef, |
14795
|
|
|
|
|
|
|
'implicit' => undef, |
14796
|
|
|
|
|
|
|
'line' => 67, |
14797
|
|
|
|
|
|
|
'lookahead' => 0, |
14798
|
|
|
|
|
|
|
'matchrule' => 0, |
14799
|
|
|
|
|
|
|
'subrule' => 'KVPAIRS' |
14800
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
14801
|
|
|
|
|
|
|
], |
14802
|
|
|
|
|
|
|
'line' => 67, |
14803
|
|
|
|
|
|
|
'number' => 1, |
14804
|
|
|
|
|
|
|
'patcount' => 0, |
14805
|
|
|
|
|
|
|
'strcount' => 0, |
14806
|
|
|
|
|
|
|
'uncommit' => undef |
14807
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
14808
|
|
|
|
|
|
|
], |
14809
|
|
|
|
|
|
|
'vars' => '' |
14810
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
14811
|
|
|
|
|
|
|
'bodyenc' => bless( { |
14812
|
|
|
|
|
|
|
'calls' => [ |
14813
|
|
|
|
|
|
|
'NIL', |
14814
|
|
|
|
|
|
|
'STRING', |
14815
|
|
|
|
|
|
|
'KVPAIRS' |
14816
|
|
|
|
|
|
|
], |
14817
|
|
|
|
|
|
|
'changed' => 0, |
14818
|
|
|
|
|
|
|
'impcount' => 0, |
14819
|
|
|
|
|
|
|
'line' => 71, |
14820
|
|
|
|
|
|
|
'name' => 'bodyenc', |
14821
|
|
|
|
|
|
|
'opcount' => 0, |
14822
|
|
|
|
|
|
|
'prods' => [ |
14823
|
|
|
|
|
|
|
bless( { |
14824
|
|
|
|
|
|
|
'actcount' => 0, |
14825
|
|
|
|
|
|
|
'dircount' => 0, |
14826
|
|
|
|
|
|
|
'error' => undef, |
14827
|
|
|
|
|
|
|
'items' => [ |
14828
|
|
|
|
|
|
|
bless( { |
14829
|
|
|
|
|
|
|
'argcode' => undef, |
14830
|
|
|
|
|
|
|
'implicit' => undef, |
14831
|
|
|
|
|
|
|
'line' => 71, |
14832
|
|
|
|
|
|
|
'lookahead' => 0, |
14833
|
|
|
|
|
|
|
'matchrule' => 0, |
14834
|
|
|
|
|
|
|
'subrule' => 'NIL' |
14835
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
14836
|
|
|
|
|
|
|
], |
14837
|
|
|
|
|
|
|
'line' => undef, |
14838
|
|
|
|
|
|
|
'number' => 0, |
14839
|
|
|
|
|
|
|
'patcount' => 0, |
14840
|
|
|
|
|
|
|
'strcount' => 0, |
14841
|
|
|
|
|
|
|
'uncommit' => undef |
14842
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
14843
|
|
|
|
|
|
|
bless( { |
14844
|
|
|
|
|
|
|
'actcount' => 0, |
14845
|
|
|
|
|
|
|
'dircount' => 0, |
14846
|
|
|
|
|
|
|
'error' => undef, |
14847
|
|
|
|
|
|
|
'items' => [ |
14848
|
|
|
|
|
|
|
bless( { |
14849
|
|
|
|
|
|
|
'argcode' => undef, |
14850
|
|
|
|
|
|
|
'implicit' => undef, |
14851
|
|
|
|
|
|
|
'line' => 71, |
14852
|
|
|
|
|
|
|
'lookahead' => 0, |
14853
|
|
|
|
|
|
|
'matchrule' => 0, |
14854
|
|
|
|
|
|
|
'subrule' => 'STRING' |
14855
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
14856
|
|
|
|
|
|
|
], |
14857
|
|
|
|
|
|
|
'line' => 71, |
14858
|
|
|
|
|
|
|
'number' => 1, |
14859
|
|
|
|
|
|
|
'patcount' => 0, |
14860
|
|
|
|
|
|
|
'strcount' => 0, |
14861
|
|
|
|
|
|
|
'uncommit' => undef |
14862
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
14863
|
|
|
|
|
|
|
bless( { |
14864
|
|
|
|
|
|
|
'actcount' => 0, |
14865
|
|
|
|
|
|
|
'dircount' => 0, |
14866
|
|
|
|
|
|
|
'error' => undef, |
14867
|
|
|
|
|
|
|
'items' => [ |
14868
|
|
|
|
|
|
|
bless( { |
14869
|
|
|
|
|
|
|
'argcode' => undef, |
14870
|
|
|
|
|
|
|
'implicit' => undef, |
14871
|
|
|
|
|
|
|
'line' => 71, |
14872
|
|
|
|
|
|
|
'lookahead' => 0, |
14873
|
|
|
|
|
|
|
'matchrule' => 0, |
14874
|
|
|
|
|
|
|
'subrule' => 'KVPAIRS' |
14875
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
14876
|
|
|
|
|
|
|
], |
14877
|
|
|
|
|
|
|
'line' => 71, |
14878
|
|
|
|
|
|
|
'number' => 2, |
14879
|
|
|
|
|
|
|
'patcount' => 0, |
14880
|
|
|
|
|
|
|
'strcount' => 0, |
14881
|
|
|
|
|
|
|
'uncommit' => undef |
14882
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
14883
|
|
|
|
|
|
|
], |
14884
|
|
|
|
|
|
|
'vars' => '' |
14885
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
14886
|
|
|
|
|
|
|
'bodyextensions' => bless( { |
14887
|
|
|
|
|
|
|
'calls' => [ |
14888
|
|
|
|
|
|
|
'NIL', |
14889
|
|
|
|
|
|
|
'STRING' |
14890
|
|
|
|
|
|
|
], |
14891
|
|
|
|
|
|
|
'changed' => 0, |
14892
|
|
|
|
|
|
|
'impcount' => 0, |
14893
|
|
|
|
|
|
|
'line' => 76, |
14894
|
|
|
|
|
|
|
'name' => 'bodyextensions', |
14895
|
|
|
|
|
|
|
'opcount' => 0, |
14896
|
|
|
|
|
|
|
'prods' => [ |
14897
|
|
|
|
|
|
|
bless( { |
14898
|
|
|
|
|
|
|
'actcount' => 0, |
14899
|
|
|
|
|
|
|
'dircount' => 0, |
14900
|
|
|
|
|
|
|
'error' => undef, |
14901
|
|
|
|
|
|
|
'items' => [ |
14902
|
|
|
|
|
|
|
bless( { |
14903
|
|
|
|
|
|
|
'argcode' => undef, |
14904
|
|
|
|
|
|
|
'implicit' => undef, |
14905
|
|
|
|
|
|
|
'line' => 76, |
14906
|
|
|
|
|
|
|
'lookahead' => 0, |
14907
|
|
|
|
|
|
|
'matchrule' => 0, |
14908
|
|
|
|
|
|
|
'subrule' => 'NIL' |
14909
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
14910
|
|
|
|
|
|
|
], |
14911
|
|
|
|
|
|
|
'line' => undef, |
14912
|
|
|
|
|
|
|
'number' => 0, |
14913
|
|
|
|
|
|
|
'patcount' => 0, |
14914
|
|
|
|
|
|
|
'strcount' => 0, |
14915
|
|
|
|
|
|
|
'uncommit' => undef |
14916
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
14917
|
|
|
|
|
|
|
bless( { |
14918
|
|
|
|
|
|
|
'actcount' => 0, |
14919
|
|
|
|
|
|
|
'dircount' => 0, |
14920
|
|
|
|
|
|
|
'error' => undef, |
14921
|
|
|
|
|
|
|
'items' => [ |
14922
|
|
|
|
|
|
|
bless( { |
14923
|
|
|
|
|
|
|
'argcode' => undef, |
14924
|
|
|
|
|
|
|
'implicit' => undef, |
14925
|
|
|
|
|
|
|
'line' => 76, |
14926
|
|
|
|
|
|
|
'lookahead' => 0, |
14927
|
|
|
|
|
|
|
'matchrule' => 0, |
14928
|
|
|
|
|
|
|
'subrule' => 'STRING' |
14929
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
14930
|
|
|
|
|
|
|
], |
14931
|
|
|
|
|
|
|
'line' => 76, |
14932
|
|
|
|
|
|
|
'number' => 1, |
14933
|
|
|
|
|
|
|
'patcount' => 0, |
14934
|
|
|
|
|
|
|
'strcount' => 0, |
14935
|
|
|
|
|
|
|
'uncommit' => undef |
14936
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
14937
|
|
|
|
|
|
|
], |
14938
|
|
|
|
|
|
|
'vars' => '' |
14939
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
14940
|
|
|
|
|
|
|
'bodyextra' => bless( { |
14941
|
|
|
|
|
|
|
'calls' => [ |
14942
|
|
|
|
|
|
|
'NIL', |
14943
|
|
|
|
|
|
|
'STRING', |
14944
|
|
|
|
|
|
|
'STRINGS' |
14945
|
|
|
|
|
|
|
], |
14946
|
|
|
|
|
|
|
'changed' => 0, |
14947
|
|
|
|
|
|
|
'impcount' => 0, |
14948
|
|
|
|
|
|
|
'line' => 74, |
14949
|
|
|
|
|
|
|
'name' => 'bodyextra', |
14950
|
|
|
|
|
|
|
'opcount' => 0, |
14951
|
|
|
|
|
|
|
'prods' => [ |
14952
|
|
|
|
|
|
|
bless( { |
14953
|
|
|
|
|
|
|
'actcount' => 0, |
14954
|
|
|
|
|
|
|
'dircount' => 0, |
14955
|
|
|
|
|
|
|
'error' => undef, |
14956
|
|
|
|
|
|
|
'items' => [ |
14957
|
|
|
|
|
|
|
bless( { |
14958
|
|
|
|
|
|
|
'argcode' => undef, |
14959
|
|
|
|
|
|
|
'implicit' => undef, |
14960
|
|
|
|
|
|
|
'line' => 74, |
14961
|
|
|
|
|
|
|
'lookahead' => 0, |
14962
|
|
|
|
|
|
|
'matchrule' => 0, |
14963
|
|
|
|
|
|
|
'subrule' => 'NIL' |
14964
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
14965
|
|
|
|
|
|
|
], |
14966
|
|
|
|
|
|
|
'line' => undef, |
14967
|
|
|
|
|
|
|
'number' => 0, |
14968
|
|
|
|
|
|
|
'patcount' => 0, |
14969
|
|
|
|
|
|
|
'strcount' => 0, |
14970
|
|
|
|
|
|
|
'uncommit' => undef |
14971
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
14972
|
|
|
|
|
|
|
bless( { |
14973
|
|
|
|
|
|
|
'actcount' => 0, |
14974
|
|
|
|
|
|
|
'dircount' => 0, |
14975
|
|
|
|
|
|
|
'error' => undef, |
14976
|
|
|
|
|
|
|
'items' => [ |
14977
|
|
|
|
|
|
|
bless( { |
14978
|
|
|
|
|
|
|
'argcode' => undef, |
14979
|
|
|
|
|
|
|
'implicit' => undef, |
14980
|
|
|
|
|
|
|
'line' => 74, |
14981
|
|
|
|
|
|
|
'lookahead' => 0, |
14982
|
|
|
|
|
|
|
'matchrule' => 0, |
14983
|
|
|
|
|
|
|
'subrule' => 'STRING' |
14984
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
14985
|
|
|
|
|
|
|
], |
14986
|
|
|
|
|
|
|
'line' => 74, |
14987
|
|
|
|
|
|
|
'number' => 1, |
14988
|
|
|
|
|
|
|
'patcount' => 0, |
14989
|
|
|
|
|
|
|
'strcount' => 0, |
14990
|
|
|
|
|
|
|
'uncommit' => undef |
14991
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
14992
|
|
|
|
|
|
|
bless( { |
14993
|
|
|
|
|
|
|
'actcount' => 0, |
14994
|
|
|
|
|
|
|
'dircount' => 0, |
14995
|
|
|
|
|
|
|
'error' => undef, |
14996
|
|
|
|
|
|
|
'items' => [ |
14997
|
|
|
|
|
|
|
bless( { |
14998
|
|
|
|
|
|
|
'argcode' => undef, |
14999
|
|
|
|
|
|
|
'implicit' => undef, |
15000
|
|
|
|
|
|
|
'line' => 74, |
15001
|
|
|
|
|
|
|
'lookahead' => 0, |
15002
|
|
|
|
|
|
|
'matchrule' => 0, |
15003
|
|
|
|
|
|
|
'subrule' => 'STRINGS' |
15004
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15005
|
|
|
|
|
|
|
], |
15006
|
|
|
|
|
|
|
'line' => 74, |
15007
|
|
|
|
|
|
|
'number' => 2, |
15008
|
|
|
|
|
|
|
'patcount' => 0, |
15009
|
|
|
|
|
|
|
'strcount' => 0, |
15010
|
|
|
|
|
|
|
'uncommit' => undef |
15011
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
15012
|
|
|
|
|
|
|
], |
15013
|
|
|
|
|
|
|
'vars' => '' |
15014
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
15015
|
|
|
|
|
|
|
'bodyid' => bless( { |
15016
|
|
|
|
|
|
|
'calls' => [ |
15017
|
|
|
|
|
|
|
'NIL', |
15018
|
|
|
|
|
|
|
'STRING' |
15019
|
|
|
|
|
|
|
], |
15020
|
|
|
|
|
|
|
'changed' => 0, |
15021
|
|
|
|
|
|
|
'impcount' => 0, |
15022
|
|
|
|
|
|
|
'line' => 68, |
15023
|
|
|
|
|
|
|
'name' => 'bodyid', |
15024
|
|
|
|
|
|
|
'opcount' => 0, |
15025
|
|
|
|
|
|
|
'prods' => [ |
15026
|
|
|
|
|
|
|
bless( { |
15027
|
|
|
|
|
|
|
'actcount' => 0, |
15028
|
|
|
|
|
|
|
'dircount' => 0, |
15029
|
|
|
|
|
|
|
'error' => undef, |
15030
|
|
|
|
|
|
|
'items' => [ |
15031
|
|
|
|
|
|
|
bless( { |
15032
|
|
|
|
|
|
|
'description' => '/[()]/', |
15033
|
|
|
|
|
|
|
'hashname' => '__PATTERN1__', |
15034
|
|
|
|
|
|
|
'ldelim' => '/', |
15035
|
|
|
|
|
|
|
'line' => 68, |
15036
|
|
|
|
|
|
|
'lookahead' => -1, |
15037
|
|
|
|
|
|
|
'mod' => '', |
15038
|
|
|
|
|
|
|
'pattern' => '[()]', |
15039
|
|
|
|
|
|
|
'rdelim' => '/' |
15040
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
15041
|
|
|
|
|
|
|
bless( { |
15042
|
|
|
|
|
|
|
'argcode' => undef, |
15043
|
|
|
|
|
|
|
'implicit' => undef, |
15044
|
|
|
|
|
|
|
'line' => 68, |
15045
|
|
|
|
|
|
|
'lookahead' => 0, |
15046
|
|
|
|
|
|
|
'matchrule' => 0, |
15047
|
|
|
|
|
|
|
'subrule' => 'NIL' |
15048
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15049
|
|
|
|
|
|
|
], |
15050
|
|
|
|
|
|
|
'line' => undef, |
15051
|
|
|
|
|
|
|
'number' => 0, |
15052
|
|
|
|
|
|
|
'patcount' => 1, |
15053
|
|
|
|
|
|
|
'strcount' => 0, |
15054
|
|
|
|
|
|
|
'uncommit' => undef |
15055
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
15056
|
|
|
|
|
|
|
bless( { |
15057
|
|
|
|
|
|
|
'actcount' => 0, |
15058
|
|
|
|
|
|
|
'dircount' => 0, |
15059
|
|
|
|
|
|
|
'error' => undef, |
15060
|
|
|
|
|
|
|
'items' => [ |
15061
|
|
|
|
|
|
|
bless( { |
15062
|
|
|
|
|
|
|
'argcode' => undef, |
15063
|
|
|
|
|
|
|
'implicit' => undef, |
15064
|
|
|
|
|
|
|
'line' => 68, |
15065
|
|
|
|
|
|
|
'lookahead' => 0, |
15066
|
|
|
|
|
|
|
'matchrule' => 0, |
15067
|
|
|
|
|
|
|
'subrule' => 'STRING' |
15068
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15069
|
|
|
|
|
|
|
], |
15070
|
|
|
|
|
|
|
'line' => 68, |
15071
|
|
|
|
|
|
|
'number' => 1, |
15072
|
|
|
|
|
|
|
'patcount' => 0, |
15073
|
|
|
|
|
|
|
'strcount' => 0, |
15074
|
|
|
|
|
|
|
'uncommit' => undef |
15075
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
15076
|
|
|
|
|
|
|
], |
15077
|
|
|
|
|
|
|
'vars' => '' |
15078
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
15079
|
|
|
|
|
|
|
'bodylang' => bless( { |
15080
|
|
|
|
|
|
|
'calls' => [ |
15081
|
|
|
|
|
|
|
'NIL', |
15082
|
|
|
|
|
|
|
'STRING', |
15083
|
|
|
|
|
|
|
'STRINGS' |
15084
|
|
|
|
|
|
|
], |
15085
|
|
|
|
|
|
|
'changed' => 0, |
15086
|
|
|
|
|
|
|
'impcount' => 0, |
15087
|
|
|
|
|
|
|
'line' => 73, |
15088
|
|
|
|
|
|
|
'name' => 'bodylang', |
15089
|
|
|
|
|
|
|
'opcount' => 0, |
15090
|
|
|
|
|
|
|
'prods' => [ |
15091
|
|
|
|
|
|
|
bless( { |
15092
|
|
|
|
|
|
|
'actcount' => 0, |
15093
|
|
|
|
|
|
|
'dircount' => 0, |
15094
|
|
|
|
|
|
|
'error' => undef, |
15095
|
|
|
|
|
|
|
'items' => [ |
15096
|
|
|
|
|
|
|
bless( { |
15097
|
|
|
|
|
|
|
'argcode' => undef, |
15098
|
|
|
|
|
|
|
'implicit' => undef, |
15099
|
|
|
|
|
|
|
'line' => 73, |
15100
|
|
|
|
|
|
|
'lookahead' => 0, |
15101
|
|
|
|
|
|
|
'matchrule' => 0, |
15102
|
|
|
|
|
|
|
'subrule' => 'NIL' |
15103
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15104
|
|
|
|
|
|
|
], |
15105
|
|
|
|
|
|
|
'line' => undef, |
15106
|
|
|
|
|
|
|
'number' => 0, |
15107
|
|
|
|
|
|
|
'patcount' => 0, |
15108
|
|
|
|
|
|
|
'strcount' => 0, |
15109
|
|
|
|
|
|
|
'uncommit' => undef |
15110
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
15111
|
|
|
|
|
|
|
bless( { |
15112
|
|
|
|
|
|
|
'actcount' => 0, |
15113
|
|
|
|
|
|
|
'dircount' => 0, |
15114
|
|
|
|
|
|
|
'error' => undef, |
15115
|
|
|
|
|
|
|
'items' => [ |
15116
|
|
|
|
|
|
|
bless( { |
15117
|
|
|
|
|
|
|
'argcode' => undef, |
15118
|
|
|
|
|
|
|
'implicit' => undef, |
15119
|
|
|
|
|
|
|
'line' => 73, |
15120
|
|
|
|
|
|
|
'lookahead' => 0, |
15121
|
|
|
|
|
|
|
'matchrule' => 0, |
15122
|
|
|
|
|
|
|
'subrule' => 'STRING' |
15123
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15124
|
|
|
|
|
|
|
], |
15125
|
|
|
|
|
|
|
'line' => 73, |
15126
|
|
|
|
|
|
|
'number' => 1, |
15127
|
|
|
|
|
|
|
'patcount' => 0, |
15128
|
|
|
|
|
|
|
'strcount' => 0, |
15129
|
|
|
|
|
|
|
'uncommit' => undef |
15130
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
15131
|
|
|
|
|
|
|
bless( { |
15132
|
|
|
|
|
|
|
'actcount' => 0, |
15133
|
|
|
|
|
|
|
'dircount' => 0, |
15134
|
|
|
|
|
|
|
'error' => undef, |
15135
|
|
|
|
|
|
|
'items' => [ |
15136
|
|
|
|
|
|
|
bless( { |
15137
|
|
|
|
|
|
|
'argcode' => undef, |
15138
|
|
|
|
|
|
|
'implicit' => undef, |
15139
|
|
|
|
|
|
|
'line' => 73, |
15140
|
|
|
|
|
|
|
'lookahead' => 0, |
15141
|
|
|
|
|
|
|
'matchrule' => 0, |
15142
|
|
|
|
|
|
|
'subrule' => 'STRINGS' |
15143
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15144
|
|
|
|
|
|
|
], |
15145
|
|
|
|
|
|
|
'line' => 73, |
15146
|
|
|
|
|
|
|
'number' => 2, |
15147
|
|
|
|
|
|
|
'patcount' => 0, |
15148
|
|
|
|
|
|
|
'strcount' => 0, |
15149
|
|
|
|
|
|
|
'uncommit' => undef |
15150
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
15151
|
|
|
|
|
|
|
], |
15152
|
|
|
|
|
|
|
'vars' => '' |
15153
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
15154
|
|
|
|
|
|
|
'bodyloc' => bless( { |
15155
|
|
|
|
|
|
|
'calls' => [ |
15156
|
|
|
|
|
|
|
'NIL', |
15157
|
|
|
|
|
|
|
'STRING' |
15158
|
|
|
|
|
|
|
], |
15159
|
|
|
|
|
|
|
'changed' => 0, |
15160
|
|
|
|
|
|
|
'impcount' => 0, |
15161
|
|
|
|
|
|
|
'line' => 75, |
15162
|
|
|
|
|
|
|
'name' => 'bodyloc', |
15163
|
|
|
|
|
|
|
'opcount' => 0, |
15164
|
|
|
|
|
|
|
'prods' => [ |
15165
|
|
|
|
|
|
|
bless( { |
15166
|
|
|
|
|
|
|
'actcount' => 0, |
15167
|
|
|
|
|
|
|
'dircount' => 0, |
15168
|
|
|
|
|
|
|
'error' => undef, |
15169
|
|
|
|
|
|
|
'items' => [ |
15170
|
|
|
|
|
|
|
bless( { |
15171
|
|
|
|
|
|
|
'argcode' => undef, |
15172
|
|
|
|
|
|
|
'implicit' => undef, |
15173
|
|
|
|
|
|
|
'line' => 75, |
15174
|
|
|
|
|
|
|
'lookahead' => 0, |
15175
|
|
|
|
|
|
|
'matchrule' => 0, |
15176
|
|
|
|
|
|
|
'subrule' => 'NIL' |
15177
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15178
|
|
|
|
|
|
|
], |
15179
|
|
|
|
|
|
|
'line' => undef, |
15180
|
|
|
|
|
|
|
'number' => 0, |
15181
|
|
|
|
|
|
|
'patcount' => 0, |
15182
|
|
|
|
|
|
|
'strcount' => 0, |
15183
|
|
|
|
|
|
|
'uncommit' => undef |
15184
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
15185
|
|
|
|
|
|
|
bless( { |
15186
|
|
|
|
|
|
|
'actcount' => 0, |
15187
|
|
|
|
|
|
|
'dircount' => 0, |
15188
|
|
|
|
|
|
|
'error' => undef, |
15189
|
|
|
|
|
|
|
'items' => [ |
15190
|
|
|
|
|
|
|
bless( { |
15191
|
|
|
|
|
|
|
'argcode' => undef, |
15192
|
|
|
|
|
|
|
'implicit' => undef, |
15193
|
|
|
|
|
|
|
'line' => 75, |
15194
|
|
|
|
|
|
|
'lookahead' => 0, |
15195
|
|
|
|
|
|
|
'matchrule' => 0, |
15196
|
|
|
|
|
|
|
'subrule' => 'STRING' |
15197
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15198
|
|
|
|
|
|
|
], |
15199
|
|
|
|
|
|
|
'line' => 75, |
15200
|
|
|
|
|
|
|
'number' => 1, |
15201
|
|
|
|
|
|
|
'patcount' => 0, |
15202
|
|
|
|
|
|
|
'strcount' => 0, |
15203
|
|
|
|
|
|
|
'uncommit' => undef |
15204
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
15205
|
|
|
|
|
|
|
], |
15206
|
|
|
|
|
|
|
'vars' => '' |
15207
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
15208
|
|
|
|
|
|
|
'bodyparms' => bless( { |
15209
|
|
|
|
|
|
|
'calls' => [ |
15210
|
|
|
|
|
|
|
'NIL', |
15211
|
|
|
|
|
|
|
'KVPAIRS' |
15212
|
|
|
|
|
|
|
], |
15213
|
|
|
|
|
|
|
'changed' => 0, |
15214
|
|
|
|
|
|
|
'impcount' => 0, |
15215
|
|
|
|
|
|
|
'line' => 66, |
15216
|
|
|
|
|
|
|
'name' => 'bodyparms', |
15217
|
|
|
|
|
|
|
'opcount' => 0, |
15218
|
|
|
|
|
|
|
'prods' => [ |
15219
|
|
|
|
|
|
|
bless( { |
15220
|
|
|
|
|
|
|
'actcount' => 0, |
15221
|
|
|
|
|
|
|
'dircount' => 0, |
15222
|
|
|
|
|
|
|
'error' => undef, |
15223
|
|
|
|
|
|
|
'items' => [ |
15224
|
|
|
|
|
|
|
bless( { |
15225
|
|
|
|
|
|
|
'argcode' => undef, |
15226
|
|
|
|
|
|
|
'implicit' => undef, |
15227
|
|
|
|
|
|
|
'line' => 66, |
15228
|
|
|
|
|
|
|
'lookahead' => 0, |
15229
|
|
|
|
|
|
|
'matchrule' => 0, |
15230
|
|
|
|
|
|
|
'subrule' => 'NIL' |
15231
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15232
|
|
|
|
|
|
|
], |
15233
|
|
|
|
|
|
|
'line' => undef, |
15234
|
|
|
|
|
|
|
'number' => 0, |
15235
|
|
|
|
|
|
|
'patcount' => 0, |
15236
|
|
|
|
|
|
|
'strcount' => 0, |
15237
|
|
|
|
|
|
|
'uncommit' => undef |
15238
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
15239
|
|
|
|
|
|
|
bless( { |
15240
|
|
|
|
|
|
|
'actcount' => 0, |
15241
|
|
|
|
|
|
|
'dircount' => 0, |
15242
|
|
|
|
|
|
|
'error' => undef, |
15243
|
|
|
|
|
|
|
'items' => [ |
15244
|
|
|
|
|
|
|
bless( { |
15245
|
|
|
|
|
|
|
'argcode' => undef, |
15246
|
|
|
|
|
|
|
'implicit' => undef, |
15247
|
|
|
|
|
|
|
'line' => 66, |
15248
|
|
|
|
|
|
|
'lookahead' => 0, |
15249
|
|
|
|
|
|
|
'matchrule' => 0, |
15250
|
|
|
|
|
|
|
'subrule' => 'KVPAIRS' |
15251
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15252
|
|
|
|
|
|
|
], |
15253
|
|
|
|
|
|
|
'line' => 66, |
15254
|
|
|
|
|
|
|
'number' => 1, |
15255
|
|
|
|
|
|
|
'patcount' => 0, |
15256
|
|
|
|
|
|
|
'strcount' => 0, |
15257
|
|
|
|
|
|
|
'uncommit' => undef |
15258
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
15259
|
|
|
|
|
|
|
], |
15260
|
|
|
|
|
|
|
'vars' => '' |
15261
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
15262
|
|
|
|
|
|
|
'bodysize' => bless( { |
15263
|
|
|
|
|
|
|
'calls' => [ |
15264
|
|
|
|
|
|
|
'NIL', |
15265
|
|
|
|
|
|
|
'NUMBER' |
15266
|
|
|
|
|
|
|
], |
15267
|
|
|
|
|
|
|
'changed' => 0, |
15268
|
|
|
|
|
|
|
'impcount' => 0, |
15269
|
|
|
|
|
|
|
'line' => 70, |
15270
|
|
|
|
|
|
|
'name' => 'bodysize', |
15271
|
|
|
|
|
|
|
'opcount' => 0, |
15272
|
|
|
|
|
|
|
'prods' => [ |
15273
|
|
|
|
|
|
|
bless( { |
15274
|
|
|
|
|
|
|
'actcount' => 0, |
15275
|
|
|
|
|
|
|
'dircount' => 0, |
15276
|
|
|
|
|
|
|
'error' => undef, |
15277
|
|
|
|
|
|
|
'items' => [ |
15278
|
|
|
|
|
|
|
bless( { |
15279
|
|
|
|
|
|
|
'description' => '/[()]/', |
15280
|
|
|
|
|
|
|
'hashname' => '__PATTERN1__', |
15281
|
|
|
|
|
|
|
'ldelim' => '/', |
15282
|
|
|
|
|
|
|
'line' => 70, |
15283
|
|
|
|
|
|
|
'lookahead' => -1, |
15284
|
|
|
|
|
|
|
'mod' => '', |
15285
|
|
|
|
|
|
|
'pattern' => '[()]', |
15286
|
|
|
|
|
|
|
'rdelim' => '/' |
15287
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
15288
|
|
|
|
|
|
|
bless( { |
15289
|
|
|
|
|
|
|
'argcode' => undef, |
15290
|
|
|
|
|
|
|
'implicit' => undef, |
15291
|
|
|
|
|
|
|
'line' => 70, |
15292
|
|
|
|
|
|
|
'lookahead' => 0, |
15293
|
|
|
|
|
|
|
'matchrule' => 0, |
15294
|
|
|
|
|
|
|
'subrule' => 'NIL' |
15295
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15296
|
|
|
|
|
|
|
], |
15297
|
|
|
|
|
|
|
'line' => undef, |
15298
|
|
|
|
|
|
|
'number' => 0, |
15299
|
|
|
|
|
|
|
'patcount' => 1, |
15300
|
|
|
|
|
|
|
'strcount' => 0, |
15301
|
|
|
|
|
|
|
'uncommit' => undef |
15302
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
15303
|
|
|
|
|
|
|
bless( { |
15304
|
|
|
|
|
|
|
'actcount' => 0, |
15305
|
|
|
|
|
|
|
'dircount' => 0, |
15306
|
|
|
|
|
|
|
'error' => undef, |
15307
|
|
|
|
|
|
|
'items' => [ |
15308
|
|
|
|
|
|
|
bless( { |
15309
|
|
|
|
|
|
|
'argcode' => undef, |
15310
|
|
|
|
|
|
|
'implicit' => undef, |
15311
|
|
|
|
|
|
|
'line' => 70, |
15312
|
|
|
|
|
|
|
'lookahead' => 0, |
15313
|
|
|
|
|
|
|
'matchrule' => 0, |
15314
|
|
|
|
|
|
|
'subrule' => 'NUMBER' |
15315
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15316
|
|
|
|
|
|
|
], |
15317
|
|
|
|
|
|
|
'line' => 70, |
15318
|
|
|
|
|
|
|
'number' => 1, |
15319
|
|
|
|
|
|
|
'patcount' => 0, |
15320
|
|
|
|
|
|
|
'strcount' => 0, |
15321
|
|
|
|
|
|
|
'uncommit' => undef |
15322
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
15323
|
|
|
|
|
|
|
], |
15324
|
|
|
|
|
|
|
'vars' => '' |
15325
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
15326
|
|
|
|
|
|
|
'bodystructure' => bless( { |
15327
|
|
|
|
|
|
|
'calls' => [ |
15328
|
|
|
|
|
|
|
'part' |
15329
|
|
|
|
|
|
|
], |
15330
|
|
|
|
|
|
|
'changed' => 0, |
15331
|
|
|
|
|
|
|
'impcount' => 0, |
15332
|
|
|
|
|
|
|
'line' => 183, |
15333
|
|
|
|
|
|
|
'name' => 'bodystructure', |
15334
|
|
|
|
|
|
|
'opcount' => 0, |
15335
|
|
|
|
|
|
|
'prods' => [ |
15336
|
|
|
|
|
|
|
bless( { |
15337
|
|
|
|
|
|
|
'actcount' => 1, |
15338
|
|
|
|
|
|
|
'dircount' => 0, |
15339
|
|
|
|
|
|
|
'error' => undef, |
15340
|
|
|
|
|
|
|
'items' => [ |
15341
|
|
|
|
|
|
|
bless( { |
15342
|
|
|
|
|
|
|
'description' => '\'(\'', |
15343
|
|
|
|
|
|
|
'hashname' => '__STRING1__', |
15344
|
|
|
|
|
|
|
'line' => 183, |
15345
|
|
|
|
|
|
|
'lookahead' => 0, |
15346
|
|
|
|
|
|
|
'pattern' => '(' |
15347
|
|
|
|
|
|
|
}, 'Parse::RecDescent::InterpLit' ), |
15348
|
|
|
|
|
|
|
bless( { |
15349
|
|
|
|
|
|
|
'argcode' => undef, |
15350
|
|
|
|
|
|
|
'expected' => undef, |
15351
|
|
|
|
|
|
|
'line' => 183, |
15352
|
|
|
|
|
|
|
'lookahead' => 0, |
15353
|
|
|
|
|
|
|
'matchrule' => 0, |
15354
|
|
|
|
|
|
|
'max' => 100000000, |
15355
|
|
|
|
|
|
|
'min' => 1, |
15356
|
|
|
|
|
|
|
'repspec' => 's', |
15357
|
|
|
|
|
|
|
'subrule' => 'part' |
15358
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
15359
|
|
|
|
|
|
|
bless( { |
15360
|
|
|
|
|
|
|
'description' => '\')\'', |
15361
|
|
|
|
|
|
|
'hashname' => '__STRING2__', |
15362
|
|
|
|
|
|
|
'line' => 183, |
15363
|
|
|
|
|
|
|
'lookahead' => 0, |
15364
|
|
|
|
|
|
|
'pattern' => ')' |
15365
|
|
|
|
|
|
|
}, 'Parse::RecDescent::InterpLit' ), |
15366
|
|
|
|
|
|
|
bless( { |
15367
|
|
|
|
|
|
|
'code' => '{ $return = $item{\'part(s)\'} }', |
15368
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
15369
|
|
|
|
|
|
|
'line' => 184, |
15370
|
|
|
|
|
|
|
'lookahead' => 0 |
15371
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
15372
|
|
|
|
|
|
|
], |
15373
|
|
|
|
|
|
|
'line' => undef, |
15374
|
|
|
|
|
|
|
'number' => 0, |
15375
|
|
|
|
|
|
|
'patcount' => 0, |
15376
|
|
|
|
|
|
|
'strcount' => 2, |
15377
|
|
|
|
|
|
|
'uncommit' => undef |
15378
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
15379
|
|
|
|
|
|
|
], |
15380
|
|
|
|
|
|
|
'vars' => '' |
15381
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
15382
|
|
|
|
|
|
|
'bodysubtype' => bless( { |
15383
|
|
|
|
|
|
|
'calls' => [ |
15384
|
|
|
|
|
|
|
'PLAIN', |
15385
|
|
|
|
|
|
|
'HTML', |
15386
|
|
|
|
|
|
|
'NIL', |
15387
|
|
|
|
|
|
|
'STRING' |
15388
|
|
|
|
|
|
|
], |
15389
|
|
|
|
|
|
|
'changed' => 0, |
15390
|
|
|
|
|
|
|
'impcount' => 0, |
15391
|
|
|
|
|
|
|
'line' => 54, |
15392
|
|
|
|
|
|
|
'name' => 'bodysubtype', |
15393
|
|
|
|
|
|
|
'opcount' => 0, |
15394
|
|
|
|
|
|
|
'prods' => [ |
15395
|
|
|
|
|
|
|
bless( { |
15396
|
|
|
|
|
|
|
'actcount' => 0, |
15397
|
|
|
|
|
|
|
'dircount' => 0, |
15398
|
|
|
|
|
|
|
'error' => undef, |
15399
|
|
|
|
|
|
|
'items' => [ |
15400
|
|
|
|
|
|
|
bless( { |
15401
|
|
|
|
|
|
|
'argcode' => undef, |
15402
|
|
|
|
|
|
|
'implicit' => undef, |
15403
|
|
|
|
|
|
|
'line' => 54, |
15404
|
|
|
|
|
|
|
'lookahead' => 0, |
15405
|
|
|
|
|
|
|
'matchrule' => 0, |
15406
|
|
|
|
|
|
|
'subrule' => 'PLAIN' |
15407
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15408
|
|
|
|
|
|
|
], |
15409
|
|
|
|
|
|
|
'line' => undef, |
15410
|
|
|
|
|
|
|
'number' => 0, |
15411
|
|
|
|
|
|
|
'patcount' => 0, |
15412
|
|
|
|
|
|
|
'strcount' => 0, |
15413
|
|
|
|
|
|
|
'uncommit' => undef |
15414
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
15415
|
|
|
|
|
|
|
bless( { |
15416
|
|
|
|
|
|
|
'actcount' => 0, |
15417
|
|
|
|
|
|
|
'dircount' => 0, |
15418
|
|
|
|
|
|
|
'error' => undef, |
15419
|
|
|
|
|
|
|
'items' => [ |
15420
|
|
|
|
|
|
|
bless( { |
15421
|
|
|
|
|
|
|
'argcode' => undef, |
15422
|
|
|
|
|
|
|
'implicit' => undef, |
15423
|
|
|
|
|
|
|
'line' => 54, |
15424
|
|
|
|
|
|
|
'lookahead' => 0, |
15425
|
|
|
|
|
|
|
'matchrule' => 0, |
15426
|
|
|
|
|
|
|
'subrule' => 'HTML' |
15427
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15428
|
|
|
|
|
|
|
], |
15429
|
|
|
|
|
|
|
'line' => 54, |
15430
|
|
|
|
|
|
|
'number' => 1, |
15431
|
|
|
|
|
|
|
'patcount' => 0, |
15432
|
|
|
|
|
|
|
'strcount' => 0, |
15433
|
|
|
|
|
|
|
'uncommit' => undef |
15434
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
15435
|
|
|
|
|
|
|
bless( { |
15436
|
|
|
|
|
|
|
'actcount' => 0, |
15437
|
|
|
|
|
|
|
'dircount' => 0, |
15438
|
|
|
|
|
|
|
'error' => undef, |
15439
|
|
|
|
|
|
|
'items' => [ |
15440
|
|
|
|
|
|
|
bless( { |
15441
|
|
|
|
|
|
|
'argcode' => undef, |
15442
|
|
|
|
|
|
|
'implicit' => undef, |
15443
|
|
|
|
|
|
|
'line' => 54, |
15444
|
|
|
|
|
|
|
'lookahead' => 0, |
15445
|
|
|
|
|
|
|
'matchrule' => 0, |
15446
|
|
|
|
|
|
|
'subrule' => 'NIL' |
15447
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15448
|
|
|
|
|
|
|
], |
15449
|
|
|
|
|
|
|
'line' => 54, |
15450
|
|
|
|
|
|
|
'number' => 2, |
15451
|
|
|
|
|
|
|
'patcount' => 0, |
15452
|
|
|
|
|
|
|
'strcount' => 0, |
15453
|
|
|
|
|
|
|
'uncommit' => undef |
15454
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
15455
|
|
|
|
|
|
|
bless( { |
15456
|
|
|
|
|
|
|
'actcount' => 0, |
15457
|
|
|
|
|
|
|
'dircount' => 0, |
15458
|
|
|
|
|
|
|
'error' => undef, |
15459
|
|
|
|
|
|
|
'items' => [ |
15460
|
|
|
|
|
|
|
bless( { |
15461
|
|
|
|
|
|
|
'argcode' => undef, |
15462
|
|
|
|
|
|
|
'implicit' => undef, |
15463
|
|
|
|
|
|
|
'line' => 54, |
15464
|
|
|
|
|
|
|
'lookahead' => 0, |
15465
|
|
|
|
|
|
|
'matchrule' => 0, |
15466
|
|
|
|
|
|
|
'subrule' => 'STRING' |
15467
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15468
|
|
|
|
|
|
|
], |
15469
|
|
|
|
|
|
|
'line' => 54, |
15470
|
|
|
|
|
|
|
'number' => 3, |
15471
|
|
|
|
|
|
|
'patcount' => 0, |
15472
|
|
|
|
|
|
|
'strcount' => 0, |
15473
|
|
|
|
|
|
|
'uncommit' => undef |
15474
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
15475
|
|
|
|
|
|
|
], |
15476
|
|
|
|
|
|
|
'vars' => '' |
15477
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
15478
|
|
|
|
|
|
|
'bodytype' => bless( { |
15479
|
|
|
|
|
|
|
'calls' => [ |
15480
|
|
|
|
|
|
|
'STRING' |
15481
|
|
|
|
|
|
|
], |
15482
|
|
|
|
|
|
|
'changed' => 0, |
15483
|
|
|
|
|
|
|
'impcount' => 0, |
15484
|
|
|
|
|
|
|
'line' => 65, |
15485
|
|
|
|
|
|
|
'name' => 'bodytype', |
15486
|
|
|
|
|
|
|
'opcount' => 0, |
15487
|
|
|
|
|
|
|
'prods' => [ |
15488
|
|
|
|
|
|
|
bless( { |
15489
|
|
|
|
|
|
|
'actcount' => 0, |
15490
|
|
|
|
|
|
|
'dircount' => 0, |
15491
|
|
|
|
|
|
|
'error' => undef, |
15492
|
|
|
|
|
|
|
'items' => [ |
15493
|
|
|
|
|
|
|
bless( { |
15494
|
|
|
|
|
|
|
'argcode' => undef, |
15495
|
|
|
|
|
|
|
'implicit' => undef, |
15496
|
|
|
|
|
|
|
'line' => 65, |
15497
|
|
|
|
|
|
|
'lookahead' => 0, |
15498
|
|
|
|
|
|
|
'matchrule' => 0, |
15499
|
|
|
|
|
|
|
'subrule' => 'STRING' |
15500
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15501
|
|
|
|
|
|
|
], |
15502
|
|
|
|
|
|
|
'line' => undef, |
15503
|
|
|
|
|
|
|
'number' => 0, |
15504
|
|
|
|
|
|
|
'patcount' => 0, |
15505
|
|
|
|
|
|
|
'strcount' => 0, |
15506
|
|
|
|
|
|
|
'uncommit' => undef |
15507
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
15508
|
|
|
|
|
|
|
], |
15509
|
|
|
|
|
|
|
'vars' => '' |
15510
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
15511
|
|
|
|
|
|
|
'cc' => bless( { |
15512
|
|
|
|
|
|
|
'calls' => [ |
15513
|
|
|
|
|
|
|
'ADDRESSES' |
15514
|
|
|
|
|
|
|
], |
15515
|
|
|
|
|
|
|
'changed' => 0, |
15516
|
|
|
|
|
|
|
'impcount' => 0, |
15517
|
|
|
|
|
|
|
'line' => 99, |
15518
|
|
|
|
|
|
|
'name' => 'cc', |
15519
|
|
|
|
|
|
|
'opcount' => 0, |
15520
|
|
|
|
|
|
|
'prods' => [ |
15521
|
|
|
|
|
|
|
bless( { |
15522
|
|
|
|
|
|
|
'actcount' => 0, |
15523
|
|
|
|
|
|
|
'dircount' => 0, |
15524
|
|
|
|
|
|
|
'error' => undef, |
15525
|
|
|
|
|
|
|
'items' => [ |
15526
|
|
|
|
|
|
|
bless( { |
15527
|
|
|
|
|
|
|
'argcode' => undef, |
15528
|
|
|
|
|
|
|
'implicit' => undef, |
15529
|
|
|
|
|
|
|
'line' => 99, |
15530
|
|
|
|
|
|
|
'lookahead' => 0, |
15531
|
|
|
|
|
|
|
'matchrule' => 0, |
15532
|
|
|
|
|
|
|
'subrule' => 'ADDRESSES' |
15533
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15534
|
|
|
|
|
|
|
], |
15535
|
|
|
|
|
|
|
'line' => undef, |
15536
|
|
|
|
|
|
|
'number' => 0, |
15537
|
|
|
|
|
|
|
'patcount' => 0, |
15538
|
|
|
|
|
|
|
'strcount' => 0, |
15539
|
|
|
|
|
|
|
'uncommit' => undef |
15540
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
15541
|
|
|
|
|
|
|
], |
15542
|
|
|
|
|
|
|
'vars' => '' |
15543
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
15544
|
|
|
|
|
|
|
'date' => bless( { |
15545
|
|
|
|
|
|
|
'calls' => [ |
15546
|
|
|
|
|
|
|
'NIL', |
15547
|
|
|
|
|
|
|
'STRING' |
15548
|
|
|
|
|
|
|
], |
15549
|
|
|
|
|
|
|
'changed' => 0, |
15550
|
|
|
|
|
|
|
'impcount' => 0, |
15551
|
|
|
|
|
|
|
'line' => 94, |
15552
|
|
|
|
|
|
|
'name' => 'date', |
15553
|
|
|
|
|
|
|
'opcount' => 0, |
15554
|
|
|
|
|
|
|
'prods' => [ |
15555
|
|
|
|
|
|
|
bless( { |
15556
|
|
|
|
|
|
|
'actcount' => 0, |
15557
|
|
|
|
|
|
|
'dircount' => 0, |
15558
|
|
|
|
|
|
|
'error' => undef, |
15559
|
|
|
|
|
|
|
'items' => [ |
15560
|
|
|
|
|
|
|
bless( { |
15561
|
|
|
|
|
|
|
'argcode' => undef, |
15562
|
|
|
|
|
|
|
'implicit' => undef, |
15563
|
|
|
|
|
|
|
'line' => 94, |
15564
|
|
|
|
|
|
|
'lookahead' => 0, |
15565
|
|
|
|
|
|
|
'matchrule' => 0, |
15566
|
|
|
|
|
|
|
'subrule' => 'NIL' |
15567
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15568
|
|
|
|
|
|
|
], |
15569
|
|
|
|
|
|
|
'line' => undef, |
15570
|
|
|
|
|
|
|
'number' => 0, |
15571
|
|
|
|
|
|
|
'patcount' => 0, |
15572
|
|
|
|
|
|
|
'strcount' => 0, |
15573
|
|
|
|
|
|
|
'uncommit' => undef |
15574
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
15575
|
|
|
|
|
|
|
bless( { |
15576
|
|
|
|
|
|
|
'actcount' => 0, |
15577
|
|
|
|
|
|
|
'dircount' => 0, |
15578
|
|
|
|
|
|
|
'error' => undef, |
15579
|
|
|
|
|
|
|
'items' => [ |
15580
|
|
|
|
|
|
|
bless( { |
15581
|
|
|
|
|
|
|
'argcode' => undef, |
15582
|
|
|
|
|
|
|
'implicit' => undef, |
15583
|
|
|
|
|
|
|
'line' => 94, |
15584
|
|
|
|
|
|
|
'lookahead' => 0, |
15585
|
|
|
|
|
|
|
'matchrule' => 0, |
15586
|
|
|
|
|
|
|
'subrule' => 'STRING' |
15587
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15588
|
|
|
|
|
|
|
], |
15589
|
|
|
|
|
|
|
'line' => 94, |
15590
|
|
|
|
|
|
|
'number' => 1, |
15591
|
|
|
|
|
|
|
'patcount' => 0, |
15592
|
|
|
|
|
|
|
'strcount' => 0, |
15593
|
|
|
|
|
|
|
'uncommit' => undef |
15594
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
15595
|
|
|
|
|
|
|
], |
15596
|
|
|
|
|
|
|
'vars' => '' |
15597
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
15598
|
|
|
|
|
|
|
'envelope' => bless( { |
15599
|
|
|
|
|
|
|
'calls' => [ |
15600
|
|
|
|
|
|
|
'envelopestruct' |
15601
|
|
|
|
|
|
|
], |
15602
|
|
|
|
|
|
|
'changed' => 0, |
15603
|
|
|
|
|
|
|
'impcount' => 0, |
15604
|
|
|
|
|
|
|
'line' => 189, |
15605
|
|
|
|
|
|
|
'name' => 'envelope', |
15606
|
|
|
|
|
|
|
'opcount' => 0, |
15607
|
|
|
|
|
|
|
'prods' => [ |
15608
|
|
|
|
|
|
|
bless( { |
15609
|
|
|
|
|
|
|
'actcount' => 1, |
15610
|
|
|
|
|
|
|
'dircount' => 0, |
15611
|
|
|
|
|
|
|
'error' => undef, |
15612
|
|
|
|
|
|
|
'items' => [ |
15613
|
|
|
|
|
|
|
bless( { |
15614
|
|
|
|
|
|
|
'description' => '/.*?\\\\(.*?ENVELOPE/', |
15615
|
|
|
|
|
|
|
'hashname' => '__PATTERN1__', |
15616
|
|
|
|
|
|
|
'ldelim' => '/', |
15617
|
|
|
|
|
|
|
'line' => 189, |
15618
|
|
|
|
|
|
|
'lookahead' => 0, |
15619
|
|
|
|
|
|
|
'mod' => '', |
15620
|
|
|
|
|
|
|
'pattern' => '.*?\\(.*?ENVELOPE', |
15621
|
|
|
|
|
|
|
'rdelim' => '/' |
15622
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
15623
|
|
|
|
|
|
|
bless( { |
15624
|
|
|
|
|
|
|
'argcode' => undef, |
15625
|
|
|
|
|
|
|
'implicit' => undef, |
15626
|
|
|
|
|
|
|
'line' => 189, |
15627
|
|
|
|
|
|
|
'lookahead' => 0, |
15628
|
|
|
|
|
|
|
'matchrule' => 0, |
15629
|
|
|
|
|
|
|
'subrule' => 'envelopestruct' |
15630
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
15631
|
|
|
|
|
|
|
bless( { |
15632
|
|
|
|
|
|
|
'description' => '/.*\\\\)/', |
15633
|
|
|
|
|
|
|
'hashname' => '__PATTERN2__', |
15634
|
|
|
|
|
|
|
'ldelim' => '/', |
15635
|
|
|
|
|
|
|
'line' => 189, |
15636
|
|
|
|
|
|
|
'lookahead' => 0, |
15637
|
|
|
|
|
|
|
'mod' => '', |
15638
|
|
|
|
|
|
|
'pattern' => '.*\\)', |
15639
|
|
|
|
|
|
|
'rdelim' => '/' |
15640
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
15641
|
|
|
|
|
|
|
bless( { |
15642
|
|
|
|
|
|
|
'code' => '{ $return = $item{envelopestruct} }', |
15643
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
15644
|
|
|
|
|
|
|
'line' => 190, |
15645
|
|
|
|
|
|
|
'lookahead' => 0 |
15646
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
15647
|
|
|
|
|
|
|
], |
15648
|
|
|
|
|
|
|
'line' => undef, |
15649
|
|
|
|
|
|
|
'number' => 0, |
15650
|
|
|
|
|
|
|
'patcount' => 2, |
15651
|
|
|
|
|
|
|
'strcount' => 0, |
15652
|
|
|
|
|
|
|
'uncommit' => undef |
15653
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
15654
|
|
|
|
|
|
|
], |
15655
|
|
|
|
|
|
|
'vars' => '' |
15656
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
15657
|
|
|
|
|
|
|
'envelopestruct' => bless( { |
15658
|
|
|
|
|
|
|
'calls' => [ |
15659
|
|
|
|
|
|
|
'date', |
15660
|
|
|
|
|
|
|
'subject', |
15661
|
|
|
|
|
|
|
'from', |
15662
|
|
|
|
|
|
|
'sender', |
15663
|
|
|
|
|
|
|
'replyto', |
15664
|
|
|
|
|
|
|
'to', |
15665
|
|
|
|
|
|
|
'cc', |
15666
|
|
|
|
|
|
|
'bcc', |
15667
|
|
|
|
|
|
|
'inreplyto', |
15668
|
|
|
|
|
|
|
'messageid' |
15669
|
|
|
|
|
|
|
], |
15670
|
|
|
|
|
|
|
'changed' => 0, |
15671
|
|
|
|
|
|
|
'impcount' => 0, |
15672
|
|
|
|
|
|
|
'line' => 106, |
15673
|
|
|
|
|
|
|
'name' => 'envelopestruct', |
15674
|
|
|
|
|
|
|
'opcount' => 0, |
15675
|
|
|
|
|
|
|
'prods' => [ |
15676
|
|
|
|
|
|
|
bless( { |
15677
|
|
|
|
|
|
|
'actcount' => 1, |
15678
|
|
|
|
|
|
|
'dircount' => 0, |
15679
|
|
|
|
|
|
|
'error' => undef, |
15680
|
|
|
|
|
|
|
'items' => [ |
15681
|
|
|
|
|
|
|
bless( { |
15682
|
|
|
|
|
|
|
'description' => '\'(\'', |
15683
|
|
|
|
|
|
|
'hashname' => '__STRING1__', |
15684
|
|
|
|
|
|
|
'line' => 106, |
15685
|
|
|
|
|
|
|
'lookahead' => 0, |
15686
|
|
|
|
|
|
|
'pattern' => '(' |
15687
|
|
|
|
|
|
|
}, 'Parse::RecDescent::InterpLit' ), |
15688
|
|
|
|
|
|
|
bless( { |
15689
|
|
|
|
|
|
|
'argcode' => undef, |
15690
|
|
|
|
|
|
|
'implicit' => undef, |
15691
|
|
|
|
|
|
|
'line' => 106, |
15692
|
|
|
|
|
|
|
'lookahead' => 0, |
15693
|
|
|
|
|
|
|
'matchrule' => 0, |
15694
|
|
|
|
|
|
|
'subrule' => 'date' |
15695
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
15696
|
|
|
|
|
|
|
bless( { |
15697
|
|
|
|
|
|
|
'argcode' => undef, |
15698
|
|
|
|
|
|
|
'implicit' => undef, |
15699
|
|
|
|
|
|
|
'line' => 106, |
15700
|
|
|
|
|
|
|
'lookahead' => 0, |
15701
|
|
|
|
|
|
|
'matchrule' => 0, |
15702
|
|
|
|
|
|
|
'subrule' => 'subject' |
15703
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
15704
|
|
|
|
|
|
|
bless( { |
15705
|
|
|
|
|
|
|
'argcode' => undef, |
15706
|
|
|
|
|
|
|
'implicit' => undef, |
15707
|
|
|
|
|
|
|
'line' => 106, |
15708
|
|
|
|
|
|
|
'lookahead' => 0, |
15709
|
|
|
|
|
|
|
'matchrule' => 0, |
15710
|
|
|
|
|
|
|
'subrule' => 'from' |
15711
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
15712
|
|
|
|
|
|
|
bless( { |
15713
|
|
|
|
|
|
|
'argcode' => undef, |
15714
|
|
|
|
|
|
|
'implicit' => undef, |
15715
|
|
|
|
|
|
|
'line' => 106, |
15716
|
|
|
|
|
|
|
'lookahead' => 0, |
15717
|
|
|
|
|
|
|
'matchrule' => 0, |
15718
|
|
|
|
|
|
|
'subrule' => 'sender' |
15719
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
15720
|
|
|
|
|
|
|
bless( { |
15721
|
|
|
|
|
|
|
'argcode' => undef, |
15722
|
|
|
|
|
|
|
'implicit' => undef, |
15723
|
|
|
|
|
|
|
'line' => 106, |
15724
|
|
|
|
|
|
|
'lookahead' => 0, |
15725
|
|
|
|
|
|
|
'matchrule' => 0, |
15726
|
|
|
|
|
|
|
'subrule' => 'replyto' |
15727
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
15728
|
|
|
|
|
|
|
bless( { |
15729
|
|
|
|
|
|
|
'argcode' => undef, |
15730
|
|
|
|
|
|
|
'implicit' => undef, |
15731
|
|
|
|
|
|
|
'line' => 106, |
15732
|
|
|
|
|
|
|
'lookahead' => 0, |
15733
|
|
|
|
|
|
|
'matchrule' => 0, |
15734
|
|
|
|
|
|
|
'subrule' => 'to' |
15735
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
15736
|
|
|
|
|
|
|
bless( { |
15737
|
|
|
|
|
|
|
'argcode' => undef, |
15738
|
|
|
|
|
|
|
'implicit' => undef, |
15739
|
|
|
|
|
|
|
'line' => 106, |
15740
|
|
|
|
|
|
|
'lookahead' => 0, |
15741
|
|
|
|
|
|
|
'matchrule' => 0, |
15742
|
|
|
|
|
|
|
'subrule' => 'cc' |
15743
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
15744
|
|
|
|
|
|
|
bless( { |
15745
|
|
|
|
|
|
|
'argcode' => undef, |
15746
|
|
|
|
|
|
|
'implicit' => undef, |
15747
|
|
|
|
|
|
|
'line' => 107, |
15748
|
|
|
|
|
|
|
'lookahead' => 0, |
15749
|
|
|
|
|
|
|
'matchrule' => 0, |
15750
|
|
|
|
|
|
|
'subrule' => 'bcc' |
15751
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
15752
|
|
|
|
|
|
|
bless( { |
15753
|
|
|
|
|
|
|
'argcode' => undef, |
15754
|
|
|
|
|
|
|
'implicit' => undef, |
15755
|
|
|
|
|
|
|
'line' => 107, |
15756
|
|
|
|
|
|
|
'lookahead' => 0, |
15757
|
|
|
|
|
|
|
'matchrule' => 0, |
15758
|
|
|
|
|
|
|
'subrule' => 'inreplyto' |
15759
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
15760
|
|
|
|
|
|
|
bless( { |
15761
|
|
|
|
|
|
|
'argcode' => undef, |
15762
|
|
|
|
|
|
|
'implicit' => undef, |
15763
|
|
|
|
|
|
|
'line' => 107, |
15764
|
|
|
|
|
|
|
'lookahead' => 0, |
15765
|
|
|
|
|
|
|
'matchrule' => 0, |
15766
|
|
|
|
|
|
|
'subrule' => 'messageid' |
15767
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
15768
|
|
|
|
|
|
|
bless( { |
15769
|
|
|
|
|
|
|
'description' => '\')\'', |
15770
|
|
|
|
|
|
|
'hashname' => '__STRING2__', |
15771
|
|
|
|
|
|
|
'line' => 107, |
15772
|
|
|
|
|
|
|
'lookahead' => 0, |
15773
|
|
|
|
|
|
|
'pattern' => ')' |
15774
|
|
|
|
|
|
|
}, 'Parse::RecDescent::InterpLit' ), |
15775
|
|
|
|
|
|
|
bless( { |
15776
|
|
|
|
|
|
|
'code' => '{ $return = bless {}, "Mail::IMAPClient::BodyStructure::Envelope"; |
15777
|
|
|
|
|
|
|
$return->{$_} = $item{$_} |
15778
|
|
|
|
|
|
|
for qw/date subject from sender replyto to cc/ |
15779
|
|
|
|
|
|
|
, qw/bcc inreplyto messageid/; |
15780
|
|
|
|
|
|
|
1; |
15781
|
|
|
|
|
|
|
}', |
15782
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
15783
|
|
|
|
|
|
|
'line' => 108, |
15784
|
|
|
|
|
|
|
'lookahead' => 0 |
15785
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
15786
|
|
|
|
|
|
|
], |
15787
|
|
|
|
|
|
|
'line' => undef, |
15788
|
|
|
|
|
|
|
'number' => 0, |
15789
|
|
|
|
|
|
|
'patcount' => 0, |
15790
|
|
|
|
|
|
|
'strcount' => 2, |
15791
|
|
|
|
|
|
|
'uncommit' => undef |
15792
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
15793
|
|
|
|
|
|
|
], |
15794
|
|
|
|
|
|
|
'vars' => '' |
15795
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
15796
|
|
|
|
|
|
|
'from' => bless( { |
15797
|
|
|
|
|
|
|
'calls' => [ |
15798
|
|
|
|
|
|
|
'ADDRESSES' |
15799
|
|
|
|
|
|
|
], |
15800
|
|
|
|
|
|
|
'changed' => 0, |
15801
|
|
|
|
|
|
|
'impcount' => 0, |
15802
|
|
|
|
|
|
|
'line' => 101, |
15803
|
|
|
|
|
|
|
'name' => 'from', |
15804
|
|
|
|
|
|
|
'opcount' => 0, |
15805
|
|
|
|
|
|
|
'prods' => [ |
15806
|
|
|
|
|
|
|
bless( { |
15807
|
|
|
|
|
|
|
'actcount' => 0, |
15808
|
|
|
|
|
|
|
'dircount' => 0, |
15809
|
|
|
|
|
|
|
'error' => undef, |
15810
|
|
|
|
|
|
|
'items' => [ |
15811
|
|
|
|
|
|
|
bless( { |
15812
|
|
|
|
|
|
|
'argcode' => undef, |
15813
|
|
|
|
|
|
|
'implicit' => undef, |
15814
|
|
|
|
|
|
|
'line' => 101, |
15815
|
|
|
|
|
|
|
'lookahead' => 0, |
15816
|
|
|
|
|
|
|
'matchrule' => 0, |
15817
|
|
|
|
|
|
|
'subrule' => 'ADDRESSES' |
15818
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15819
|
|
|
|
|
|
|
], |
15820
|
|
|
|
|
|
|
'line' => undef, |
15821
|
|
|
|
|
|
|
'number' => 0, |
15822
|
|
|
|
|
|
|
'patcount' => 0, |
15823
|
|
|
|
|
|
|
'strcount' => 0, |
15824
|
|
|
|
|
|
|
'uncommit' => undef |
15825
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
15826
|
|
|
|
|
|
|
], |
15827
|
|
|
|
|
|
|
'vars' => '' |
15828
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
15829
|
|
|
|
|
|
|
'hostname' => bless( { |
15830
|
|
|
|
|
|
|
'calls' => [ |
15831
|
|
|
|
|
|
|
'NIL', |
15832
|
|
|
|
|
|
|
'STRING' |
15833
|
|
|
|
|
|
|
], |
15834
|
|
|
|
|
|
|
'changed' => 0, |
15835
|
|
|
|
|
|
|
'impcount' => 0, |
15836
|
|
|
|
|
|
|
'line' => 81, |
15837
|
|
|
|
|
|
|
'name' => 'hostname', |
15838
|
|
|
|
|
|
|
'opcount' => 0, |
15839
|
|
|
|
|
|
|
'prods' => [ |
15840
|
|
|
|
|
|
|
bless( { |
15841
|
|
|
|
|
|
|
'actcount' => 0, |
15842
|
|
|
|
|
|
|
'dircount' => 0, |
15843
|
|
|
|
|
|
|
'error' => undef, |
15844
|
|
|
|
|
|
|
'items' => [ |
15845
|
|
|
|
|
|
|
bless( { |
15846
|
|
|
|
|
|
|
'argcode' => undef, |
15847
|
|
|
|
|
|
|
'implicit' => undef, |
15848
|
|
|
|
|
|
|
'line' => 81, |
15849
|
|
|
|
|
|
|
'lookahead' => 0, |
15850
|
|
|
|
|
|
|
'matchrule' => 0, |
15851
|
|
|
|
|
|
|
'subrule' => 'NIL' |
15852
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15853
|
|
|
|
|
|
|
], |
15854
|
|
|
|
|
|
|
'line' => undef, |
15855
|
|
|
|
|
|
|
'number' => 0, |
15856
|
|
|
|
|
|
|
'patcount' => 0, |
15857
|
|
|
|
|
|
|
'strcount' => 0, |
15858
|
|
|
|
|
|
|
'uncommit' => undef |
15859
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
15860
|
|
|
|
|
|
|
bless( { |
15861
|
|
|
|
|
|
|
'actcount' => 0, |
15862
|
|
|
|
|
|
|
'dircount' => 0, |
15863
|
|
|
|
|
|
|
'error' => undef, |
15864
|
|
|
|
|
|
|
'items' => [ |
15865
|
|
|
|
|
|
|
bless( { |
15866
|
|
|
|
|
|
|
'argcode' => undef, |
15867
|
|
|
|
|
|
|
'implicit' => undef, |
15868
|
|
|
|
|
|
|
'line' => 81, |
15869
|
|
|
|
|
|
|
'lookahead' => 0, |
15870
|
|
|
|
|
|
|
'matchrule' => 0, |
15871
|
|
|
|
|
|
|
'subrule' => 'STRING' |
15872
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15873
|
|
|
|
|
|
|
], |
15874
|
|
|
|
|
|
|
'line' => 81, |
15875
|
|
|
|
|
|
|
'number' => 1, |
15876
|
|
|
|
|
|
|
'patcount' => 0, |
15877
|
|
|
|
|
|
|
'strcount' => 0, |
15878
|
|
|
|
|
|
|
'uncommit' => undef |
15879
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
15880
|
|
|
|
|
|
|
], |
15881
|
|
|
|
|
|
|
'vars' => '' |
15882
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
15883
|
|
|
|
|
|
|
'inreplyto' => bless( { |
15884
|
|
|
|
|
|
|
'calls' => [ |
15885
|
|
|
|
|
|
|
'NIL', |
15886
|
|
|
|
|
|
|
'STRING' |
15887
|
|
|
|
|
|
|
], |
15888
|
|
|
|
|
|
|
'changed' => 0, |
15889
|
|
|
|
|
|
|
'impcount' => 0, |
15890
|
|
|
|
|
|
|
'line' => 92, |
15891
|
|
|
|
|
|
|
'name' => 'inreplyto', |
15892
|
|
|
|
|
|
|
'opcount' => 0, |
15893
|
|
|
|
|
|
|
'prods' => [ |
15894
|
|
|
|
|
|
|
bless( { |
15895
|
|
|
|
|
|
|
'actcount' => 0, |
15896
|
|
|
|
|
|
|
'dircount' => 0, |
15897
|
|
|
|
|
|
|
'error' => undef, |
15898
|
|
|
|
|
|
|
'items' => [ |
15899
|
|
|
|
|
|
|
bless( { |
15900
|
|
|
|
|
|
|
'argcode' => undef, |
15901
|
|
|
|
|
|
|
'implicit' => undef, |
15902
|
|
|
|
|
|
|
'line' => 92, |
15903
|
|
|
|
|
|
|
'lookahead' => 0, |
15904
|
|
|
|
|
|
|
'matchrule' => 0, |
15905
|
|
|
|
|
|
|
'subrule' => 'NIL' |
15906
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15907
|
|
|
|
|
|
|
], |
15908
|
|
|
|
|
|
|
'line' => undef, |
15909
|
|
|
|
|
|
|
'number' => 0, |
15910
|
|
|
|
|
|
|
'patcount' => 0, |
15911
|
|
|
|
|
|
|
'strcount' => 0, |
15912
|
|
|
|
|
|
|
'uncommit' => undef |
15913
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
15914
|
|
|
|
|
|
|
bless( { |
15915
|
|
|
|
|
|
|
'actcount' => 0, |
15916
|
|
|
|
|
|
|
'dircount' => 0, |
15917
|
|
|
|
|
|
|
'error' => undef, |
15918
|
|
|
|
|
|
|
'items' => [ |
15919
|
|
|
|
|
|
|
bless( { |
15920
|
|
|
|
|
|
|
'argcode' => undef, |
15921
|
|
|
|
|
|
|
'implicit' => undef, |
15922
|
|
|
|
|
|
|
'line' => 92, |
15923
|
|
|
|
|
|
|
'lookahead' => 0, |
15924
|
|
|
|
|
|
|
'matchrule' => 0, |
15925
|
|
|
|
|
|
|
'subrule' => 'STRING' |
15926
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15927
|
|
|
|
|
|
|
], |
15928
|
|
|
|
|
|
|
'line' => 92, |
15929
|
|
|
|
|
|
|
'number' => 1, |
15930
|
|
|
|
|
|
|
'patcount' => 0, |
15931
|
|
|
|
|
|
|
'strcount' => 0, |
15932
|
|
|
|
|
|
|
'uncommit' => undef |
15933
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
15934
|
|
|
|
|
|
|
], |
15935
|
|
|
|
|
|
|
'vars' => '' |
15936
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
15937
|
|
|
|
|
|
|
'key' => bless( { |
15938
|
|
|
|
|
|
|
'calls' => [ |
15939
|
|
|
|
|
|
|
'STRING' |
15940
|
|
|
|
|
|
|
], |
15941
|
|
|
|
|
|
|
'changed' => 0, |
15942
|
|
|
|
|
|
|
'impcount' => 0, |
15943
|
|
|
|
|
|
|
'line' => 56, |
15944
|
|
|
|
|
|
|
'name' => 'key', |
15945
|
|
|
|
|
|
|
'opcount' => 0, |
15946
|
|
|
|
|
|
|
'prods' => [ |
15947
|
|
|
|
|
|
|
bless( { |
15948
|
|
|
|
|
|
|
'actcount' => 0, |
15949
|
|
|
|
|
|
|
'dircount' => 0, |
15950
|
|
|
|
|
|
|
'error' => undef, |
15951
|
|
|
|
|
|
|
'items' => [ |
15952
|
|
|
|
|
|
|
bless( { |
15953
|
|
|
|
|
|
|
'argcode' => undef, |
15954
|
|
|
|
|
|
|
'implicit' => undef, |
15955
|
|
|
|
|
|
|
'line' => 56, |
15956
|
|
|
|
|
|
|
'lookahead' => 0, |
15957
|
|
|
|
|
|
|
'matchrule' => 0, |
15958
|
|
|
|
|
|
|
'subrule' => 'STRING' |
15959
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
15960
|
|
|
|
|
|
|
], |
15961
|
|
|
|
|
|
|
'line' => undef, |
15962
|
|
|
|
|
|
|
'number' => 0, |
15963
|
|
|
|
|
|
|
'patcount' => 0, |
15964
|
|
|
|
|
|
|
'strcount' => 0, |
15965
|
|
|
|
|
|
|
'uncommit' => undef |
15966
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
15967
|
|
|
|
|
|
|
], |
15968
|
|
|
|
|
|
|
'vars' => '' |
15969
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
15970
|
|
|
|
|
|
|
'kvpair' => bless( { |
15971
|
|
|
|
|
|
|
'calls' => [ |
15972
|
|
|
|
|
|
|
'key', |
15973
|
|
|
|
|
|
|
'value' |
15974
|
|
|
|
|
|
|
], |
15975
|
|
|
|
|
|
|
'changed' => 0, |
15976
|
|
|
|
|
|
|
'impcount' => 0, |
15977
|
|
|
|
|
|
|
'line' => 59, |
15978
|
|
|
|
|
|
|
'name' => 'kvpair', |
15979
|
|
|
|
|
|
|
'opcount' => 0, |
15980
|
|
|
|
|
|
|
'prods' => [ |
15981
|
|
|
|
|
|
|
bless( { |
15982
|
|
|
|
|
|
|
'actcount' => 1, |
15983
|
|
|
|
|
|
|
'dircount' => 0, |
15984
|
|
|
|
|
|
|
'error' => undef, |
15985
|
|
|
|
|
|
|
'items' => [ |
15986
|
|
|
|
|
|
|
bless( { |
15987
|
|
|
|
|
|
|
'description' => '\')\'', |
15988
|
|
|
|
|
|
|
'hashname' => '__STRING1__', |
15989
|
|
|
|
|
|
|
'line' => 59, |
15990
|
|
|
|
|
|
|
'lookahead' => -1, |
15991
|
|
|
|
|
|
|
'pattern' => ')' |
15992
|
|
|
|
|
|
|
}, 'Parse::RecDescent::InterpLit' ), |
15993
|
|
|
|
|
|
|
bless( { |
15994
|
|
|
|
|
|
|
'argcode' => undef, |
15995
|
|
|
|
|
|
|
'implicit' => undef, |
15996
|
|
|
|
|
|
|
'line' => 59, |
15997
|
|
|
|
|
|
|
'lookahead' => 0, |
15998
|
|
|
|
|
|
|
'matchrule' => 0, |
15999
|
|
|
|
|
|
|
'subrule' => 'key' |
16000
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
16001
|
|
|
|
|
|
|
bless( { |
16002
|
|
|
|
|
|
|
'argcode' => undef, |
16003
|
|
|
|
|
|
|
'implicit' => undef, |
16004
|
|
|
|
|
|
|
'line' => 59, |
16005
|
|
|
|
|
|
|
'lookahead' => 0, |
16006
|
|
|
|
|
|
|
'matchrule' => 0, |
16007
|
|
|
|
|
|
|
'subrule' => 'value' |
16008
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
16009
|
|
|
|
|
|
|
bless( { |
16010
|
|
|
|
|
|
|
'code' => '{ $return = { $item{key} => $item{value} } }', |
16011
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
16012
|
|
|
|
|
|
|
'line' => 60, |
16013
|
|
|
|
|
|
|
'lookahead' => 0 |
16014
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
16015
|
|
|
|
|
|
|
], |
16016
|
|
|
|
|
|
|
'line' => undef, |
16017
|
|
|
|
|
|
|
'number' => 0, |
16018
|
|
|
|
|
|
|
'patcount' => 0, |
16019
|
|
|
|
|
|
|
'strcount' => 1, |
16020
|
|
|
|
|
|
|
'uncommit' => undef |
16021
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
16022
|
|
|
|
|
|
|
], |
16023
|
|
|
|
|
|
|
'vars' => '' |
16024
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
16025
|
|
|
|
|
|
|
'mailboxname' => bless( { |
16026
|
|
|
|
|
|
|
'calls' => [ |
16027
|
|
|
|
|
|
|
'NIL', |
16028
|
|
|
|
|
|
|
'STRING' |
16029
|
|
|
|
|
|
|
], |
16030
|
|
|
|
|
|
|
'changed' => 0, |
16031
|
|
|
|
|
|
|
'impcount' => 0, |
16032
|
|
|
|
|
|
|
'line' => 80, |
16033
|
|
|
|
|
|
|
'name' => 'mailboxname', |
16034
|
|
|
|
|
|
|
'opcount' => 0, |
16035
|
|
|
|
|
|
|
'prods' => [ |
16036
|
|
|
|
|
|
|
bless( { |
16037
|
|
|
|
|
|
|
'actcount' => 0, |
16038
|
|
|
|
|
|
|
'dircount' => 0, |
16039
|
|
|
|
|
|
|
'error' => undef, |
16040
|
|
|
|
|
|
|
'items' => [ |
16041
|
|
|
|
|
|
|
bless( { |
16042
|
|
|
|
|
|
|
'argcode' => undef, |
16043
|
|
|
|
|
|
|
'implicit' => undef, |
16044
|
|
|
|
|
|
|
'line' => 80, |
16045
|
|
|
|
|
|
|
'lookahead' => 0, |
16046
|
|
|
|
|
|
|
'matchrule' => 0, |
16047
|
|
|
|
|
|
|
'subrule' => 'NIL' |
16048
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
16049
|
|
|
|
|
|
|
], |
16050
|
|
|
|
|
|
|
'line' => undef, |
16051
|
|
|
|
|
|
|
'number' => 0, |
16052
|
|
|
|
|
|
|
'patcount' => 0, |
16053
|
|
|
|
|
|
|
'strcount' => 0, |
16054
|
|
|
|
|
|
|
'uncommit' => undef |
16055
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
16056
|
|
|
|
|
|
|
bless( { |
16057
|
|
|
|
|
|
|
'actcount' => 0, |
16058
|
|
|
|
|
|
|
'dircount' => 0, |
16059
|
|
|
|
|
|
|
'error' => undef, |
16060
|
|
|
|
|
|
|
'items' => [ |
16061
|
|
|
|
|
|
|
bless( { |
16062
|
|
|
|
|
|
|
'argcode' => undef, |
16063
|
|
|
|
|
|
|
'implicit' => undef, |
16064
|
|
|
|
|
|
|
'line' => 80, |
16065
|
|
|
|
|
|
|
'lookahead' => 0, |
16066
|
|
|
|
|
|
|
'matchrule' => 0, |
16067
|
|
|
|
|
|
|
'subrule' => 'STRING' |
16068
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
16069
|
|
|
|
|
|
|
], |
16070
|
|
|
|
|
|
|
'line' => 80, |
16071
|
|
|
|
|
|
|
'number' => 1, |
16072
|
|
|
|
|
|
|
'patcount' => 0, |
16073
|
|
|
|
|
|
|
'strcount' => 0, |
16074
|
|
|
|
|
|
|
'uncommit' => undef |
16075
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
16076
|
|
|
|
|
|
|
], |
16077
|
|
|
|
|
|
|
'vars' => '' |
16078
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
16079
|
|
|
|
|
|
|
'messageid' => bless( { |
16080
|
|
|
|
|
|
|
'calls' => [ |
16081
|
|
|
|
|
|
|
'NIL', |
16082
|
|
|
|
|
|
|
'STRING' |
16083
|
|
|
|
|
|
|
], |
16084
|
|
|
|
|
|
|
'changed' => 0, |
16085
|
|
|
|
|
|
|
'impcount' => 0, |
16086
|
|
|
|
|
|
|
'line' => 93, |
16087
|
|
|
|
|
|
|
'name' => 'messageid', |
16088
|
|
|
|
|
|
|
'opcount' => 0, |
16089
|
|
|
|
|
|
|
'prods' => [ |
16090
|
|
|
|
|
|
|
bless( { |
16091
|
|
|
|
|
|
|
'actcount' => 0, |
16092
|
|
|
|
|
|
|
'dircount' => 0, |
16093
|
|
|
|
|
|
|
'error' => undef, |
16094
|
|
|
|
|
|
|
'items' => [ |
16095
|
|
|
|
|
|
|
bless( { |
16096
|
|
|
|
|
|
|
'argcode' => undef, |
16097
|
|
|
|
|
|
|
'implicit' => undef, |
16098
|
|
|
|
|
|
|
'line' => 93, |
16099
|
|
|
|
|
|
|
'lookahead' => 0, |
16100
|
|
|
|
|
|
|
'matchrule' => 0, |
16101
|
|
|
|
|
|
|
'subrule' => 'NIL' |
16102
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
16103
|
|
|
|
|
|
|
], |
16104
|
|
|
|
|
|
|
'line' => undef, |
16105
|
|
|
|
|
|
|
'number' => 0, |
16106
|
|
|
|
|
|
|
'patcount' => 0, |
16107
|
|
|
|
|
|
|
'strcount' => 0, |
16108
|
|
|
|
|
|
|
'uncommit' => undef |
16109
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
16110
|
|
|
|
|
|
|
bless( { |
16111
|
|
|
|
|
|
|
'actcount' => 0, |
16112
|
|
|
|
|
|
|
'dircount' => 0, |
16113
|
|
|
|
|
|
|
'error' => undef, |
16114
|
|
|
|
|
|
|
'items' => [ |
16115
|
|
|
|
|
|
|
bless( { |
16116
|
|
|
|
|
|
|
'argcode' => undef, |
16117
|
|
|
|
|
|
|
'implicit' => undef, |
16118
|
|
|
|
|
|
|
'line' => 93, |
16119
|
|
|
|
|
|
|
'lookahead' => 0, |
16120
|
|
|
|
|
|
|
'matchrule' => 0, |
16121
|
|
|
|
|
|
|
'subrule' => 'STRING' |
16122
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
16123
|
|
|
|
|
|
|
], |
16124
|
|
|
|
|
|
|
'line' => 93, |
16125
|
|
|
|
|
|
|
'number' => 1, |
16126
|
|
|
|
|
|
|
'patcount' => 0, |
16127
|
|
|
|
|
|
|
'strcount' => 0, |
16128
|
|
|
|
|
|
|
'uncommit' => undef |
16129
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
16130
|
|
|
|
|
|
|
], |
16131
|
|
|
|
|
|
|
'vars' => '' |
16132
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
16133
|
|
|
|
|
|
|
'multipart' => bless( { |
16134
|
|
|
|
|
|
|
'calls' => [ |
16135
|
|
|
|
|
|
|
'subpart', |
16136
|
|
|
|
|
|
|
'bodysubtype', |
16137
|
|
|
|
|
|
|
'bodyparms', |
16138
|
|
|
|
|
|
|
'bodydisp', |
16139
|
|
|
|
|
|
|
'bodylang', |
16140
|
|
|
|
|
|
|
'bodyloc', |
16141
|
|
|
|
|
|
|
'bodyextra', |
16142
|
|
|
|
|
|
|
'bodyextensions' |
16143
|
|
|
|
|
|
|
], |
16144
|
|
|
|
|
|
|
'changed' => 0, |
16145
|
|
|
|
|
|
|
'impcount' => 0, |
16146
|
|
|
|
|
|
|
'line' => 163, |
16147
|
|
|
|
|
|
|
'name' => 'multipart', |
16148
|
|
|
|
|
|
|
'opcount' => 0, |
16149
|
|
|
|
|
|
|
'prods' => [ |
16150
|
|
|
|
|
|
|
bless( { |
16151
|
|
|
|
|
|
|
'actcount' => 1, |
16152
|
|
|
|
|
|
|
'dircount' => 2, |
16153
|
|
|
|
|
|
|
'error' => undef, |
16154
|
|
|
|
|
|
|
'items' => [ |
16155
|
|
|
|
|
|
|
bless( { |
16156
|
|
|
|
|
|
|
'argcode' => undef, |
16157
|
|
|
|
|
|
|
'expected' => undef, |
16158
|
|
|
|
|
|
|
'line' => 163, |
16159
|
|
|
|
|
|
|
'lookahead' => 0, |
16160
|
|
|
|
|
|
|
'matchrule' => 0, |
16161
|
|
|
|
|
|
|
'max' => 100000000, |
16162
|
|
|
|
|
|
|
'min' => 1, |
16163
|
|
|
|
|
|
|
'repspec' => 's', |
16164
|
|
|
|
|
|
|
'subrule' => 'subpart' |
16165
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16166
|
|
|
|
|
|
|
bless( { |
16167
|
|
|
|
|
|
|
'code' => '$commit = 1', |
16168
|
|
|
|
|
|
|
'hashname' => '__DIRECTIVE1__', |
16169
|
|
|
|
|
|
|
'line' => 163, |
16170
|
|
|
|
|
|
|
'lookahead' => 0, |
16171
|
|
|
|
|
|
|
'name' => '' |
16172
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Directive' ), |
16173
|
|
|
|
|
|
|
bless( { |
16174
|
|
|
|
|
|
|
'argcode' => undef, |
16175
|
|
|
|
|
|
|
'implicit' => undef, |
16176
|
|
|
|
|
|
|
'line' => 163, |
16177
|
|
|
|
|
|
|
'lookahead' => 0, |
16178
|
|
|
|
|
|
|
'matchrule' => 0, |
16179
|
|
|
|
|
|
|
'subrule' => 'bodysubtype' |
16180
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
16181
|
|
|
|
|
|
|
bless( { |
16182
|
|
|
|
|
|
|
'argcode' => undef, |
16183
|
|
|
|
|
|
|
'expected' => undef, |
16184
|
|
|
|
|
|
|
'line' => 164, |
16185
|
|
|
|
|
|
|
'lookahead' => 0, |
16186
|
|
|
|
|
|
|
'matchrule' => 0, |
16187
|
|
|
|
|
|
|
'max' => 1, |
16188
|
|
|
|
|
|
|
'min' => 0, |
16189
|
|
|
|
|
|
|
'repspec' => '?', |
16190
|
|
|
|
|
|
|
'subrule' => 'bodyparms' |
16191
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16192
|
|
|
|
|
|
|
bless( { |
16193
|
|
|
|
|
|
|
'argcode' => undef, |
16194
|
|
|
|
|
|
|
'expected' => undef, |
16195
|
|
|
|
|
|
|
'line' => 164, |
16196
|
|
|
|
|
|
|
'lookahead' => 0, |
16197
|
|
|
|
|
|
|
'matchrule' => 0, |
16198
|
|
|
|
|
|
|
'max' => 1, |
16199
|
|
|
|
|
|
|
'min' => 0, |
16200
|
|
|
|
|
|
|
'repspec' => '?', |
16201
|
|
|
|
|
|
|
'subrule' => 'bodydisp' |
16202
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16203
|
|
|
|
|
|
|
bless( { |
16204
|
|
|
|
|
|
|
'argcode' => undef, |
16205
|
|
|
|
|
|
|
'expected' => undef, |
16206
|
|
|
|
|
|
|
'line' => 164, |
16207
|
|
|
|
|
|
|
'lookahead' => 0, |
16208
|
|
|
|
|
|
|
'matchrule' => 0, |
16209
|
|
|
|
|
|
|
'max' => 1, |
16210
|
|
|
|
|
|
|
'min' => 0, |
16211
|
|
|
|
|
|
|
'repspec' => '?', |
16212
|
|
|
|
|
|
|
'subrule' => 'bodylang' |
16213
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16214
|
|
|
|
|
|
|
bless( { |
16215
|
|
|
|
|
|
|
'argcode' => undef, |
16216
|
|
|
|
|
|
|
'expected' => undef, |
16217
|
|
|
|
|
|
|
'line' => 164, |
16218
|
|
|
|
|
|
|
'lookahead' => 0, |
16219
|
|
|
|
|
|
|
'matchrule' => 0, |
16220
|
|
|
|
|
|
|
'max' => 1, |
16221
|
|
|
|
|
|
|
'min' => 0, |
16222
|
|
|
|
|
|
|
'repspec' => '?', |
16223
|
|
|
|
|
|
|
'subrule' => 'bodyloc' |
16224
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16225
|
|
|
|
|
|
|
bless( { |
16226
|
|
|
|
|
|
|
'argcode' => undef, |
16227
|
|
|
|
|
|
|
'expected' => undef, |
16228
|
|
|
|
|
|
|
'line' => 164, |
16229
|
|
|
|
|
|
|
'lookahead' => 0, |
16230
|
|
|
|
|
|
|
'matchrule' => 0, |
16231
|
|
|
|
|
|
|
'max' => 1, |
16232
|
|
|
|
|
|
|
'min' => 0, |
16233
|
|
|
|
|
|
|
'repspec' => '?', |
16234
|
|
|
|
|
|
|
'subrule' => 'bodyextra' |
16235
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16236
|
|
|
|
|
|
|
bless( { |
16237
|
|
|
|
|
|
|
'argcode' => undef, |
16238
|
|
|
|
|
|
|
'expected' => undef, |
16239
|
|
|
|
|
|
|
'line' => 164, |
16240
|
|
|
|
|
|
|
'lookahead' => 0, |
16241
|
|
|
|
|
|
|
'matchrule' => 0, |
16242
|
|
|
|
|
|
|
'max' => 100000000, |
16243
|
|
|
|
|
|
|
'min' => 0, |
16244
|
|
|
|
|
|
|
'repspec' => 's?', |
16245
|
|
|
|
|
|
|
'subrule' => 'bodyextensions' |
16246
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16247
|
|
|
|
|
|
|
bless( { |
16248
|
|
|
|
|
|
|
'code' => 'push @{$thisparser->{deferred}}, sub { $subpartCount = 0 };', |
16249
|
|
|
|
|
|
|
'hashname' => '__DIRECTIVE2__', |
16250
|
|
|
|
|
|
|
'line' => 165, |
16251
|
|
|
|
|
|
|
'lookahead' => 0, |
16252
|
|
|
|
|
|
|
'name' => '' |
16253
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Directive' ), |
16254
|
|
|
|
|
|
|
bless( { |
16255
|
|
|
|
|
|
|
'code' => '{ $return = |
16256
|
|
|
|
|
|
|
{ bodysubtype => $item{bodysubtype} |
16257
|
|
|
|
|
|
|
, bodytype => \'MULTIPART\' |
16258
|
|
|
|
|
|
|
, bodystructure => $item{\'subpart(s)\'} |
16259
|
|
|
|
|
|
|
}; |
16260
|
|
|
|
|
|
|
take_optional_items($return, \\%item |
16261
|
|
|
|
|
|
|
, qw/bodyparms bodydisp bodylang bodyloc bodyextra/); |
16262
|
|
|
|
|
|
|
1; |
16263
|
|
|
|
|
|
|
}', |
16264
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
16265
|
|
|
|
|
|
|
'line' => 166, |
16266
|
|
|
|
|
|
|
'lookahead' => 0 |
16267
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
16268
|
|
|
|
|
|
|
], |
16269
|
|
|
|
|
|
|
'line' => undef, |
16270
|
|
|
|
|
|
|
'number' => 0, |
16271
|
|
|
|
|
|
|
'patcount' => 0, |
16272
|
|
|
|
|
|
|
'strcount' => 0, |
16273
|
|
|
|
|
|
|
'uncommit' => undef |
16274
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
16275
|
|
|
|
|
|
|
], |
16276
|
|
|
|
|
|
|
'vars' => '' |
16277
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
16278
|
|
|
|
|
|
|
'nestedmessage' => bless( { |
16279
|
|
|
|
|
|
|
'calls' => [ |
16280
|
|
|
|
|
|
|
'rfc822message', |
16281
|
|
|
|
|
|
|
'bodyparms', |
16282
|
|
|
|
|
|
|
'bodyid', |
16283
|
|
|
|
|
|
|
'bodydesc', |
16284
|
|
|
|
|
|
|
'bodyenc', |
16285
|
|
|
|
|
|
|
'bodysize', |
16286
|
|
|
|
|
|
|
'envelopestruct', |
16287
|
|
|
|
|
|
|
'bodystructure', |
16288
|
|
|
|
|
|
|
'textlines', |
16289
|
|
|
|
|
|
|
'bodyMD5', |
16290
|
|
|
|
|
|
|
'bodydisp', |
16291
|
|
|
|
|
|
|
'bodylang', |
16292
|
|
|
|
|
|
|
'bodyextra' |
16293
|
|
|
|
|
|
|
], |
16294
|
|
|
|
|
|
|
'changed' => 0, |
16295
|
|
|
|
|
|
|
'impcount' => 0, |
16296
|
|
|
|
|
|
|
'line' => 142, |
16297
|
|
|
|
|
|
|
'name' => 'nestedmessage', |
16298
|
|
|
|
|
|
|
'opcount' => 0, |
16299
|
|
|
|
|
|
|
'prods' => [ |
16300
|
|
|
|
|
|
|
bless( { |
16301
|
|
|
|
|
|
|
'actcount' => 1, |
16302
|
|
|
|
|
|
|
'dircount' => 1, |
16303
|
|
|
|
|
|
|
'error' => undef, |
16304
|
|
|
|
|
|
|
'items' => [ |
16305
|
|
|
|
|
|
|
bless( { |
16306
|
|
|
|
|
|
|
'argcode' => undef, |
16307
|
|
|
|
|
|
|
'implicit' => undef, |
16308
|
|
|
|
|
|
|
'line' => 142, |
16309
|
|
|
|
|
|
|
'lookahead' => 0, |
16310
|
|
|
|
|
|
|
'matchrule' => 0, |
16311
|
|
|
|
|
|
|
'subrule' => 'rfc822message' |
16312
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
16313
|
|
|
|
|
|
|
bless( { |
16314
|
|
|
|
|
|
|
'code' => '$commit = 1', |
16315
|
|
|
|
|
|
|
'hashname' => '__DIRECTIVE1__', |
16316
|
|
|
|
|
|
|
'line' => 142, |
16317
|
|
|
|
|
|
|
'lookahead' => 0, |
16318
|
|
|
|
|
|
|
'name' => '' |
16319
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Directive' ), |
16320
|
|
|
|
|
|
|
bless( { |
16321
|
|
|
|
|
|
|
'argcode' => undef, |
16322
|
|
|
|
|
|
|
'implicit' => undef, |
16323
|
|
|
|
|
|
|
'line' => 142, |
16324
|
|
|
|
|
|
|
'lookahead' => 0, |
16325
|
|
|
|
|
|
|
'matchrule' => 0, |
16326
|
|
|
|
|
|
|
'subrule' => 'bodyparms' |
16327
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
16328
|
|
|
|
|
|
|
bless( { |
16329
|
|
|
|
|
|
|
'argcode' => undef, |
16330
|
|
|
|
|
|
|
'implicit' => undef, |
16331
|
|
|
|
|
|
|
'line' => 142, |
16332
|
|
|
|
|
|
|
'lookahead' => 0, |
16333
|
|
|
|
|
|
|
'matchrule' => 0, |
16334
|
|
|
|
|
|
|
'subrule' => 'bodyid' |
16335
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
16336
|
|
|
|
|
|
|
bless( { |
16337
|
|
|
|
|
|
|
'argcode' => undef, |
16338
|
|
|
|
|
|
|
'implicit' => undef, |
16339
|
|
|
|
|
|
|
'line' => 142, |
16340
|
|
|
|
|
|
|
'lookahead' => 0, |
16341
|
|
|
|
|
|
|
'matchrule' => 0, |
16342
|
|
|
|
|
|
|
'subrule' => 'bodydesc' |
16343
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
16344
|
|
|
|
|
|
|
bless( { |
16345
|
|
|
|
|
|
|
'argcode' => undef, |
16346
|
|
|
|
|
|
|
'implicit' => undef, |
16347
|
|
|
|
|
|
|
'line' => 142, |
16348
|
|
|
|
|
|
|
'lookahead' => 0, |
16349
|
|
|
|
|
|
|
'matchrule' => 0, |
16350
|
|
|
|
|
|
|
'subrule' => 'bodyenc' |
16351
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
16352
|
|
|
|
|
|
|
bless( { |
16353
|
|
|
|
|
|
|
'argcode' => undef, |
16354
|
|
|
|
|
|
|
'implicit' => undef, |
16355
|
|
|
|
|
|
|
'line' => 143, |
16356
|
|
|
|
|
|
|
'lookahead' => 0, |
16357
|
|
|
|
|
|
|
'matchrule' => 0, |
16358
|
|
|
|
|
|
|
'subrule' => 'bodysize' |
16359
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
16360
|
|
|
|
|
|
|
bless( { |
16361
|
|
|
|
|
|
|
'argcode' => undef, |
16362
|
|
|
|
|
|
|
'expected' => undef, |
16363
|
|
|
|
|
|
|
'line' => 144, |
16364
|
|
|
|
|
|
|
'lookahead' => 0, |
16365
|
|
|
|
|
|
|
'matchrule' => 0, |
16366
|
|
|
|
|
|
|
'max' => 1, |
16367
|
|
|
|
|
|
|
'min' => 0, |
16368
|
|
|
|
|
|
|
'repspec' => '?', |
16369
|
|
|
|
|
|
|
'subrule' => 'envelopestruct' |
16370
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16371
|
|
|
|
|
|
|
bless( { |
16372
|
|
|
|
|
|
|
'argcode' => undef, |
16373
|
|
|
|
|
|
|
'expected' => undef, |
16374
|
|
|
|
|
|
|
'line' => 144, |
16375
|
|
|
|
|
|
|
'lookahead' => 0, |
16376
|
|
|
|
|
|
|
'matchrule' => 0, |
16377
|
|
|
|
|
|
|
'max' => 1, |
16378
|
|
|
|
|
|
|
'min' => 0, |
16379
|
|
|
|
|
|
|
'repspec' => '?', |
16380
|
|
|
|
|
|
|
'subrule' => 'bodystructure' |
16381
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16382
|
|
|
|
|
|
|
bless( { |
16383
|
|
|
|
|
|
|
'argcode' => undef, |
16384
|
|
|
|
|
|
|
'expected' => undef, |
16385
|
|
|
|
|
|
|
'line' => 144, |
16386
|
|
|
|
|
|
|
'lookahead' => 0, |
16387
|
|
|
|
|
|
|
'matchrule' => 0, |
16388
|
|
|
|
|
|
|
'max' => 1, |
16389
|
|
|
|
|
|
|
'min' => 0, |
16390
|
|
|
|
|
|
|
'repspec' => '?', |
16391
|
|
|
|
|
|
|
'subrule' => 'textlines' |
16392
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16393
|
|
|
|
|
|
|
bless( { |
16394
|
|
|
|
|
|
|
'argcode' => undef, |
16395
|
|
|
|
|
|
|
'expected' => undef, |
16396
|
|
|
|
|
|
|
'line' => 145, |
16397
|
|
|
|
|
|
|
'lookahead' => 0, |
16398
|
|
|
|
|
|
|
'matchrule' => 0, |
16399
|
|
|
|
|
|
|
'max' => 1, |
16400
|
|
|
|
|
|
|
'min' => 0, |
16401
|
|
|
|
|
|
|
'repspec' => '?', |
16402
|
|
|
|
|
|
|
'subrule' => 'bodyMD5' |
16403
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16404
|
|
|
|
|
|
|
bless( { |
16405
|
|
|
|
|
|
|
'argcode' => undef, |
16406
|
|
|
|
|
|
|
'expected' => undef, |
16407
|
|
|
|
|
|
|
'line' => 145, |
16408
|
|
|
|
|
|
|
'lookahead' => 0, |
16409
|
|
|
|
|
|
|
'matchrule' => 0, |
16410
|
|
|
|
|
|
|
'max' => 1, |
16411
|
|
|
|
|
|
|
'min' => 0, |
16412
|
|
|
|
|
|
|
'repspec' => '?', |
16413
|
|
|
|
|
|
|
'subrule' => 'bodydisp' |
16414
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16415
|
|
|
|
|
|
|
bless( { |
16416
|
|
|
|
|
|
|
'argcode' => undef, |
16417
|
|
|
|
|
|
|
'expected' => undef, |
16418
|
|
|
|
|
|
|
'line' => 145, |
16419
|
|
|
|
|
|
|
'lookahead' => 0, |
16420
|
|
|
|
|
|
|
'matchrule' => 0, |
16421
|
|
|
|
|
|
|
'max' => 1, |
16422
|
|
|
|
|
|
|
'min' => 0, |
16423
|
|
|
|
|
|
|
'repspec' => '?', |
16424
|
|
|
|
|
|
|
'subrule' => 'bodylang' |
16425
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16426
|
|
|
|
|
|
|
bless( { |
16427
|
|
|
|
|
|
|
'argcode' => undef, |
16428
|
|
|
|
|
|
|
'expected' => undef, |
16429
|
|
|
|
|
|
|
'line' => 145, |
16430
|
|
|
|
|
|
|
'lookahead' => 0, |
16431
|
|
|
|
|
|
|
'matchrule' => 0, |
16432
|
|
|
|
|
|
|
'max' => 1, |
16433
|
|
|
|
|
|
|
'min' => 0, |
16434
|
|
|
|
|
|
|
'repspec' => '?', |
16435
|
|
|
|
|
|
|
'subrule' => 'bodyextra' |
16436
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16437
|
|
|
|
|
|
|
bless( { |
16438
|
|
|
|
|
|
|
'code' => '{ |
16439
|
|
|
|
|
|
|
$return = {}; |
16440
|
|
|
|
|
|
|
$return->{$_} = $item{$_} |
16441
|
|
|
|
|
|
|
for qw/bodyparms bodyid bodydesc bodyenc bodysize/; |
16442
|
|
|
|
|
|
|
# envelopestruct bodystructure textlines/; |
16443
|
|
|
|
|
|
|
|
16444
|
|
|
|
|
|
|
take_optional_items($return, \\%item |
16445
|
|
|
|
|
|
|
, qw/envelopestruct bodystructure textlines/ |
16446
|
|
|
|
|
|
|
, qw/bodyMD5 bodydisp bodylang bodyextra/); |
16447
|
|
|
|
|
|
|
|
16448
|
|
|
|
|
|
|
merge_hash($return, $item{bodystructure}[0]); |
16449
|
|
|
|
|
|
|
merge_hash($return, $item{basicfields}); |
16450
|
|
|
|
|
|
|
$return->{bodytype} = "MESSAGE" ; |
16451
|
|
|
|
|
|
|
$return->{bodysubtype} = "RFC822" ; |
16452
|
|
|
|
|
|
|
1; |
16453
|
|
|
|
|
|
|
}', |
16454
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
16455
|
|
|
|
|
|
|
'line' => 146, |
16456
|
|
|
|
|
|
|
'lookahead' => 0 |
16457
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
16458
|
|
|
|
|
|
|
], |
16459
|
|
|
|
|
|
|
'line' => undef, |
16460
|
|
|
|
|
|
|
'number' => 0, |
16461
|
|
|
|
|
|
|
'patcount' => 0, |
16462
|
|
|
|
|
|
|
'strcount' => 0, |
16463
|
|
|
|
|
|
|
'uncommit' => undef |
16464
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
16465
|
|
|
|
|
|
|
], |
16466
|
|
|
|
|
|
|
'vars' => '' |
16467
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
16468
|
|
|
|
|
|
|
'othertypemessage' => bless( { |
16469
|
|
|
|
|
|
|
'calls' => [ |
16470
|
|
|
|
|
|
|
'bodytype', |
16471
|
|
|
|
|
|
|
'basicfields', |
16472
|
|
|
|
|
|
|
'bodyMD5', |
16473
|
|
|
|
|
|
|
'bodydisp', |
16474
|
|
|
|
|
|
|
'bodylang', |
16475
|
|
|
|
|
|
|
'bodyextra' |
16476
|
|
|
|
|
|
|
], |
16477
|
|
|
|
|
|
|
'changed' => 0, |
16478
|
|
|
|
|
|
|
'impcount' => 0, |
16479
|
|
|
|
|
|
|
'line' => 133, |
16480
|
|
|
|
|
|
|
'name' => 'othertypemessage', |
16481
|
|
|
|
|
|
|
'opcount' => 0, |
16482
|
|
|
|
|
|
|
'prods' => [ |
16483
|
|
|
|
|
|
|
bless( { |
16484
|
|
|
|
|
|
|
'actcount' => 1, |
16485
|
|
|
|
|
|
|
'dircount' => 0, |
16486
|
|
|
|
|
|
|
'error' => undef, |
16487
|
|
|
|
|
|
|
'items' => [ |
16488
|
|
|
|
|
|
|
bless( { |
16489
|
|
|
|
|
|
|
'argcode' => undef, |
16490
|
|
|
|
|
|
|
'implicit' => undef, |
16491
|
|
|
|
|
|
|
'line' => 133, |
16492
|
|
|
|
|
|
|
'lookahead' => 0, |
16493
|
|
|
|
|
|
|
'matchrule' => 0, |
16494
|
|
|
|
|
|
|
'subrule' => 'bodytype' |
16495
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
16496
|
|
|
|
|
|
|
bless( { |
16497
|
|
|
|
|
|
|
'argcode' => undef, |
16498
|
|
|
|
|
|
|
'implicit' => undef, |
16499
|
|
|
|
|
|
|
'line' => 133, |
16500
|
|
|
|
|
|
|
'lookahead' => 0, |
16501
|
|
|
|
|
|
|
'matchrule' => 0, |
16502
|
|
|
|
|
|
|
'subrule' => 'basicfields' |
16503
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
16504
|
|
|
|
|
|
|
bless( { |
16505
|
|
|
|
|
|
|
'argcode' => undef, |
16506
|
|
|
|
|
|
|
'expected' => undef, |
16507
|
|
|
|
|
|
|
'line' => 133, |
16508
|
|
|
|
|
|
|
'lookahead' => 0, |
16509
|
|
|
|
|
|
|
'matchrule' => 0, |
16510
|
|
|
|
|
|
|
'max' => 1, |
16511
|
|
|
|
|
|
|
'min' => 0, |
16512
|
|
|
|
|
|
|
'repspec' => '?', |
16513
|
|
|
|
|
|
|
'subrule' => 'bodyMD5' |
16514
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16515
|
|
|
|
|
|
|
bless( { |
16516
|
|
|
|
|
|
|
'argcode' => undef, |
16517
|
|
|
|
|
|
|
'expected' => undef, |
16518
|
|
|
|
|
|
|
'line' => 133, |
16519
|
|
|
|
|
|
|
'lookahead' => 0, |
16520
|
|
|
|
|
|
|
'matchrule' => 0, |
16521
|
|
|
|
|
|
|
'max' => 1, |
16522
|
|
|
|
|
|
|
'min' => 0, |
16523
|
|
|
|
|
|
|
'repspec' => '?', |
16524
|
|
|
|
|
|
|
'subrule' => 'bodydisp' |
16525
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16526
|
|
|
|
|
|
|
bless( { |
16527
|
|
|
|
|
|
|
'argcode' => undef, |
16528
|
|
|
|
|
|
|
'expected' => undef, |
16529
|
|
|
|
|
|
|
'line' => 134, |
16530
|
|
|
|
|
|
|
'lookahead' => 0, |
16531
|
|
|
|
|
|
|
'matchrule' => 0, |
16532
|
|
|
|
|
|
|
'max' => 1, |
16533
|
|
|
|
|
|
|
'min' => 0, |
16534
|
|
|
|
|
|
|
'repspec' => '?', |
16535
|
|
|
|
|
|
|
'subrule' => 'bodylang' |
16536
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16537
|
|
|
|
|
|
|
bless( { |
16538
|
|
|
|
|
|
|
'argcode' => undef, |
16539
|
|
|
|
|
|
|
'expected' => undef, |
16540
|
|
|
|
|
|
|
'line' => 134, |
16541
|
|
|
|
|
|
|
'lookahead' => 0, |
16542
|
|
|
|
|
|
|
'matchrule' => 0, |
16543
|
|
|
|
|
|
|
'max' => 1, |
16544
|
|
|
|
|
|
|
'min' => 0, |
16545
|
|
|
|
|
|
|
'repspec' => '?', |
16546
|
|
|
|
|
|
|
'subrule' => 'bodyextra' |
16547
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16548
|
|
|
|
|
|
|
bless( { |
16549
|
|
|
|
|
|
|
'code' => '{ $return = { bodytype => $item{bodytype} }; |
16550
|
|
|
|
|
|
|
take_optional_items($return, \\%item |
16551
|
|
|
|
|
|
|
, qw/bodyMD5 bodydisp bodylang bodyextra/ ); |
16552
|
|
|
|
|
|
|
merge_hash($return, $item{basicfields}); |
16553
|
|
|
|
|
|
|
1; |
16554
|
|
|
|
|
|
|
}', |
16555
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
16556
|
|
|
|
|
|
|
'line' => 135, |
16557
|
|
|
|
|
|
|
'lookahead' => 0 |
16558
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
16559
|
|
|
|
|
|
|
], |
16560
|
|
|
|
|
|
|
'line' => undef, |
16561
|
|
|
|
|
|
|
'number' => 0, |
16562
|
|
|
|
|
|
|
'patcount' => 0, |
16563
|
|
|
|
|
|
|
'strcount' => 0, |
16564
|
|
|
|
|
|
|
'uncommit' => undef |
16565
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
16566
|
|
|
|
|
|
|
], |
16567
|
|
|
|
|
|
|
'vars' => '' |
16568
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
16569
|
|
|
|
|
|
|
'part' => bless( { |
16570
|
|
|
|
|
|
|
'calls' => [ |
16571
|
|
|
|
|
|
|
'multipart', |
16572
|
|
|
|
|
|
|
'textmessage', |
16573
|
|
|
|
|
|
|
'nestedmessage', |
16574
|
|
|
|
|
|
|
'othertypemessage' |
16575
|
|
|
|
|
|
|
], |
16576
|
|
|
|
|
|
|
'changed' => 0, |
16577
|
|
|
|
|
|
|
'impcount' => 0, |
16578
|
|
|
|
|
|
|
'line' => 178, |
16579
|
|
|
|
|
|
|
'name' => 'part', |
16580
|
|
|
|
|
|
|
'opcount' => 0, |
16581
|
|
|
|
|
|
|
'prods' => [ |
16582
|
|
|
|
|
|
|
bless( { |
16583
|
|
|
|
|
|
|
'actcount' => 1, |
16584
|
|
|
|
|
|
|
'dircount' => 0, |
16585
|
|
|
|
|
|
|
'error' => undef, |
16586
|
|
|
|
|
|
|
'items' => [ |
16587
|
|
|
|
|
|
|
bless( { |
16588
|
|
|
|
|
|
|
'argcode' => undef, |
16589
|
|
|
|
|
|
|
'implicit' => undef, |
16590
|
|
|
|
|
|
|
'line' => 178, |
16591
|
|
|
|
|
|
|
'lookahead' => 0, |
16592
|
|
|
|
|
|
|
'matchrule' => 0, |
16593
|
|
|
|
|
|
|
'subrule' => 'multipart' |
16594
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
16595
|
|
|
|
|
|
|
bless( { |
16596
|
|
|
|
|
|
|
'code' => '{ $return = bless $item{multipart}, $mibs }', |
16597
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
16598
|
|
|
|
|
|
|
'line' => 178, |
16599
|
|
|
|
|
|
|
'lookahead' => 0 |
16600
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
16601
|
|
|
|
|
|
|
], |
16602
|
|
|
|
|
|
|
'line' => undef, |
16603
|
|
|
|
|
|
|
'number' => 0, |
16604
|
|
|
|
|
|
|
'patcount' => 0, |
16605
|
|
|
|
|
|
|
'strcount' => 0, |
16606
|
|
|
|
|
|
|
'uncommit' => undef |
16607
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
16608
|
|
|
|
|
|
|
bless( { |
16609
|
|
|
|
|
|
|
'actcount' => 1, |
16610
|
|
|
|
|
|
|
'dircount' => 0, |
16611
|
|
|
|
|
|
|
'error' => undef, |
16612
|
|
|
|
|
|
|
'items' => [ |
16613
|
|
|
|
|
|
|
bless( { |
16614
|
|
|
|
|
|
|
'argcode' => undef, |
16615
|
|
|
|
|
|
|
'implicit' => undef, |
16616
|
|
|
|
|
|
|
'line' => 179, |
16617
|
|
|
|
|
|
|
'lookahead' => 0, |
16618
|
|
|
|
|
|
|
'matchrule' => 0, |
16619
|
|
|
|
|
|
|
'subrule' => 'textmessage' |
16620
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
16621
|
|
|
|
|
|
|
bless( { |
16622
|
|
|
|
|
|
|
'code' => '{ $return = bless $item{textmessage}, $mibs }', |
16623
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
16624
|
|
|
|
|
|
|
'line' => 179, |
16625
|
|
|
|
|
|
|
'lookahead' => 0 |
16626
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
16627
|
|
|
|
|
|
|
], |
16628
|
|
|
|
|
|
|
'line' => 179, |
16629
|
|
|
|
|
|
|
'number' => 1, |
16630
|
|
|
|
|
|
|
'patcount' => 0, |
16631
|
|
|
|
|
|
|
'strcount' => 0, |
16632
|
|
|
|
|
|
|
'uncommit' => undef |
16633
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
16634
|
|
|
|
|
|
|
bless( { |
16635
|
|
|
|
|
|
|
'actcount' => 1, |
16636
|
|
|
|
|
|
|
'dircount' => 0, |
16637
|
|
|
|
|
|
|
'error' => undef, |
16638
|
|
|
|
|
|
|
'items' => [ |
16639
|
|
|
|
|
|
|
bless( { |
16640
|
|
|
|
|
|
|
'argcode' => undef, |
16641
|
|
|
|
|
|
|
'implicit' => undef, |
16642
|
|
|
|
|
|
|
'line' => 180, |
16643
|
|
|
|
|
|
|
'lookahead' => 0, |
16644
|
|
|
|
|
|
|
'matchrule' => 0, |
16645
|
|
|
|
|
|
|
'subrule' => 'nestedmessage' |
16646
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
16647
|
|
|
|
|
|
|
bless( { |
16648
|
|
|
|
|
|
|
'code' => '{ $return = bless $item{nestedmessage}, $mibs }', |
16649
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
16650
|
|
|
|
|
|
|
'line' => 180, |
16651
|
|
|
|
|
|
|
'lookahead' => 0 |
16652
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
16653
|
|
|
|
|
|
|
], |
16654
|
|
|
|
|
|
|
'line' => 180, |
16655
|
|
|
|
|
|
|
'number' => 2, |
16656
|
|
|
|
|
|
|
'patcount' => 0, |
16657
|
|
|
|
|
|
|
'strcount' => 0, |
16658
|
|
|
|
|
|
|
'uncommit' => undef |
16659
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
16660
|
|
|
|
|
|
|
bless( { |
16661
|
|
|
|
|
|
|
'actcount' => 1, |
16662
|
|
|
|
|
|
|
'dircount' => 0, |
16663
|
|
|
|
|
|
|
'error' => undef, |
16664
|
|
|
|
|
|
|
'items' => [ |
16665
|
|
|
|
|
|
|
bless( { |
16666
|
|
|
|
|
|
|
'argcode' => undef, |
16667
|
|
|
|
|
|
|
'implicit' => undef, |
16668
|
|
|
|
|
|
|
'line' => 181, |
16669
|
|
|
|
|
|
|
'lookahead' => 0, |
16670
|
|
|
|
|
|
|
'matchrule' => 0, |
16671
|
|
|
|
|
|
|
'subrule' => 'othertypemessage' |
16672
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
16673
|
|
|
|
|
|
|
bless( { |
16674
|
|
|
|
|
|
|
'code' => '{ $return = bless $item{othertypemessage}, $mibs }', |
16675
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
16676
|
|
|
|
|
|
|
'line' => 181, |
16677
|
|
|
|
|
|
|
'lookahead' => 0 |
16678
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
16679
|
|
|
|
|
|
|
], |
16680
|
|
|
|
|
|
|
'line' => 181, |
16681
|
|
|
|
|
|
|
'number' => 3, |
16682
|
|
|
|
|
|
|
'patcount' => 0, |
16683
|
|
|
|
|
|
|
'strcount' => 0, |
16684
|
|
|
|
|
|
|
'uncommit' => undef |
16685
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
16686
|
|
|
|
|
|
|
], |
16687
|
|
|
|
|
|
|
'vars' => '' |
16688
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
16689
|
|
|
|
|
|
|
'personalname' => bless( { |
16690
|
|
|
|
|
|
|
'calls' => [ |
16691
|
|
|
|
|
|
|
'NIL', |
16692
|
|
|
|
|
|
|
'STRING' |
16693
|
|
|
|
|
|
|
], |
16694
|
|
|
|
|
|
|
'changed' => 0, |
16695
|
|
|
|
|
|
|
'impcount' => 0, |
16696
|
|
|
|
|
|
|
'line' => 78, |
16697
|
|
|
|
|
|
|
'name' => 'personalname', |
16698
|
|
|
|
|
|
|
'opcount' => 0, |
16699
|
|
|
|
|
|
|
'prods' => [ |
16700
|
|
|
|
|
|
|
bless( { |
16701
|
|
|
|
|
|
|
'actcount' => 0, |
16702
|
|
|
|
|
|
|
'dircount' => 0, |
16703
|
|
|
|
|
|
|
'error' => undef, |
16704
|
|
|
|
|
|
|
'items' => [ |
16705
|
|
|
|
|
|
|
bless( { |
16706
|
|
|
|
|
|
|
'argcode' => undef, |
16707
|
|
|
|
|
|
|
'implicit' => undef, |
16708
|
|
|
|
|
|
|
'line' => 78, |
16709
|
|
|
|
|
|
|
'lookahead' => 0, |
16710
|
|
|
|
|
|
|
'matchrule' => 0, |
16711
|
|
|
|
|
|
|
'subrule' => 'NIL' |
16712
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
16713
|
|
|
|
|
|
|
], |
16714
|
|
|
|
|
|
|
'line' => undef, |
16715
|
|
|
|
|
|
|
'number' => 0, |
16716
|
|
|
|
|
|
|
'patcount' => 0, |
16717
|
|
|
|
|
|
|
'strcount' => 0, |
16718
|
|
|
|
|
|
|
'uncommit' => undef |
16719
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
16720
|
|
|
|
|
|
|
bless( { |
16721
|
|
|
|
|
|
|
'actcount' => 0, |
16722
|
|
|
|
|
|
|
'dircount' => 0, |
16723
|
|
|
|
|
|
|
'error' => undef, |
16724
|
|
|
|
|
|
|
'items' => [ |
16725
|
|
|
|
|
|
|
bless( { |
16726
|
|
|
|
|
|
|
'argcode' => undef, |
16727
|
|
|
|
|
|
|
'implicit' => undef, |
16728
|
|
|
|
|
|
|
'line' => 78, |
16729
|
|
|
|
|
|
|
'lookahead' => 0, |
16730
|
|
|
|
|
|
|
'matchrule' => 0, |
16731
|
|
|
|
|
|
|
'subrule' => 'STRING' |
16732
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
16733
|
|
|
|
|
|
|
], |
16734
|
|
|
|
|
|
|
'line' => 78, |
16735
|
|
|
|
|
|
|
'number' => 1, |
16736
|
|
|
|
|
|
|
'patcount' => 0, |
16737
|
|
|
|
|
|
|
'strcount' => 0, |
16738
|
|
|
|
|
|
|
'uncommit' => undef |
16739
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
16740
|
|
|
|
|
|
|
], |
16741
|
|
|
|
|
|
|
'vars' => '' |
16742
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
16743
|
|
|
|
|
|
|
'replyto' => bless( { |
16744
|
|
|
|
|
|
|
'calls' => [ |
16745
|
|
|
|
|
|
|
'ADDRESSES' |
16746
|
|
|
|
|
|
|
], |
16747
|
|
|
|
|
|
|
'changed' => 0, |
16748
|
|
|
|
|
|
|
'impcount' => 0, |
16749
|
|
|
|
|
|
|
'line' => 102, |
16750
|
|
|
|
|
|
|
'name' => 'replyto', |
16751
|
|
|
|
|
|
|
'opcount' => 0, |
16752
|
|
|
|
|
|
|
'prods' => [ |
16753
|
|
|
|
|
|
|
bless( { |
16754
|
|
|
|
|
|
|
'actcount' => 0, |
16755
|
|
|
|
|
|
|
'dircount' => 0, |
16756
|
|
|
|
|
|
|
'error' => undef, |
16757
|
|
|
|
|
|
|
'items' => [ |
16758
|
|
|
|
|
|
|
bless( { |
16759
|
|
|
|
|
|
|
'argcode' => undef, |
16760
|
|
|
|
|
|
|
'implicit' => undef, |
16761
|
|
|
|
|
|
|
'line' => 102, |
16762
|
|
|
|
|
|
|
'lookahead' => 0, |
16763
|
|
|
|
|
|
|
'matchrule' => 0, |
16764
|
|
|
|
|
|
|
'subrule' => 'ADDRESSES' |
16765
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
16766
|
|
|
|
|
|
|
], |
16767
|
|
|
|
|
|
|
'line' => undef, |
16768
|
|
|
|
|
|
|
'number' => 0, |
16769
|
|
|
|
|
|
|
'patcount' => 0, |
16770
|
|
|
|
|
|
|
'strcount' => 0, |
16771
|
|
|
|
|
|
|
'uncommit' => undef |
16772
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
16773
|
|
|
|
|
|
|
], |
16774
|
|
|
|
|
|
|
'vars' => '' |
16775
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
16776
|
|
|
|
|
|
|
'rfc822message' => bless( { |
16777
|
|
|
|
|
|
|
'calls' => [ |
16778
|
|
|
|
|
|
|
'MESSAGE', |
16779
|
|
|
|
|
|
|
'RFC822' |
16780
|
|
|
|
|
|
|
], |
16781
|
|
|
|
|
|
|
'changed' => 0, |
16782
|
|
|
|
|
|
|
'impcount' => 0, |
16783
|
|
|
|
|
|
|
'line' => 52, |
16784
|
|
|
|
|
|
|
'name' => 'rfc822message', |
16785
|
|
|
|
|
|
|
'opcount' => 0, |
16786
|
|
|
|
|
|
|
'prods' => [ |
16787
|
|
|
|
|
|
|
bless( { |
16788
|
|
|
|
|
|
|
'actcount' => 1, |
16789
|
|
|
|
|
|
|
'dircount' => 0, |
16790
|
|
|
|
|
|
|
'error' => undef, |
16791
|
|
|
|
|
|
|
'items' => [ |
16792
|
|
|
|
|
|
|
bless( { |
16793
|
|
|
|
|
|
|
'argcode' => undef, |
16794
|
|
|
|
|
|
|
'implicit' => undef, |
16795
|
|
|
|
|
|
|
'line' => 52, |
16796
|
|
|
|
|
|
|
'lookahead' => 0, |
16797
|
|
|
|
|
|
|
'matchrule' => 0, |
16798
|
|
|
|
|
|
|
'subrule' => 'MESSAGE' |
16799
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
16800
|
|
|
|
|
|
|
bless( { |
16801
|
|
|
|
|
|
|
'argcode' => undef, |
16802
|
|
|
|
|
|
|
'implicit' => undef, |
16803
|
|
|
|
|
|
|
'line' => 52, |
16804
|
|
|
|
|
|
|
'lookahead' => 0, |
16805
|
|
|
|
|
|
|
'matchrule' => 0, |
16806
|
|
|
|
|
|
|
'subrule' => 'RFC822' |
16807
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
16808
|
|
|
|
|
|
|
bless( { |
16809
|
|
|
|
|
|
|
'code' => '{ $return = "MESSAGE RFC822" }', |
16810
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
16811
|
|
|
|
|
|
|
'line' => 52, |
16812
|
|
|
|
|
|
|
'lookahead' => 0 |
16813
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
16814
|
|
|
|
|
|
|
], |
16815
|
|
|
|
|
|
|
'line' => undef, |
16816
|
|
|
|
|
|
|
'number' => 0, |
16817
|
|
|
|
|
|
|
'patcount' => 0, |
16818
|
|
|
|
|
|
|
'strcount' => 0, |
16819
|
|
|
|
|
|
|
'uncommit' => undef |
16820
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
16821
|
|
|
|
|
|
|
], |
16822
|
|
|
|
|
|
|
'vars' => '' |
16823
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
16824
|
|
|
|
|
|
|
'sender' => bless( { |
16825
|
|
|
|
|
|
|
'calls' => [ |
16826
|
|
|
|
|
|
|
'ADDRESSES' |
16827
|
|
|
|
|
|
|
], |
16828
|
|
|
|
|
|
|
'changed' => 0, |
16829
|
|
|
|
|
|
|
'impcount' => 0, |
16830
|
|
|
|
|
|
|
'line' => 103, |
16831
|
|
|
|
|
|
|
'name' => 'sender', |
16832
|
|
|
|
|
|
|
'opcount' => 0, |
16833
|
|
|
|
|
|
|
'prods' => [ |
16834
|
|
|
|
|
|
|
bless( { |
16835
|
|
|
|
|
|
|
'actcount' => 0, |
16836
|
|
|
|
|
|
|
'dircount' => 0, |
16837
|
|
|
|
|
|
|
'error' => undef, |
16838
|
|
|
|
|
|
|
'items' => [ |
16839
|
|
|
|
|
|
|
bless( { |
16840
|
|
|
|
|
|
|
'argcode' => undef, |
16841
|
|
|
|
|
|
|
'implicit' => undef, |
16842
|
|
|
|
|
|
|
'line' => 103, |
16843
|
|
|
|
|
|
|
'lookahead' => 0, |
16844
|
|
|
|
|
|
|
'matchrule' => 0, |
16845
|
|
|
|
|
|
|
'subrule' => 'ADDRESSES' |
16846
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
16847
|
|
|
|
|
|
|
], |
16848
|
|
|
|
|
|
|
'line' => undef, |
16849
|
|
|
|
|
|
|
'number' => 0, |
16850
|
|
|
|
|
|
|
'patcount' => 0, |
16851
|
|
|
|
|
|
|
'strcount' => 0, |
16852
|
|
|
|
|
|
|
'uncommit' => undef |
16853
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
16854
|
|
|
|
|
|
|
], |
16855
|
|
|
|
|
|
|
'vars' => '' |
16856
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
16857
|
|
|
|
|
|
|
'sourceroute' => bless( { |
16858
|
|
|
|
|
|
|
'calls' => [ |
16859
|
|
|
|
|
|
|
'NIL', |
16860
|
|
|
|
|
|
|
'STRING' |
16861
|
|
|
|
|
|
|
], |
16862
|
|
|
|
|
|
|
'changed' => 0, |
16863
|
|
|
|
|
|
|
'impcount' => 0, |
16864
|
|
|
|
|
|
|
'line' => 79, |
16865
|
|
|
|
|
|
|
'name' => 'sourceroute', |
16866
|
|
|
|
|
|
|
'opcount' => 0, |
16867
|
|
|
|
|
|
|
'prods' => [ |
16868
|
|
|
|
|
|
|
bless( { |
16869
|
|
|
|
|
|
|
'actcount' => 0, |
16870
|
|
|
|
|
|
|
'dircount' => 0, |
16871
|
|
|
|
|
|
|
'error' => undef, |
16872
|
|
|
|
|
|
|
'items' => [ |
16873
|
|
|
|
|
|
|
bless( { |
16874
|
|
|
|
|
|
|
'argcode' => undef, |
16875
|
|
|
|
|
|
|
'implicit' => undef, |
16876
|
|
|
|
|
|
|
'line' => 79, |
16877
|
|
|
|
|
|
|
'lookahead' => 0, |
16878
|
|
|
|
|
|
|
'matchrule' => 0, |
16879
|
|
|
|
|
|
|
'subrule' => 'NIL' |
16880
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
16881
|
|
|
|
|
|
|
], |
16882
|
|
|
|
|
|
|
'line' => undef, |
16883
|
|
|
|
|
|
|
'number' => 0, |
16884
|
|
|
|
|
|
|
'patcount' => 0, |
16885
|
|
|
|
|
|
|
'strcount' => 0, |
16886
|
|
|
|
|
|
|
'uncommit' => undef |
16887
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
16888
|
|
|
|
|
|
|
bless( { |
16889
|
|
|
|
|
|
|
'actcount' => 0, |
16890
|
|
|
|
|
|
|
'dircount' => 0, |
16891
|
|
|
|
|
|
|
'error' => undef, |
16892
|
|
|
|
|
|
|
'items' => [ |
16893
|
|
|
|
|
|
|
bless( { |
16894
|
|
|
|
|
|
|
'argcode' => undef, |
16895
|
|
|
|
|
|
|
'implicit' => undef, |
16896
|
|
|
|
|
|
|
'line' => 79, |
16897
|
|
|
|
|
|
|
'lookahead' => 0, |
16898
|
|
|
|
|
|
|
'matchrule' => 0, |
16899
|
|
|
|
|
|
|
'subrule' => 'STRING' |
16900
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
16901
|
|
|
|
|
|
|
], |
16902
|
|
|
|
|
|
|
'line' => 79, |
16903
|
|
|
|
|
|
|
'number' => 1, |
16904
|
|
|
|
|
|
|
'patcount' => 0, |
16905
|
|
|
|
|
|
|
'strcount' => 0, |
16906
|
|
|
|
|
|
|
'uncommit' => undef |
16907
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
16908
|
|
|
|
|
|
|
], |
16909
|
|
|
|
|
|
|
'vars' => '' |
16910
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
16911
|
|
|
|
|
|
|
'start' => bless( { |
16912
|
|
|
|
|
|
|
'calls' => [ |
16913
|
|
|
|
|
|
|
'part' |
16914
|
|
|
|
|
|
|
], |
16915
|
|
|
|
|
|
|
'changed' => 0, |
16916
|
|
|
|
|
|
|
'impcount' => 0, |
16917
|
|
|
|
|
|
|
'line' => 186, |
16918
|
|
|
|
|
|
|
'name' => 'start', |
16919
|
|
|
|
|
|
|
'opcount' => 0, |
16920
|
|
|
|
|
|
|
'prods' => [ |
16921
|
|
|
|
|
|
|
bless( { |
16922
|
|
|
|
|
|
|
'actcount' => 1, |
16923
|
|
|
|
|
|
|
'dircount' => 0, |
16924
|
|
|
|
|
|
|
'error' => undef, |
16925
|
|
|
|
|
|
|
'items' => [ |
16926
|
|
|
|
|
|
|
bless( { |
16927
|
|
|
|
|
|
|
'description' => '/.*?\\\\(.*?BODYSTRUCTURE \\\\(/i', |
16928
|
|
|
|
|
|
|
'hashname' => '__PATTERN1__', |
16929
|
|
|
|
|
|
|
'ldelim' => '/', |
16930
|
|
|
|
|
|
|
'line' => 186, |
16931
|
|
|
|
|
|
|
'lookahead' => 0, |
16932
|
|
|
|
|
|
|
'mod' => 'i', |
16933
|
|
|
|
|
|
|
'pattern' => '.*?\\(.*?BODYSTRUCTURE \\(', |
16934
|
|
|
|
|
|
|
'rdelim' => '/' |
16935
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
16936
|
|
|
|
|
|
|
bless( { |
16937
|
|
|
|
|
|
|
'argcode' => undef, |
16938
|
|
|
|
|
|
|
'expected' => undef, |
16939
|
|
|
|
|
|
|
'line' => 186, |
16940
|
|
|
|
|
|
|
'lookahead' => 0, |
16941
|
|
|
|
|
|
|
'matchrule' => 0, |
16942
|
|
|
|
|
|
|
'max' => 1, |
16943
|
|
|
|
|
|
|
'min' => 1, |
16944
|
|
|
|
|
|
|
'repspec' => '1', |
16945
|
|
|
|
|
|
|
'subrule' => 'part' |
16946
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
16947
|
|
|
|
|
|
|
bless( { |
16948
|
|
|
|
|
|
|
'description' => '/\\\\).*\\\\)\\\\r?\\\\n?/', |
16949
|
|
|
|
|
|
|
'hashname' => '__PATTERN2__', |
16950
|
|
|
|
|
|
|
'ldelim' => '/', |
16951
|
|
|
|
|
|
|
'line' => 186, |
16952
|
|
|
|
|
|
|
'lookahead' => 0, |
16953
|
|
|
|
|
|
|
'mod' => '', |
16954
|
|
|
|
|
|
|
'pattern' => '\\).*\\)\\r?\\n?', |
16955
|
|
|
|
|
|
|
'rdelim' => '/' |
16956
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Token' ), |
16957
|
|
|
|
|
|
|
bless( { |
16958
|
|
|
|
|
|
|
'code' => '{ $return = $item{\'part(1)\'}[0] }', |
16959
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
16960
|
|
|
|
|
|
|
'line' => 187, |
16961
|
|
|
|
|
|
|
'lookahead' => 0 |
16962
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
16963
|
|
|
|
|
|
|
], |
16964
|
|
|
|
|
|
|
'line' => undef, |
16965
|
|
|
|
|
|
|
'number' => 0, |
16966
|
|
|
|
|
|
|
'patcount' => 2, |
16967
|
|
|
|
|
|
|
'strcount' => 0, |
16968
|
|
|
|
|
|
|
'uncommit' => undef |
16969
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
16970
|
|
|
|
|
|
|
], |
16971
|
|
|
|
|
|
|
'vars' => '' |
16972
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
16973
|
|
|
|
|
|
|
'subject' => bless( { |
16974
|
|
|
|
|
|
|
'calls' => [ |
16975
|
|
|
|
|
|
|
'NIL', |
16976
|
|
|
|
|
|
|
'STRING' |
16977
|
|
|
|
|
|
|
], |
16978
|
|
|
|
|
|
|
'changed' => 0, |
16979
|
|
|
|
|
|
|
'impcount' => 0, |
16980
|
|
|
|
|
|
|
'line' => 91, |
16981
|
|
|
|
|
|
|
'name' => 'subject', |
16982
|
|
|
|
|
|
|
'opcount' => 0, |
16983
|
|
|
|
|
|
|
'prods' => [ |
16984
|
|
|
|
|
|
|
bless( { |
16985
|
|
|
|
|
|
|
'actcount' => 0, |
16986
|
|
|
|
|
|
|
'dircount' => 0, |
16987
|
|
|
|
|
|
|
'error' => undef, |
16988
|
|
|
|
|
|
|
'items' => [ |
16989
|
|
|
|
|
|
|
bless( { |
16990
|
|
|
|
|
|
|
'argcode' => undef, |
16991
|
|
|
|
|
|
|
'implicit' => undef, |
16992
|
|
|
|
|
|
|
'line' => 91, |
16993
|
|
|
|
|
|
|
'lookahead' => 0, |
16994
|
|
|
|
|
|
|
'matchrule' => 0, |
16995
|
|
|
|
|
|
|
'subrule' => 'NIL' |
16996
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
16997
|
|
|
|
|
|
|
], |
16998
|
|
|
|
|
|
|
'line' => undef, |
16999
|
|
|
|
|
|
|
'number' => 0, |
17000
|
|
|
|
|
|
|
'patcount' => 0, |
17001
|
|
|
|
|
|
|
'strcount' => 0, |
17002
|
|
|
|
|
|
|
'uncommit' => undef |
17003
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
17004
|
|
|
|
|
|
|
bless( { |
17005
|
|
|
|
|
|
|
'actcount' => 0, |
17006
|
|
|
|
|
|
|
'dircount' => 0, |
17007
|
|
|
|
|
|
|
'error' => undef, |
17008
|
|
|
|
|
|
|
'items' => [ |
17009
|
|
|
|
|
|
|
bless( { |
17010
|
|
|
|
|
|
|
'argcode' => undef, |
17011
|
|
|
|
|
|
|
'implicit' => undef, |
17012
|
|
|
|
|
|
|
'line' => 91, |
17013
|
|
|
|
|
|
|
'lookahead' => 0, |
17014
|
|
|
|
|
|
|
'matchrule' => 0, |
17015
|
|
|
|
|
|
|
'subrule' => 'STRING' |
17016
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
17017
|
|
|
|
|
|
|
], |
17018
|
|
|
|
|
|
|
'line' => 91, |
17019
|
|
|
|
|
|
|
'number' => 1, |
17020
|
|
|
|
|
|
|
'patcount' => 0, |
17021
|
|
|
|
|
|
|
'strcount' => 0, |
17022
|
|
|
|
|
|
|
'uncommit' => undef |
17023
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
17024
|
|
|
|
|
|
|
], |
17025
|
|
|
|
|
|
|
'vars' => '' |
17026
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
17027
|
|
|
|
|
|
|
'subpart' => bless( { |
17028
|
|
|
|
|
|
|
'calls' => [ |
17029
|
|
|
|
|
|
|
'part' |
17030
|
|
|
|
|
|
|
], |
17031
|
|
|
|
|
|
|
'changed' => 0, |
17032
|
|
|
|
|
|
|
'impcount' => 0, |
17033
|
|
|
|
|
|
|
'line' => 176, |
17034
|
|
|
|
|
|
|
'name' => 'subpart', |
17035
|
|
|
|
|
|
|
'opcount' => 0, |
17036
|
|
|
|
|
|
|
'prods' => [ |
17037
|
|
|
|
|
|
|
bless( { |
17038
|
|
|
|
|
|
|
'actcount' => 1, |
17039
|
|
|
|
|
|
|
'dircount' => 1, |
17040
|
|
|
|
|
|
|
'error' => undef, |
17041
|
|
|
|
|
|
|
'items' => [ |
17042
|
|
|
|
|
|
|
bless( { |
17043
|
|
|
|
|
|
|
'description' => '\'(\'', |
17044
|
|
|
|
|
|
|
'hashname' => '__STRING1__', |
17045
|
|
|
|
|
|
|
'line' => 176, |
17046
|
|
|
|
|
|
|
'lookahead' => 0, |
17047
|
|
|
|
|
|
|
'pattern' => '(' |
17048
|
|
|
|
|
|
|
}, 'Parse::RecDescent::InterpLit' ), |
17049
|
|
|
|
|
|
|
bless( { |
17050
|
|
|
|
|
|
|
'argcode' => undef, |
17051
|
|
|
|
|
|
|
'implicit' => undef, |
17052
|
|
|
|
|
|
|
'line' => 176, |
17053
|
|
|
|
|
|
|
'lookahead' => 0, |
17054
|
|
|
|
|
|
|
'matchrule' => 0, |
17055
|
|
|
|
|
|
|
'subrule' => 'part' |
17056
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
17057
|
|
|
|
|
|
|
bless( { |
17058
|
|
|
|
|
|
|
'description' => '\')\'', |
17059
|
|
|
|
|
|
|
'hashname' => '__STRING2__', |
17060
|
|
|
|
|
|
|
'line' => 176, |
17061
|
|
|
|
|
|
|
'lookahead' => 0, |
17062
|
|
|
|
|
|
|
'pattern' => ')' |
17063
|
|
|
|
|
|
|
}, 'Parse::RecDescent::InterpLit' ), |
17064
|
|
|
|
|
|
|
bless( { |
17065
|
|
|
|
|
|
|
'code' => '{$return = $item{part}}', |
17066
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
17067
|
|
|
|
|
|
|
'line' => 176, |
17068
|
|
|
|
|
|
|
'lookahead' => 0 |
17069
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ), |
17070
|
|
|
|
|
|
|
bless( { |
17071
|
|
|
|
|
|
|
'code' => 'push @{$thisparser->{deferred}}, sub { ++$subpartCount; };', |
17072
|
|
|
|
|
|
|
'hashname' => '__DIRECTIVE1__', |
17073
|
|
|
|
|
|
|
'line' => 176, |
17074
|
|
|
|
|
|
|
'lookahead' => 0, |
17075
|
|
|
|
|
|
|
'name' => '' |
17076
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Directive' ) |
17077
|
|
|
|
|
|
|
], |
17078
|
|
|
|
|
|
|
'line' => undef, |
17079
|
|
|
|
|
|
|
'number' => 0, |
17080
|
|
|
|
|
|
|
'patcount' => 0, |
17081
|
|
|
|
|
|
|
'strcount' => 2, |
17082
|
|
|
|
|
|
|
'uncommit' => undef |
17083
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
17084
|
|
|
|
|
|
|
], |
17085
|
|
|
|
|
|
|
'vars' => '' |
17086
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
17087
|
|
|
|
|
|
|
'textlines' => bless( { |
17088
|
|
|
|
|
|
|
'calls' => [ |
17089
|
|
|
|
|
|
|
'NIL', |
17090
|
|
|
|
|
|
|
'NUMBER' |
17091
|
|
|
|
|
|
|
], |
17092
|
|
|
|
|
|
|
'changed' => 0, |
17093
|
|
|
|
|
|
|
'impcount' => 0, |
17094
|
|
|
|
|
|
|
'line' => 50, |
17095
|
|
|
|
|
|
|
'name' => 'textlines', |
17096
|
|
|
|
|
|
|
'opcount' => 0, |
17097
|
|
|
|
|
|
|
'prods' => [ |
17098
|
|
|
|
|
|
|
bless( { |
17099
|
|
|
|
|
|
|
'actcount' => 0, |
17100
|
|
|
|
|
|
|
'dircount' => 0, |
17101
|
|
|
|
|
|
|
'error' => undef, |
17102
|
|
|
|
|
|
|
'items' => [ |
17103
|
|
|
|
|
|
|
bless( { |
17104
|
|
|
|
|
|
|
'argcode' => undef, |
17105
|
|
|
|
|
|
|
'implicit' => undef, |
17106
|
|
|
|
|
|
|
'line' => 50, |
17107
|
|
|
|
|
|
|
'lookahead' => 0, |
17108
|
|
|
|
|
|
|
'matchrule' => 0, |
17109
|
|
|
|
|
|
|
'subrule' => 'NIL' |
17110
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
17111
|
|
|
|
|
|
|
], |
17112
|
|
|
|
|
|
|
'line' => undef, |
17113
|
|
|
|
|
|
|
'number' => 0, |
17114
|
|
|
|
|
|
|
'patcount' => 0, |
17115
|
|
|
|
|
|
|
'strcount' => 0, |
17116
|
|
|
|
|
|
|
'uncommit' => undef |
17117
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
17118
|
|
|
|
|
|
|
bless( { |
17119
|
|
|
|
|
|
|
'actcount' => 0, |
17120
|
|
|
|
|
|
|
'dircount' => 0, |
17121
|
|
|
|
|
|
|
'error' => undef, |
17122
|
|
|
|
|
|
|
'items' => [ |
17123
|
|
|
|
|
|
|
bless( { |
17124
|
|
|
|
|
|
|
'argcode' => undef, |
17125
|
|
|
|
|
|
|
'implicit' => undef, |
17126
|
|
|
|
|
|
|
'line' => 50, |
17127
|
|
|
|
|
|
|
'lookahead' => 0, |
17128
|
|
|
|
|
|
|
'matchrule' => 0, |
17129
|
|
|
|
|
|
|
'subrule' => 'NUMBER' |
17130
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
17131
|
|
|
|
|
|
|
], |
17132
|
|
|
|
|
|
|
'line' => 50, |
17133
|
|
|
|
|
|
|
'number' => 1, |
17134
|
|
|
|
|
|
|
'patcount' => 0, |
17135
|
|
|
|
|
|
|
'strcount' => 0, |
17136
|
|
|
|
|
|
|
'uncommit' => undef |
17137
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
17138
|
|
|
|
|
|
|
], |
17139
|
|
|
|
|
|
|
'vars' => '' |
17140
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
17141
|
|
|
|
|
|
|
'textmessage' => bless( { |
17142
|
|
|
|
|
|
|
'calls' => [ |
17143
|
|
|
|
|
|
|
'TEXT', |
17144
|
|
|
|
|
|
|
'basicfields', |
17145
|
|
|
|
|
|
|
'textlines', |
17146
|
|
|
|
|
|
|
'bodyMD5', |
17147
|
|
|
|
|
|
|
'bodydisp', |
17148
|
|
|
|
|
|
|
'bodylang', |
17149
|
|
|
|
|
|
|
'bodyextra', |
17150
|
|
|
|
|
|
|
'bodyextensions' |
17151
|
|
|
|
|
|
|
], |
17152
|
|
|
|
|
|
|
'changed' => 0, |
17153
|
|
|
|
|
|
|
'impcount' => 0, |
17154
|
|
|
|
|
|
|
'line' => 123, |
17155
|
|
|
|
|
|
|
'name' => 'textmessage', |
17156
|
|
|
|
|
|
|
'opcount' => 0, |
17157
|
|
|
|
|
|
|
'prods' => [ |
17158
|
|
|
|
|
|
|
bless( { |
17159
|
|
|
|
|
|
|
'actcount' => 1, |
17160
|
|
|
|
|
|
|
'dircount' => 1, |
17161
|
|
|
|
|
|
|
'error' => undef, |
17162
|
|
|
|
|
|
|
'items' => [ |
17163
|
|
|
|
|
|
|
bless( { |
17164
|
|
|
|
|
|
|
'argcode' => undef, |
17165
|
|
|
|
|
|
|
'implicit' => undef, |
17166
|
|
|
|
|
|
|
'line' => 123, |
17167
|
|
|
|
|
|
|
'lookahead' => 0, |
17168
|
|
|
|
|
|
|
'matchrule' => 0, |
17169
|
|
|
|
|
|
|
'subrule' => 'TEXT' |
17170
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
17171
|
|
|
|
|
|
|
bless( { |
17172
|
|
|
|
|
|
|
'code' => '$commit = 1', |
17173
|
|
|
|
|
|
|
'hashname' => '__DIRECTIVE1__', |
17174
|
|
|
|
|
|
|
'line' => 123, |
17175
|
|
|
|
|
|
|
'lookahead' => 0, |
17176
|
|
|
|
|
|
|
'name' => '' |
17177
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Directive' ), |
17178
|
|
|
|
|
|
|
bless( { |
17179
|
|
|
|
|
|
|
'argcode' => undef, |
17180
|
|
|
|
|
|
|
'implicit' => undef, |
17181
|
|
|
|
|
|
|
'line' => 123, |
17182
|
|
|
|
|
|
|
'lookahead' => 0, |
17183
|
|
|
|
|
|
|
'matchrule' => 0, |
17184
|
|
|
|
|
|
|
'subrule' => 'basicfields' |
17185
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ), |
17186
|
|
|
|
|
|
|
bless( { |
17187
|
|
|
|
|
|
|
'argcode' => undef, |
17188
|
|
|
|
|
|
|
'expected' => undef, |
17189
|
|
|
|
|
|
|
'line' => 123, |
17190
|
|
|
|
|
|
|
'lookahead' => 0, |
17191
|
|
|
|
|
|
|
'matchrule' => 0, |
17192
|
|
|
|
|
|
|
'max' => 1, |
17193
|
|
|
|
|
|
|
'min' => 0, |
17194
|
|
|
|
|
|
|
'repspec' => '?', |
17195
|
|
|
|
|
|
|
'subrule' => 'textlines' |
17196
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
17197
|
|
|
|
|
|
|
bless( { |
17198
|
|
|
|
|
|
|
'argcode' => undef, |
17199
|
|
|
|
|
|
|
'expected' => undef, |
17200
|
|
|
|
|
|
|
'line' => 123, |
17201
|
|
|
|
|
|
|
'lookahead' => 0, |
17202
|
|
|
|
|
|
|
'matchrule' => 0, |
17203
|
|
|
|
|
|
|
'max' => 1, |
17204
|
|
|
|
|
|
|
'min' => 0, |
17205
|
|
|
|
|
|
|
'repspec' => '?', |
17206
|
|
|
|
|
|
|
'subrule' => 'bodyMD5' |
17207
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
17208
|
|
|
|
|
|
|
bless( { |
17209
|
|
|
|
|
|
|
'argcode' => undef, |
17210
|
|
|
|
|
|
|
'expected' => undef, |
17211
|
|
|
|
|
|
|
'line' => 124, |
17212
|
|
|
|
|
|
|
'lookahead' => 0, |
17213
|
|
|
|
|
|
|
'matchrule' => 0, |
17214
|
|
|
|
|
|
|
'max' => 1, |
17215
|
|
|
|
|
|
|
'min' => 0, |
17216
|
|
|
|
|
|
|
'repspec' => '?', |
17217
|
|
|
|
|
|
|
'subrule' => 'bodydisp' |
17218
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
17219
|
|
|
|
|
|
|
bless( { |
17220
|
|
|
|
|
|
|
'argcode' => undef, |
17221
|
|
|
|
|
|
|
'expected' => undef, |
17222
|
|
|
|
|
|
|
'line' => 124, |
17223
|
|
|
|
|
|
|
'lookahead' => 0, |
17224
|
|
|
|
|
|
|
'matchrule' => 0, |
17225
|
|
|
|
|
|
|
'max' => 1, |
17226
|
|
|
|
|
|
|
'min' => 0, |
17227
|
|
|
|
|
|
|
'repspec' => '?', |
17228
|
|
|
|
|
|
|
'subrule' => 'bodylang' |
17229
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
17230
|
|
|
|
|
|
|
bless( { |
17231
|
|
|
|
|
|
|
'argcode' => undef, |
17232
|
|
|
|
|
|
|
'expected' => undef, |
17233
|
|
|
|
|
|
|
'line' => 124, |
17234
|
|
|
|
|
|
|
'lookahead' => 0, |
17235
|
|
|
|
|
|
|
'matchrule' => 0, |
17236
|
|
|
|
|
|
|
'max' => 1, |
17237
|
|
|
|
|
|
|
'min' => 0, |
17238
|
|
|
|
|
|
|
'repspec' => '?', |
17239
|
|
|
|
|
|
|
'subrule' => 'bodyextra' |
17240
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
17241
|
|
|
|
|
|
|
bless( { |
17242
|
|
|
|
|
|
|
'argcode' => undef, |
17243
|
|
|
|
|
|
|
'expected' => undef, |
17244
|
|
|
|
|
|
|
'line' => 124, |
17245
|
|
|
|
|
|
|
'lookahead' => 0, |
17246
|
|
|
|
|
|
|
'matchrule' => 0, |
17247
|
|
|
|
|
|
|
'max' => 100000000, |
17248
|
|
|
|
|
|
|
'min' => 0, |
17249
|
|
|
|
|
|
|
'repspec' => 's?', |
17250
|
|
|
|
|
|
|
'subrule' => 'bodyextensions' |
17251
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Repetition' ), |
17252
|
|
|
|
|
|
|
bless( { |
17253
|
|
|
|
|
|
|
'code' => '{ |
17254
|
|
|
|
|
|
|
$return = $item{basicfields} || {}; |
17255
|
|
|
|
|
|
|
$return->{bodytype} = \'TEXT\'; |
17256
|
|
|
|
|
|
|
take_optional_items($return, \\%item |
17257
|
|
|
|
|
|
|
, qw/textlines bodyMD5 bodydisp bodylang bodyextra/); |
17258
|
|
|
|
|
|
|
1; |
17259
|
|
|
|
|
|
|
}', |
17260
|
|
|
|
|
|
|
'hashname' => '__ACTION1__', |
17261
|
|
|
|
|
|
|
'line' => 125, |
17262
|
|
|
|
|
|
|
'lookahead' => 0 |
17263
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Action' ) |
17264
|
|
|
|
|
|
|
], |
17265
|
|
|
|
|
|
|
'line' => undef, |
17266
|
|
|
|
|
|
|
'number' => 0, |
17267
|
|
|
|
|
|
|
'patcount' => 0, |
17268
|
|
|
|
|
|
|
'strcount' => 0, |
17269
|
|
|
|
|
|
|
'uncommit' => undef |
17270
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
17271
|
|
|
|
|
|
|
], |
17272
|
|
|
|
|
|
|
'vars' => '' |
17273
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
17274
|
|
|
|
|
|
|
'to' => bless( { |
17275
|
|
|
|
|
|
|
'calls' => [ |
17276
|
|
|
|
|
|
|
'ADDRESSES' |
17277
|
|
|
|
|
|
|
], |
17278
|
|
|
|
|
|
|
'changed' => 0, |
17279
|
|
|
|
|
|
|
'impcount' => 0, |
17280
|
|
|
|
|
|
|
'line' => 104, |
17281
|
|
|
|
|
|
|
'name' => 'to', |
17282
|
|
|
|
|
|
|
'opcount' => 0, |
17283
|
|
|
|
|
|
|
'prods' => [ |
17284
|
|
|
|
|
|
|
bless( { |
17285
|
|
|
|
|
|
|
'actcount' => 0, |
17286
|
|
|
|
|
|
|
'dircount' => 0, |
17287
|
|
|
|
|
|
|
'error' => undef, |
17288
|
|
|
|
|
|
|
'items' => [ |
17289
|
|
|
|
|
|
|
bless( { |
17290
|
|
|
|
|
|
|
'argcode' => undef, |
17291
|
|
|
|
|
|
|
'implicit' => undef, |
17292
|
|
|
|
|
|
|
'line' => 104, |
17293
|
|
|
|
|
|
|
'lookahead' => 0, |
17294
|
|
|
|
|
|
|
'matchrule' => 0, |
17295
|
|
|
|
|
|
|
'subrule' => 'ADDRESSES' |
17296
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
17297
|
|
|
|
|
|
|
], |
17298
|
|
|
|
|
|
|
'line' => undef, |
17299
|
|
|
|
|
|
|
'number' => 0, |
17300
|
|
|
|
|
|
|
'patcount' => 0, |
17301
|
|
|
|
|
|
|
'strcount' => 0, |
17302
|
|
|
|
|
|
|
'uncommit' => undef |
17303
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
17304
|
|
|
|
|
|
|
], |
17305
|
|
|
|
|
|
|
'vars' => '' |
17306
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ), |
17307
|
|
|
|
|
|
|
'value' => bless( { |
17308
|
|
|
|
|
|
|
'calls' => [ |
17309
|
|
|
|
|
|
|
'NIL', |
17310
|
|
|
|
|
|
|
'NUMBER', |
17311
|
|
|
|
|
|
|
'STRING', |
17312
|
|
|
|
|
|
|
'KVPAIRS' |
17313
|
|
|
|
|
|
|
], |
17314
|
|
|
|
|
|
|
'changed' => 0, |
17315
|
|
|
|
|
|
|
'impcount' => 0, |
17316
|
|
|
|
|
|
|
'line' => 57, |
17317
|
|
|
|
|
|
|
'name' => 'value', |
17318
|
|
|
|
|
|
|
'opcount' => 0, |
17319
|
|
|
|
|
|
|
'prods' => [ |
17320
|
|
|
|
|
|
|
bless( { |
17321
|
|
|
|
|
|
|
'actcount' => 0, |
17322
|
|
|
|
|
|
|
'dircount' => 0, |
17323
|
|
|
|
|
|
|
'error' => undef, |
17324
|
|
|
|
|
|
|
'items' => [ |
17325
|
|
|
|
|
|
|
bless( { |
17326
|
|
|
|
|
|
|
'argcode' => undef, |
17327
|
|
|
|
|
|
|
'implicit' => undef, |
17328
|
|
|
|
|
|
|
'line' => 57, |
17329
|
|
|
|
|
|
|
'lookahead' => 0, |
17330
|
|
|
|
|
|
|
'matchrule' => 0, |
17331
|
|
|
|
|
|
|
'subrule' => 'NIL' |
17332
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
17333
|
|
|
|
|
|
|
], |
17334
|
|
|
|
|
|
|
'line' => undef, |
17335
|
|
|
|
|
|
|
'number' => 0, |
17336
|
|
|
|
|
|
|
'patcount' => 0, |
17337
|
|
|
|
|
|
|
'strcount' => 0, |
17338
|
|
|
|
|
|
|
'uncommit' => undef |
17339
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
17340
|
|
|
|
|
|
|
bless( { |
17341
|
|
|
|
|
|
|
'actcount' => 0, |
17342
|
|
|
|
|
|
|
'dircount' => 0, |
17343
|
|
|
|
|
|
|
'error' => undef, |
17344
|
|
|
|
|
|
|
'items' => [ |
17345
|
|
|
|
|
|
|
bless( { |
17346
|
|
|
|
|
|
|
'argcode' => undef, |
17347
|
|
|
|
|
|
|
'implicit' => undef, |
17348
|
|
|
|
|
|
|
'line' => 57, |
17349
|
|
|
|
|
|
|
'lookahead' => 0, |
17350
|
|
|
|
|
|
|
'matchrule' => 0, |
17351
|
|
|
|
|
|
|
'subrule' => 'NUMBER' |
17352
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
17353
|
|
|
|
|
|
|
], |
17354
|
|
|
|
|
|
|
'line' => 57, |
17355
|
|
|
|
|
|
|
'number' => 1, |
17356
|
|
|
|
|
|
|
'patcount' => 0, |
17357
|
|
|
|
|
|
|
'strcount' => 0, |
17358
|
|
|
|
|
|
|
'uncommit' => undef |
17359
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
17360
|
|
|
|
|
|
|
bless( { |
17361
|
|
|
|
|
|
|
'actcount' => 0, |
17362
|
|
|
|
|
|
|
'dircount' => 0, |
17363
|
|
|
|
|
|
|
'error' => undef, |
17364
|
|
|
|
|
|
|
'items' => [ |
17365
|
|
|
|
|
|
|
bless( { |
17366
|
|
|
|
|
|
|
'argcode' => undef, |
17367
|
|
|
|
|
|
|
'implicit' => undef, |
17368
|
|
|
|
|
|
|
'line' => 57, |
17369
|
|
|
|
|
|
|
'lookahead' => 0, |
17370
|
|
|
|
|
|
|
'matchrule' => 0, |
17371
|
|
|
|
|
|
|
'subrule' => 'STRING' |
17372
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
17373
|
|
|
|
|
|
|
], |
17374
|
|
|
|
|
|
|
'line' => 57, |
17375
|
|
|
|
|
|
|
'number' => 2, |
17376
|
|
|
|
|
|
|
'patcount' => 0, |
17377
|
|
|
|
|
|
|
'strcount' => 0, |
17378
|
|
|
|
|
|
|
'uncommit' => undef |
17379
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ), |
17380
|
|
|
|
|
|
|
bless( { |
17381
|
|
|
|
|
|
|
'actcount' => 0, |
17382
|
|
|
|
|
|
|
'dircount' => 0, |
17383
|
|
|
|
|
|
|
'error' => undef, |
17384
|
|
|
|
|
|
|
'items' => [ |
17385
|
|
|
|
|
|
|
bless( { |
17386
|
|
|
|
|
|
|
'argcode' => undef, |
17387
|
|
|
|
|
|
|
'implicit' => undef, |
17388
|
|
|
|
|
|
|
'line' => 57, |
17389
|
|
|
|
|
|
|
'lookahead' => 0, |
17390
|
|
|
|
|
|
|
'matchrule' => 0, |
17391
|
|
|
|
|
|
|
'subrule' => 'KVPAIRS' |
17392
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Subrule' ) |
17393
|
|
|
|
|
|
|
], |
17394
|
|
|
|
|
|
|
'line' => 57, |
17395
|
|
|
|
|
|
|
'number' => 3, |
17396
|
|
|
|
|
|
|
'patcount' => 0, |
17397
|
|
|
|
|
|
|
'strcount' => 0, |
17398
|
|
|
|
|
|
|
'uncommit' => undef |
17399
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Production' ) |
17400
|
|
|
|
|
|
|
], |
17401
|
|
|
|
|
|
|
'vars' => '' |
17402
|
|
|
|
|
|
|
}, 'Parse::RecDescent::Rule' ) |
17403
|
|
|
|
|
|
|
}, |
17404
|
|
|
|
|
|
|
'startcode' => '' |
17405
|
|
|
|
|
|
|
}, 'Parse::RecDescent' ); |
17406
|
|
|
|
|
|
|
} |