~ubuntu-branches/ubuntu/maverick/samba/maverick-security

« back to all changes in this revision

Viewing changes to source/pidl/lib/Parse/Pidl/Expr.pm

  • Committer: Bazaar Package Importer
  • Author(s): Steve Langasek
  • Date: 2009-03-03 22:02:23 UTC
  • mfrom: (0.28.1 squeeze)
  • Revision ID: james.westby@ubuntu.com-20090303220223-3bdlm2d9fwx1p1ye
Tags: 2:3.3.1-1ubuntu1
* Merge from Debian unstable (LP: #337094), remaining changes:
  + debian/patches/VERSION.patch:
    - setup SAMBA_VERSION_SUFFIX to Ubuntu.
  + debian/smb.conf:
    - add "(Samba, Ubuntu)" to server string.
    - comment out the default [homes] share, and add a comment about
      "valid users = %S" to show users how to restrict access to
      \\server\username to only username.
    - Set 'usershare allow guests', so that usershare admins are 
      allowed to create public shares in addition to authenticated
      ones.
    - add map to guest = Bad user, maps bad username to guest access. 
  + debian/samba-common.config:
    - Do not change priority to high if dhclient3 is installed.
    - Use priority medium instead of high for the workgroup question.
  + debian/mksambapasswd.awk:
    - Do not add user with UID less than 1000 to smbpasswd.
  + debian/control:
    - Make libwbclient0 replace/conflict with hardy's likewise-open.
    - Don't build against ctdb.
  + debian/rules:
    - enable "native" PIE hardening.
  + Add ufw integration:
    - Created debian/samba.ufw.profile
    - debian/rules, debian/samba.dirs, debian/samba.files: install
      profile
    - debian/control: have samba suggest ufw
* Dropped changes, merged in Debian:
  + debian/libpam-smbpass.pam-config, debian/libpam-smbpass.postinst,
    debian/libpam-smbpass.prerm, debian/libpam-smbpass.files,
    debian/rules:
    - Make libpam-smbpasswd depend on libpam-runtime to allow 
      libpam-smbpasswd for auto-configuration.
  + debian/control:
    - Provide a config block for the new PAM framework to auto-configure
      itself
  + debian/samba.postinst:
    - When populating the new sambashare group, it is not an error
      if the user simply does not exist; test for this case and let
      the install continue instead of aborting.
  + debian/winbind.files:
    - include additional files

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
####################################################################
 
2
#
 
3
#    This file was generated using Parse::Yapp version 1.05.
 
4
#
 
5
#        Don't edit this file, use source file instead.
 
6
#
 
7
#             ANY CHANGE MADE HERE WILL BE LOST !
 
8
#
 
9
####################################################################
 
10
package Parse::Pidl::Expr;
 
11
use vars qw ( @ISA );
 
12
use strict;
 
13
 
 
14
@ISA= qw ( Parse::Yapp::Driver );
 
15
use Parse::Yapp::Driver;
 
16
 
 
17
 
 
18
 
 
19
sub new {
 
20
        my($class)=shift;
 
21
        ref($class)
 
22
    and $class=ref($class);
 
23
 
 
24
    my($self)=$class->SUPER::new( yyversion => '1.05',
 
25
                                  yystates =>
 
26
[
 
27
        {#State 0
 
28
                ACTIONS => {
 
29
                        "-" => 1,
 
30
                        "~" => 3,
 
31
                        "&" => 4,
 
32
                        'NUM' => 5,
 
33
                        'TEXT' => 6,
 
34
                        "(" => 7,
 
35
                        "!" => 8,
 
36
                        "*" => 9,
 
37
                        'VAR' => 10
 
38
                },
 
39
                GOTOS => {
 
40
                        'exp' => 2,
 
41
                        'var' => 11,
 
42
                        'func' => 12,
 
43
                        'possible_pointer' => 13
 
44
                }
 
45
        },
 
46
        {#State 1
 
47
                ACTIONS => {
 
48
                        "-" => 1,
 
49
                        "~" => 3,
 
50
                        "&" => 4,
 
51
                        'TEXT' => 6,
 
52
                        'NUM' => 5,
 
53
                        "(" => 7,
 
54
                        "!" => 8,
 
55
                        "*" => 9,
 
56
                        'VAR' => 10
 
57
                },
 
58
                GOTOS => {
 
59
                        'exp' => 14,
 
60
                        'var' => 11,
 
61
                        'func' => 12,
 
62
                        'possible_pointer' => 13
 
63
                }
 
64
        },
 
65
        {#State 2
 
66
                ACTIONS => {
 
67
                        '' => 16,
 
68
                        "-" => 15,
 
69
                        "<" => 17,
 
70
                        "+" => 18,
 
71
                        "%" => 19,
 
72
                        "==" => 20,
 
73
                        "^" => 21,
 
74
                        "*" => 22,
 
75
                        ">>" => 23,
 
76
                        "!=" => 24,
 
77
                        "?" => 25,
 
78
                        "||" => 26,
 
79
                        "&&" => 27,
 
80
                        "&" => 28,
 
81
                        "/" => 29,
 
82
                        "|" => 30,
 
83
                        "<<" => 32,
 
84
                        "=>" => 31,
 
85
                        "<=" => 33,
 
86
                        ">" => 34
 
87
                }
 
88
        },
 
89
        {#State 3
 
90
                ACTIONS => {
 
91
                        "-" => 1,
 
92
                        "~" => 3,
 
93
                        "&" => 4,
 
94
                        'TEXT' => 6,
 
95
                        'NUM' => 5,
 
96
                        "!" => 8,
 
97
                        "(" => 7,
 
98
                        "*" => 9,
 
99
                        'VAR' => 10
 
100
                },
 
101
                GOTOS => {
 
102
                        'exp' => 35,
 
103
                        'var' => 11,
 
104
                        'func' => 12,
 
105
                        'possible_pointer' => 13
 
106
                }
 
107
        },
 
108
        {#State 4
 
109
                ACTIONS => {
 
110
                        "-" => 1,
 
111
                        "~" => 3,
 
112
                        "&" => 4,
 
113
                        'TEXT' => 6,
 
114
                        'NUM' => 5,
 
115
                        "!" => 8,
 
116
                        "(" => 7,
 
117
                        "*" => 9,
 
118
                        'VAR' => 10
 
119
                },
 
120
                GOTOS => {
 
121
                        'exp' => 36,
 
122
                        'var' => 11,
 
123
                        'func' => 12,
 
124
                        'possible_pointer' => 13
 
125
                }
 
126
        },
 
127
        {#State 5
 
128
                DEFAULT => -1
 
129
        },
 
130
        {#State 6
 
131
                DEFAULT => -2
 
132
        },
 
133
        {#State 7
 
134
                ACTIONS => {
 
135
                        "-" => 1,
 
136
                        "~" => 3,
 
137
                        "&" => 4,
 
138
                        'TEXT' => 6,
 
139
                        'NUM' => 5,
 
140
                        "!" => 8,
 
141
                        "(" => 7,
 
142
                        "*" => 9,
 
143
                        'VAR' => 10
 
144
                },
 
145
                GOTOS => {
 
146
                        'exp' => 38,
 
147
                        'var' => 37,
 
148
                        'func' => 12,
 
149
                        'possible_pointer' => 13
 
150
                }
 
151
        },
 
152
        {#State 8
 
153
                ACTIONS => {
 
154
                        "-" => 1,
 
155
                        "~" => 3,
 
156
                        "&" => 4,
 
157
                        'TEXT' => 6,
 
158
                        'NUM' => 5,
 
159
                        "!" => 8,
 
160
                        "(" => 7,
 
161
                        "*" => 9,
 
162
                        'VAR' => 10
 
163
                },
 
164
                GOTOS => {
 
165
                        'exp' => 39,
 
166
                        'var' => 11,
 
167
                        'func' => 12,
 
168
                        'possible_pointer' => 13
 
169
                }
 
170
        },
 
171
        {#State 9
 
172
                ACTIONS => {
 
173
                        "*" => 9,
 
174
                        'VAR' => 41
 
175
                },
 
176
                GOTOS => {
 
177
                        'possible_pointer' => 40
 
178
                }
 
179
        },
 
180
        {#State 10
 
181
                ACTIONS => {
 
182
                        "(" => 42
 
183
                },
 
184
                DEFAULT => -30
 
185
        },
 
186
        {#State 11
 
187
                ACTIONS => {
 
188
                        "->" => 43,
 
189
                        "." => 44
 
190
                },
 
191
                DEFAULT => -4
 
192
        },
 
193
        {#State 12
 
194
                DEFAULT => -3
 
195
        },
 
196
        {#State 13
 
197
                DEFAULT => -32
 
198
        },
 
199
        {#State 14
 
200
                ACTIONS => {
 
201
                        "^" => 21,
 
202
                        "=>" => 31,
 
203
                        "<=" => 33
 
204
                },
 
205
                DEFAULT => -26
 
206
        },
 
207
        {#State 15
 
208
                ACTIONS => {
 
209
                        "-" => 1,
 
210
                        "~" => 3,
 
211
                        "&" => 4,
 
212
                        'TEXT' => 6,
 
213
                        'NUM' => 5,
 
214
                        "!" => 8,
 
215
                        "(" => 7,
 
216
                        "*" => 9,
 
217
                        'VAR' => 10
 
218
                },
 
219
                GOTOS => {
 
220
                        'exp' => 45,
 
221
                        'var' => 11,
 
222
                        'func' => 12,
 
223
                        'possible_pointer' => 13
 
224
                }
 
225
        },
 
226
        {#State 16
 
227
                DEFAULT => 0
 
228
        },
 
229
        {#State 17
 
230
                ACTIONS => {
 
231
                        "-" => 1,
 
232
                        "~" => 3,
 
233
                        "&" => 4,
 
234
                        'TEXT' => 6,
 
235
                        'NUM' => 5,
 
236
                        "!" => 8,
 
237
                        "(" => 7,
 
238
                        "*" => 9,
 
239
                        'VAR' => 10
 
240
                },
 
241
                GOTOS => {
 
242
                        'exp' => 46,
 
243
                        'var' => 11,
 
244
                        'func' => 12,
 
245
                        'possible_pointer' => 13
 
246
                }
 
247
        },
 
248
        {#State 18
 
249
                ACTIONS => {
 
250
                        "-" => 1,
 
251
                        "~" => 3,
 
252
                        "&" => 4,
 
253
                        'TEXT' => 6,
 
254
                        'NUM' => 5,
 
255
                        "!" => 8,
 
256
                        "(" => 7,
 
257
                        "*" => 9,
 
258
                        'VAR' => 10
 
259
                },
 
260
                GOTOS => {
 
261
                        'exp' => 47,
 
262
                        'var' => 11,
 
263
                        'func' => 12,
 
264
                        'possible_pointer' => 13
 
265
                }
 
266
        },
 
267
        {#State 19
 
268
                ACTIONS => {
 
269
                        "-" => 1,
 
270
                        "~" => 3,
 
271
                        "&" => 4,
 
272
                        'TEXT' => 6,
 
273
                        'NUM' => 5,
 
274
                        "!" => 8,
 
275
                        "(" => 7,
 
276
                        "*" => 9,
 
277
                        'VAR' => 10
 
278
                },
 
279
                GOTOS => {
 
280
                        'exp' => 48,
 
281
                        'var' => 11,
 
282
                        'func' => 12,
 
283
                        'possible_pointer' => 13
 
284
                }
 
285
        },
 
286
        {#State 20
 
287
                ACTIONS => {
 
288
                        "-" => 1,
 
289
                        "~" => 3,
 
290
                        "&" => 4,
 
291
                        'TEXT' => 6,
 
292
                        'NUM' => 5,
 
293
                        "!" => 8,
 
294
                        "(" => 7,
 
295
                        "*" => 9,
 
296
                        'VAR' => 10
 
297
                },
 
298
                GOTOS => {
 
299
                        'exp' => 49,
 
300
                        'var' => 11,
 
301
                        'func' => 12,
 
302
                        'possible_pointer' => 13
 
303
                }
 
304
        },
 
305
        {#State 21
 
306
                ACTIONS => {
 
307
                        "-" => 1,
 
308
                        "~" => 3,
 
309
                        "&" => 4,
 
310
                        'TEXT' => 6,
 
311
                        'NUM' => 5,
 
312
                        "!" => 8,
 
313
                        "(" => 7,
 
314
                        "*" => 9,
 
315
                        'VAR' => 10
 
316
                },
 
317
                GOTOS => {
 
318
                        'exp' => 50,
 
319
                        'var' => 11,
 
320
                        'func' => 12,
 
321
                        'possible_pointer' => 13
 
322
                }
 
323
        },
 
324
        {#State 22
 
325
                ACTIONS => {
 
326
                        "-" => 1,
 
327
                        "~" => 3,
 
328
                        "&" => 4,
 
329
                        'TEXT' => 6,
 
330
                        'NUM' => 5,
 
331
                        "!" => 8,
 
332
                        "(" => 7,
 
333
                        "*" => 9,
 
334
                        'VAR' => 10
 
335
                },
 
336
                GOTOS => {
 
337
                        'exp' => 51,
 
338
                        'var' => 11,
 
339
                        'func' => 12,
 
340
                        'possible_pointer' => 13
 
341
                }
 
342
        },
 
343
        {#State 23
 
344
                ACTIONS => {
 
345
                        "-" => 1,
 
346
                        "~" => 3,
 
347
                        "&" => 4,
 
348
                        'TEXT' => 6,
 
349
                        'NUM' => 5,
 
350
                        "!" => 8,
 
351
                        "(" => 7,
 
352
                        "*" => 9,
 
353
                        'VAR' => 10
 
354
                },
 
355
                GOTOS => {
 
356
                        'exp' => 52,
 
357
                        'var' => 11,
 
358
                        'func' => 12,
 
359
                        'possible_pointer' => 13
 
360
                }
 
361
        },
 
362
        {#State 24
 
363
                ACTIONS => {
 
364
                        "-" => 1,
 
365
                        "~" => 3,
 
366
                        "&" => 4,
 
367
                        'TEXT' => 6,
 
368
                        'NUM' => 5,
 
369
                        "!" => 8,
 
370
                        "(" => 7,
 
371
                        "*" => 9,
 
372
                        'VAR' => 10
 
373
                },
 
374
                GOTOS => {
 
375
                        'exp' => 53,
 
376
                        'var' => 11,
 
377
                        'func' => 12,
 
378
                        'possible_pointer' => 13
 
379
                }
 
380
        },
 
381
        {#State 25
 
382
                ACTIONS => {
 
383
                        "-" => 1,
 
384
                        "~" => 3,
 
385
                        "&" => 4,
 
386
                        'TEXT' => 6,
 
387
                        'NUM' => 5,
 
388
                        "!" => 8,
 
389
                        "(" => 7,
 
390
                        "*" => 9,
 
391
                        'VAR' => 10
 
392
                },
 
393
                GOTOS => {
 
394
                        'exp' => 54,
 
395
                        'var' => 11,
 
396
                        'func' => 12,
 
397
                        'possible_pointer' => 13
 
398
                }
 
399
        },
 
400
        {#State 26
 
401
                ACTIONS => {
 
402
                        "-" => 1,
 
403
                        "~" => 3,
 
404
                        "&" => 4,
 
405
                        'TEXT' => 6,
 
406
                        'NUM' => 5,
 
407
                        "!" => 8,
 
408
                        "(" => 7,
 
409
                        "*" => 9,
 
410
                        'VAR' => 10
 
411
                },
 
412
                GOTOS => {
 
413
                        'exp' => 55,
 
414
                        'var' => 11,
 
415
                        'func' => 12,
 
416
                        'possible_pointer' => 13
 
417
                }
 
418
        },
 
419
        {#State 27
 
420
                ACTIONS => {
 
421
                        "-" => 1,
 
422
                        "~" => 3,
 
423
                        "&" => 4,
 
424
                        'TEXT' => 6,
 
425
                        'NUM' => 5,
 
426
                        "!" => 8,
 
427
                        "(" => 7,
 
428
                        "*" => 9,
 
429
                        'VAR' => 10
 
430
                },
 
431
                GOTOS => {
 
432
                        'exp' => 56,
 
433
                        'var' => 11,
 
434
                        'func' => 12,
 
435
                        'possible_pointer' => 13
 
436
                }
 
437
        },
 
438
        {#State 28
 
439
                ACTIONS => {
 
440
                        "-" => 1,
 
441
                        "~" => 3,
 
442
                        "&" => 4,
 
443
                        'TEXT' => 6,
 
444
                        'NUM' => 5,
 
445
                        "!" => 8,
 
446
                        "(" => 7,
 
447
                        "*" => 9,
 
448
                        'VAR' => 10
 
449
                },
 
450
                GOTOS => {
 
451
                        'exp' => 57,
 
452
                        'var' => 11,
 
453
                        'func' => 12,
 
454
                        'possible_pointer' => 13
 
455
                }
 
456
        },
 
457
        {#State 29
 
458
                ACTIONS => {
 
459
                        "-" => 1,
 
460
                        "~" => 3,
 
461
                        "&" => 4,
 
462
                        'TEXT' => 6,
 
463
                        'NUM' => 5,
 
464
                        "!" => 8,
 
465
                        "(" => 7,
 
466
                        "*" => 9,
 
467
                        'VAR' => 10
 
468
                },
 
469
                GOTOS => {
 
470
                        'exp' => 58,
 
471
                        'var' => 11,
 
472
                        'func' => 12,
 
473
                        'possible_pointer' => 13
 
474
                }
 
475
        },
 
476
        {#State 30
 
477
                ACTIONS => {
 
478
                        "-" => 1,
 
479
                        "~" => 3,
 
480
                        "&" => 4,
 
481
                        'TEXT' => 6,
 
482
                        'NUM' => 5,
 
483
                        "!" => 8,
 
484
                        "(" => 7,
 
485
                        "*" => 9,
 
486
                        'VAR' => 10
 
487
                },
 
488
                GOTOS => {
 
489
                        'exp' => 59,
 
490
                        'var' => 11,
 
491
                        'func' => 12,
 
492
                        'possible_pointer' => 13
 
493
                }
 
494
        },
 
495
        {#State 31
 
496
                ACTIONS => {
 
497
                        "-" => 1,
 
498
                        "~" => 3,
 
499
                        "&" => 4,
 
500
                        'TEXT' => 6,
 
501
                        'NUM' => 5,
 
502
                        "!" => 8,
 
503
                        "(" => 7,
 
504
                        "*" => 9,
 
505
                        'VAR' => 10
 
506
                },
 
507
                GOTOS => {
 
508
                        'exp' => 60,
 
509
                        'var' => 11,
 
510
                        'func' => 12,
 
511
                        'possible_pointer' => 13
 
512
                }
 
513
        },
 
514
        {#State 32
 
515
                ACTIONS => {
 
516
                        "-" => 1,
 
517
                        "~" => 3,
 
518
                        "&" => 4,
 
519
                        'TEXT' => 6,
 
520
                        'NUM' => 5,
 
521
                        "!" => 8,
 
522
                        "(" => 7,
 
523
                        "*" => 9,
 
524
                        'VAR' => 10
 
525
                },
 
526
                GOTOS => {
 
527
                        'exp' => 61,
 
528
                        'var' => 11,
 
529
                        'func' => 12,
 
530
                        'possible_pointer' => 13
 
531
                }
 
532
        },
 
533
        {#State 33
 
534
                ACTIONS => {
 
535
                        "-" => 1,
 
536
                        "~" => 3,
 
537
                        "&" => 4,
 
538
                        'TEXT' => 6,
 
539
                        'NUM' => 5,
 
540
                        "!" => 8,
 
541
                        "(" => 7,
 
542
                        "*" => 9,
 
543
                        'VAR' => 10
 
544
                },
 
545
                GOTOS => {
 
546
                        'exp' => 62,
 
547
                        'var' => 11,
 
548
                        'func' => 12,
 
549
                        'possible_pointer' => 13
 
550
                }
 
551
        },
 
552
        {#State 34
 
553
                ACTIONS => {
 
554
                        "-" => 1,
 
555
                        "~" => 3,
 
556
                        "&" => 4,
 
557
                        'TEXT' => 6,
 
558
                        'NUM' => 5,
 
559
                        "!" => 8,
 
560
                        "(" => 7,
 
561
                        "*" => 9,
 
562
                        'VAR' => 10
 
563
                },
 
564
                GOTOS => {
 
565
                        'exp' => 63,
 
566
                        'var' => 11,
 
567
                        'func' => 12,
 
568
                        'possible_pointer' => 13
 
569
                }
 
570
        },
 
571
        {#State 35
 
572
                ACTIONS => {
 
573
                        "^" => 21,
 
574
                        "=>" => 31,
 
575
                        "<=" => 33
 
576
                },
 
577
                DEFAULT => -5
 
578
        },
 
579
        {#State 36
 
580
                ACTIONS => {
 
581
                        "^" => 21,
 
582
                        "=>" => 31,
 
583
                        "<=" => 33
 
584
                },
 
585
                DEFAULT => -27
 
586
        },
 
587
        {#State 37
 
588
                ACTIONS => {
 
589
                        ")" => 64,
 
590
                        "->" => 43,
 
591
                        "." => 44
 
592
                },
 
593
                DEFAULT => -4
 
594
        },
 
595
        {#State 38
 
596
                ACTIONS => {
 
597
                        "-" => 15,
 
598
                        "<" => 17,
 
599
                        "+" => 18,
 
600
                        "%" => 19,
 
601
                        "==" => 20,
 
602
                        "^" => 21,
 
603
                        "*" => 22,
 
604
                        ")" => 65,
 
605
                        ">>" => 23,
 
606
                        "!=" => 24,
 
607
                        "?" => 25,
 
608
                        "&&" => 27,
 
609
                        "||" => 26,
 
610
                        "&" => 28,
 
611
                        "/" => 29,
 
612
                        "|" => 30,
 
613
                        "=>" => 31,
 
614
                        "<<" => 32,
 
615
                        "<=" => 33,
 
616
                        ">" => 34
 
617
                }
 
618
        },
 
619
        {#State 39
 
620
                ACTIONS => {
 
621
                        "-" => 15,
 
622
                        "<" => 17,
 
623
                        "+" => 18,
 
624
                        "%" => 19,
 
625
                        "==" => 20,
 
626
                        "^" => 21,
 
627
                        "*" => 22,
 
628
                        ">>" => 23,
 
629
                        "!=" => 24,
 
630
                        "?" => 25,
 
631
                        "&&" => 27,
 
632
                        "||" => 26,
 
633
                        "&" => 28,
 
634
                        "/" => 29,
 
635
                        "|" => 30,
 
636
                        "=>" => 31,
 
637
                        "<<" => 32,
 
638
                        "<=" => 33,
 
639
                        ">" => 34
 
640
                },
 
641
                DEFAULT => -24
 
642
        },
 
643
        {#State 40
 
644
                DEFAULT => -31
 
645
        },
 
646
        {#State 41
 
647
                DEFAULT => -30
 
648
        },
 
649
        {#State 42
 
650
                ACTIONS => {
 
651
                        "-" => 1,
 
652
                        "~" => 3,
 
653
                        "&" => 4,
 
654
                        'TEXT' => 6,
 
655
                        'NUM' => 5,
 
656
                        "!" => 8,
 
657
                        "(" => 7,
 
658
                        "*" => 9,
 
659
                        'VAR' => 10
 
660
                },
 
661
                DEFAULT => -37,
 
662
                GOTOS => {
 
663
                        'exp' => 69,
 
664
                        'var' => 11,
 
665
                        'args' => 66,
 
666
                        'func' => 12,
 
667
                        'opt_args' => 70,
 
668
                        'exp_or_possible_pointer' => 67,
 
669
                        'possible_pointer' => 68
 
670
                }
 
671
        },
 
672
        {#State 43
 
673
                ACTIONS => {
 
674
                        'VAR' => 71
 
675
                }
 
676
        },
 
677
        {#State 44
 
678
                ACTIONS => {
 
679
                        'VAR' => 72
 
680
                }
 
681
        },
 
682
        {#State 45
 
683
                ACTIONS => {
 
684
                        "<" => 17,
 
685
                        "==" => 20,
 
686
                        "^" => 21,
 
687
                        ">>" => 23,
 
688
                        "!=" => 24,
 
689
                        "?" => 25,
 
690
                        "&&" => 27,
 
691
                        "||" => 26,
 
692
                        "&" => 28,
 
693
                        "|" => 30,
 
694
                        "=>" => 31,
 
695
                        "<<" => 32,
 
696
                        "<=" => 33,
 
697
                        ">" => 34
 
698
                },
 
699
                DEFAULT => -7
 
700
        },
 
701
        {#State 46
 
702
                ACTIONS => {
 
703
                        "==" => 20,
 
704
                        "^" => 21,
 
705
                        "!=" => 24,
 
706
                        "?" => 25,
 
707
                        "&&" => 27,
 
708
                        "||" => 26,
 
709
                        "&" => 28,
 
710
                        "|" => 30,
 
711
                        "=>" => 31,
 
712
                        "<=" => 33
 
713
                },
 
714
                DEFAULT => -10
 
715
        },
 
716
        {#State 47
 
717
                ACTIONS => {
 
718
                        "<" => 17,
 
719
                        "==" => 20,
 
720
                        "^" => 21,
 
721
                        ">>" => 23,
 
722
                        "!=" => 24,
 
723
                        "?" => 25,
 
724
                        "&&" => 27,
 
725
                        "||" => 26,
 
726
                        "&" => 28,
 
727
                        "|" => 30,
 
728
                        "=>" => 31,
 
729
                        "<<" => 32,
 
730
                        "<=" => 33,
 
731
                        ">" => 34
 
732
                },
 
733
                DEFAULT => -6
 
734
        },
 
735
        {#State 48
 
736
                ACTIONS => {
 
737
                        "-" => 15,
 
738
                        "<" => 17,
 
739
                        "+" => 18,
 
740
                        "==" => 20,
 
741
                        "^" => 21,
 
742
                        ">>" => 23,
 
743
                        "!=" => 24,
 
744
                        "?" => 25,
 
745
                        "&&" => 27,
 
746
                        "||" => 26,
 
747
                        "&" => 28,
 
748
                        "|" => 30,
 
749
                        "=>" => 31,
 
750
                        "<<" => 32,
 
751
                        "<=" => 33,
 
752
                        ">" => 34
 
753
                },
 
754
                DEFAULT => -9
 
755
        },
 
756
        {#State 49
 
757
                ACTIONS => {
 
758
                        "^" => 21,
 
759
                        "?" => 25,
 
760
                        "&&" => 27,
 
761
                        "||" => 26,
 
762
                        "&" => 28,
 
763
                        "|" => 30,
 
764
                        "=>" => 31,
 
765
                        "<=" => 33
 
766
                },
 
767
                DEFAULT => -13
 
768
        },
 
769
        {#State 50
 
770
                ACTIONS => {
 
771
                        "-" => 15,
 
772
                        "<" => 17,
 
773
                        "+" => 18,
 
774
                        "%" => 19,
 
775
                        "==" => 20,
 
776
                        "^" => 21,
 
777
                        "*" => 22,
 
778
                        ">>" => 23,
 
779
                        "!=" => 24,
 
780
                        "?" => 25,
 
781
                        "&&" => 27,
 
782
                        "||" => 26,
 
783
                        "&" => 28,
 
784
                        "/" => 29,
 
785
                        "|" => 30,
 
786
                        "=>" => 31,
 
787
                        "<<" => 32,
 
788
                        "<=" => 33,
 
789
                        ">" => 34
 
790
                },
 
791
                DEFAULT => -28
 
792
        },
 
793
        {#State 51
 
794
                ACTIONS => {
 
795
                        "-" => 15,
 
796
                        "<" => 17,
 
797
                        "+" => 18,
 
798
                        "==" => 20,
 
799
                        "^" => 21,
 
800
                        ">>" => 23,
 
801
                        "!=" => 24,
 
802
                        "?" => 25,
 
803
                        "&&" => 27,
 
804
                        "||" => 26,
 
805
                        "&" => 28,
 
806
                        "|" => 30,
 
807
                        "=>" => 31,
 
808
                        "<<" => 32,
 
809
                        "<=" => 33,
 
810
                        ">" => 34
 
811
                },
 
812
                DEFAULT => -8
 
813
        },
 
814
        {#State 52
 
815
                ACTIONS => {
 
816
                        "<" => 17,
 
817
                        "==" => 20,
 
818
                        "^" => 21,
 
819
                        "!=" => 24,
 
820
                        "?" => 25,
 
821
                        "&&" => 27,
 
822
                        "||" => 26,
 
823
                        "&" => 28,
 
824
                        "|" => 30,
 
825
                        "=>" => 31,
 
826
                        "<=" => 33,
 
827
                        ">" => 34
 
828
                },
 
829
                DEFAULT => -17
 
830
        },
 
831
        {#State 53
 
832
                ACTIONS => {
 
833
                        "^" => 21,
 
834
                        "?" => 25,
 
835
                        "&&" => 27,
 
836
                        "||" => 26,
 
837
                        "&" => 28,
 
838
                        "|" => 30,
 
839
                        "=>" => 31,
 
840
                        "<=" => 33
 
841
                },
 
842
                DEFAULT => -18
 
843
        },
 
844
        {#State 54
 
845
                ACTIONS => {
 
846
                        ":" => 73,
 
847
                        "-" => 15,
 
848
                        "<" => 17,
 
849
                        "+" => 18,
 
850
                        "%" => 19,
 
851
                        "==" => 20,
 
852
                        "^" => 21,
 
853
                        "*" => 22,
 
854
                        ">>" => 23,
 
855
                        "!=" => 24,
 
856
                        "?" => 25,
 
857
                        "&&" => 27,
 
858
                        "||" => 26,
 
859
                        "&" => 28,
 
860
                        "/" => 29,
 
861
                        "|" => 30,
 
862
                        "=>" => 31,
 
863
                        "<<" => 32,
 
864
                        "<=" => 33,
 
865
                        ">" => 34
 
866
                }
 
867
        },
 
868
        {#State 55
 
869
                ACTIONS => {
 
870
                        "^" => 21,
 
871
                        "?" => 25,
 
872
                        "=>" => 31,
 
873
                        "<=" => 33
 
874
                },
 
875
                DEFAULT => -19
 
876
        },
 
877
        {#State 56
 
878
                ACTIONS => {
 
879
                        "^" => 21,
 
880
                        "?" => 25,
 
881
                        "||" => 26,
 
882
                        "=>" => 31,
 
883
                        "<=" => 33
 
884
                },
 
885
                DEFAULT => -20
 
886
        },
 
887
        {#State 57
 
888
                ACTIONS => {
 
889
                        "^" => 21,
 
890
                        "?" => 25,
 
891
                        "&&" => 27,
 
892
                        "||" => 26,
 
893
                        "|" => 30,
 
894
                        "=>" => 31,
 
895
                        "<=" => 33
 
896
                },
 
897
                DEFAULT => -21
 
898
        },
 
899
        {#State 58
 
900
                ACTIONS => {
 
901
                        "-" => 15,
 
902
                        "<" => 17,
 
903
                        "+" => 18,
 
904
                        "==" => 20,
 
905
                        "^" => 21,
 
906
                        ">>" => 23,
 
907
                        "!=" => 24,
 
908
                        "?" => 25,
 
909
                        "&&" => 27,
 
910
                        "||" => 26,
 
911
                        "&" => 28,
 
912
                        "|" => 30,
 
913
                        "=>" => 31,
 
914
                        "<<" => 32,
 
915
                        "<=" => 33,
 
916
                        ">" => 34
 
917
                },
 
918
                DEFAULT => -25
 
919
        },
 
920
        {#State 59
 
921
                ACTIONS => {
 
922
                        "^" => 21,
 
923
                        "?" => 25,
 
924
                        "&&" => 27,
 
925
                        "||" => 26,
 
926
                        "=>" => 31,
 
927
                        "<=" => 33
 
928
                },
 
929
                DEFAULT => -12
 
930
        },
 
931
        {#State 60
 
932
                ACTIONS => {
 
933
                        "-" => 15,
 
934
                        "<" => 17,
 
935
                        "+" => 18,
 
936
                        "%" => 19,
 
937
                        "==" => 20,
 
938
                        "^" => 21,
 
939
                        "*" => 22,
 
940
                        ">>" => 23,
 
941
                        "!=" => 24,
 
942
                        "?" => 25,
 
943
                        "&&" => 27,
 
944
                        "||" => 26,
 
945
                        "&" => 28,
 
946
                        "/" => 29,
 
947
                        "|" => 30,
 
948
                        "=>" => 31,
 
949
                        "<<" => 32,
 
950
                        "<=" => 33,
 
951
                        ">" => 34
 
952
                },
 
953
                DEFAULT => -15
 
954
        },
 
955
        {#State 61
 
956
                ACTIONS => {
 
957
                        "<" => 17,
 
958
                        "==" => 20,
 
959
                        "^" => 21,
 
960
                        "!=" => 24,
 
961
                        "?" => 25,
 
962
                        "&&" => 27,
 
963
                        "||" => 26,
 
964
                        "&" => 28,
 
965
                        "|" => 30,
 
966
                        "=>" => 31,
 
967
                        "<=" => 33,
 
968
                        ">" => 34
 
969
                },
 
970
                DEFAULT => -16
 
971
        },
 
972
        {#State 62
 
973
                ACTIONS => {
 
974
                        "-" => 15,
 
975
                        "<" => 17,
 
976
                        "+" => 18,
 
977
                        "%" => 19,
 
978
                        "==" => 20,
 
979
                        "^" => 21,
 
980
                        "*" => 22,
 
981
                        ">>" => 23,
 
982
                        "!=" => 24,
 
983
                        "?" => 25,
 
984
                        "&&" => 27,
 
985
                        "||" => 26,
 
986
                        "&" => 28,
 
987
                        "/" => 29,
 
988
                        "|" => 30,
 
989
                        "=>" => 31,
 
990
                        "<<" => 32,
 
991
                        "<=" => 33,
 
992
                        ">" => 34
 
993
                },
 
994
                DEFAULT => -14
 
995
        },
 
996
        {#State 63
 
997
                ACTIONS => {
 
998
                        "==" => 20,
 
999
                        "^" => 21,
 
1000
                        "!=" => 24,
 
1001
                        "?" => 25,
 
1002
                        "&&" => 27,
 
1003
                        "||" => 26,
 
1004
                        "&" => 28,
 
1005
                        "|" => 30,
 
1006
                        "=>" => 31,
 
1007
                        "<=" => 33
 
1008
                },
 
1009
                DEFAULT => -11
 
1010
        },
 
1011
        {#State 64
 
1012
                DEFAULT => -34
 
1013
        },
 
1014
        {#State 65
 
1015
                DEFAULT => -29
 
1016
        },
 
1017
        {#State 66
 
1018
                DEFAULT => -38
 
1019
        },
 
1020
        {#State 67
 
1021
                ACTIONS => {
 
1022
                        "," => 74
 
1023
                },
 
1024
                DEFAULT => -41
 
1025
        },
 
1026
        {#State 68
 
1027
                DEFAULT => -32
 
1028
        },
 
1029
        {#State 69
 
1030
                ACTIONS => {
 
1031
                        "-" => 15,
 
1032
                        "<" => 17,
 
1033
                        "+" => 18,
 
1034
                        "%" => 19,
 
1035
                        "==" => 20,
 
1036
                        "^" => 21,
 
1037
                        "*" => 22,
 
1038
                        ">>" => 23,
 
1039
                        "!=" => 24,
 
1040
                        "?" => 25,
 
1041
                        "&&" => 27,
 
1042
                        "||" => 26,
 
1043
                        "&" => 28,
 
1044
                        "/" => 29,
 
1045
                        "|" => 30,
 
1046
                        "=>" => 31,
 
1047
                        "<<" => 32,
 
1048
                        "<=" => 33,
 
1049
                        ">" => 34
 
1050
                },
 
1051
                DEFAULT => -39
 
1052
        },
 
1053
        {#State 70
 
1054
                ACTIONS => {
 
1055
                        ")" => 75
 
1056
                }
 
1057
        },
 
1058
        {#State 71
 
1059
                DEFAULT => -35
 
1060
        },
 
1061
        {#State 72
 
1062
                DEFAULT => -33
 
1063
        },
 
1064
        {#State 73
 
1065
                ACTIONS => {
 
1066
                        "-" => 1,
 
1067
                        "~" => 3,
 
1068
                        "&" => 4,
 
1069
                        'TEXT' => 6,
 
1070
                        'NUM' => 5,
 
1071
                        "!" => 8,
 
1072
                        "(" => 7,
 
1073
                        "*" => 9,
 
1074
                        'VAR' => 10
 
1075
                },
 
1076
                GOTOS => {
 
1077
                        'exp' => 76,
 
1078
                        'var' => 11,
 
1079
                        'func' => 12,
 
1080
                        'possible_pointer' => 13
 
1081
                }
 
1082
        },
 
1083
        {#State 74
 
1084
                ACTIONS => {
 
1085
                        "-" => 1,
 
1086
                        "~" => 3,
 
1087
                        "&" => 4,
 
1088
                        'TEXT' => 6,
 
1089
                        'NUM' => 5,
 
1090
                        "!" => 8,
 
1091
                        "(" => 7,
 
1092
                        "*" => 9,
 
1093
                        'VAR' => 10
 
1094
                },
 
1095
                GOTOS => {
 
1096
                        'exp' => 69,
 
1097
                        'var' => 11,
 
1098
                        'args' => 77,
 
1099
                        'func' => 12,
 
1100
                        'exp_or_possible_pointer' => 67,
 
1101
                        'possible_pointer' => 68
 
1102
                }
 
1103
        },
 
1104
        {#State 75
 
1105
                DEFAULT => -36
 
1106
        },
 
1107
        {#State 76
 
1108
                ACTIONS => {
 
1109
                        "^" => 21,
 
1110
                        "=>" => 31,
 
1111
                        "<=" => 33
 
1112
                },
 
1113
                DEFAULT => -22
 
1114
        },
 
1115
        {#State 77
 
1116
                DEFAULT => -42
 
1117
        }
 
1118
],
 
1119
                                  yyrules  =>
 
1120
[
 
1121
        [#Rule 0
 
1122
                 '$start', 2, undef
 
1123
        ],
 
1124
        [#Rule 1
 
1125
                 'exp', 1, undef
 
1126
        ],
 
1127
        [#Rule 2
 
1128
                 'exp', 1,
 
1129
sub
 
1130
#line 22 "./pidl/expr.yp"
 
1131
{ "\"$_[1]\"" }
 
1132
        ],
 
1133
        [#Rule 3
 
1134
                 'exp', 1, undef
 
1135
        ],
 
1136
        [#Rule 4
 
1137
                 'exp', 1, undef
 
1138
        ],
 
1139
        [#Rule 5
 
1140
                 'exp', 2,
 
1141
sub
 
1142
#line 25 "./pidl/expr.yp"
 
1143
{ "~$_[2]" }
 
1144
        ],
 
1145
        [#Rule 6
 
1146
                 'exp', 3,
 
1147
sub
 
1148
#line 26 "./pidl/expr.yp"
 
1149
{ "$_[1] + $_[3]" }
 
1150
        ],
 
1151
        [#Rule 7
 
1152
                 'exp', 3,
 
1153
sub
 
1154
#line 27 "./pidl/expr.yp"
 
1155
{ "$_[1] - $_[3]" }
 
1156
        ],
 
1157
        [#Rule 8
 
1158
                 'exp', 3,
 
1159
sub
 
1160
#line 28 "./pidl/expr.yp"
 
1161
{ "$_[1] * $_[3]" }
 
1162
        ],
 
1163
        [#Rule 9
 
1164
                 'exp', 3,
 
1165
sub
 
1166
#line 29 "./pidl/expr.yp"
 
1167
{ "$_[1] % $_[3]" }
 
1168
        ],
 
1169
        [#Rule 10
 
1170
                 'exp', 3,
 
1171
sub
 
1172
#line 30 "./pidl/expr.yp"
 
1173
{ "$_[1] < $_[3]" }
 
1174
        ],
 
1175
        [#Rule 11
 
1176
                 'exp', 3,
 
1177
sub
 
1178
#line 31 "./pidl/expr.yp"
 
1179
{ "$_[1] > $_[3]" }
 
1180
        ],
 
1181
        [#Rule 12
 
1182
                 'exp', 3,
 
1183
sub
 
1184
#line 32 "./pidl/expr.yp"
 
1185
{ "$_[1] | $_[3]" }
 
1186
        ],
 
1187
        [#Rule 13
 
1188
                 'exp', 3,
 
1189
sub
 
1190
#line 33 "./pidl/expr.yp"
 
1191
{ "$_[1] == $_[3]" }
 
1192
        ],
 
1193
        [#Rule 14
 
1194
                 'exp', 3,
 
1195
sub
 
1196
#line 34 "./pidl/expr.yp"
 
1197
{ "$_[1] <= $_[3]" }
 
1198
        ],
 
1199
        [#Rule 15
 
1200
                 'exp', 3,
 
1201
sub
 
1202
#line 35 "./pidl/expr.yp"
 
1203
{ "$_[1] => $_[3]" }
 
1204
        ],
 
1205
        [#Rule 16
 
1206
                 'exp', 3,
 
1207
sub
 
1208
#line 36 "./pidl/expr.yp"
 
1209
{ "$_[1] << $_[3]" }
 
1210
        ],
 
1211
        [#Rule 17
 
1212
                 'exp', 3,
 
1213
sub
 
1214
#line 37 "./pidl/expr.yp"
 
1215
{ "$_[1] >> $_[3]" }
 
1216
        ],
 
1217
        [#Rule 18
 
1218
                 'exp', 3,
 
1219
sub
 
1220
#line 38 "./pidl/expr.yp"
 
1221
{ "$_[1] != $_[3]" }
 
1222
        ],
 
1223
        [#Rule 19
 
1224
                 'exp', 3,
 
1225
sub
 
1226
#line 39 "./pidl/expr.yp"
 
1227
{ "$_[1] || $_[3]" }
 
1228
        ],
 
1229
        [#Rule 20
 
1230
                 'exp', 3,
 
1231
sub
 
1232
#line 40 "./pidl/expr.yp"
 
1233
{ "$_[1] && $_[3]" }
 
1234
        ],
 
1235
        [#Rule 21
 
1236
                 'exp', 3,
 
1237
sub
 
1238
#line 41 "./pidl/expr.yp"
 
1239
{ "$_[1] & $_[3]" }
 
1240
        ],
 
1241
        [#Rule 22
 
1242
                 'exp', 5,
 
1243
sub
 
1244
#line 42 "./pidl/expr.yp"
 
1245
{ "$_[1]?$_[3]:$_[5]" }
 
1246
        ],
 
1247
        [#Rule 23
 
1248
                 'exp', 2,
 
1249
sub
 
1250
#line 43 "./pidl/expr.yp"
 
1251
{ "~$_[1]" }
 
1252
        ],
 
1253
        [#Rule 24
 
1254
                 'exp', 2,
 
1255
sub
 
1256
#line 44 "./pidl/expr.yp"
 
1257
{ "not $_[1]" }
 
1258
        ],
 
1259
        [#Rule 25
 
1260
                 'exp', 3,
 
1261
sub
 
1262
#line 45 "./pidl/expr.yp"
 
1263
{ "$_[1] / $_[3]" }
 
1264
        ],
 
1265
        [#Rule 26
 
1266
                 'exp', 2,
 
1267
sub
 
1268
#line 46 "./pidl/expr.yp"
 
1269
{ "-$_[2]" }
 
1270
        ],
 
1271
        [#Rule 27
 
1272
                 'exp', 2,
 
1273
sub
 
1274
#line 47 "./pidl/expr.yp"
 
1275
{ "&$_[2]" }
 
1276
        ],
 
1277
        [#Rule 28
 
1278
                 'exp', 3,
 
1279
sub
 
1280
#line 48 "./pidl/expr.yp"
 
1281
{ "$_[1]^$_[3]" }
 
1282
        ],
 
1283
        [#Rule 29
 
1284
                 'exp', 3,
 
1285
sub
 
1286
#line 49 "./pidl/expr.yp"
 
1287
{ "($_[2])" }
 
1288
        ],
 
1289
        [#Rule 30
 
1290
                 'possible_pointer', 1,
 
1291
sub
 
1292
#line 53 "./pidl/expr.yp"
 
1293
{ $_[0]->_Lookup($_[1]) }
 
1294
        ],
 
1295
        [#Rule 31
 
1296
                 'possible_pointer', 2,
 
1297
sub
 
1298
#line 54 "./pidl/expr.yp"
 
1299
{ $_[0]->_Dereference($_[2]); "*$_[2]" }
 
1300
        ],
 
1301
        [#Rule 32
 
1302
                 'var', 1,
 
1303
sub
 
1304
#line 57 "./pidl/expr.yp"
 
1305
{ $_[0]->_Use($_[1]) }
 
1306
        ],
 
1307
        [#Rule 33
 
1308
                 'var', 3,
 
1309
sub
 
1310
#line 58 "./pidl/expr.yp"
 
1311
{ $_[0]->_Use("$_[1].$_[3]") }
 
1312
        ],
 
1313
        [#Rule 34
 
1314
                 'var', 3,
 
1315
sub
 
1316
#line 59 "./pidl/expr.yp"
 
1317
{ "($_[2])" }
 
1318
        ],
 
1319
        [#Rule 35
 
1320
                 'var', 3,
 
1321
sub
 
1322
#line 60 "./pidl/expr.yp"
 
1323
{ $_[0]->_Use("*$_[1]"); $_[1]."->".$_[3] }
 
1324
        ],
 
1325
        [#Rule 36
 
1326
                 'func', 4,
 
1327
sub
 
1328
#line 64 "./pidl/expr.yp"
 
1329
{ "$_[1]($_[3])" }
 
1330
        ],
 
1331
        [#Rule 37
 
1332
                 'opt_args', 0,
 
1333
sub
 
1334
#line 65 "./pidl/expr.yp"
 
1335
{ "" }
 
1336
        ],
 
1337
        [#Rule 38
 
1338
                 'opt_args', 1, undef
 
1339
        ],
 
1340
        [#Rule 39
 
1341
                 'exp_or_possible_pointer', 1, undef
 
1342
        ],
 
1343
        [#Rule 40
 
1344
                 'exp_or_possible_pointer', 1, undef
 
1345
        ],
 
1346
        [#Rule 41
 
1347
                 'args', 1, undef
 
1348
        ],
 
1349
        [#Rule 42
 
1350
                 'args', 3,
 
1351
sub
 
1352
#line 68 "./pidl/expr.yp"
 
1353
{ "$_[1], $_[3]" }
 
1354
        ]
 
1355
],
 
1356
                                  @_);
 
1357
    bless($self,$class);
 
1358
}
 
1359
 
 
1360
#line 71 "./pidl/expr.yp"
 
1361
 
 
1362
 
 
1363
package Parse::Pidl::Expr;
 
1364
 
 
1365
sub _Lexer {
 
1366
    my($parser)=shift;
 
1367
 
 
1368
    $parser->YYData->{INPUT}=~s/^[ \t]//;
 
1369
 
 
1370
    for ($parser->YYData->{INPUT}) {
 
1371
        if (s/^(0x[0-9A-Fa-f]+)//) {
 
1372
                        $parser->YYData->{LAST_TOKEN} = $1;
 
1373
            return('NUM',$1);
 
1374
                }
 
1375
        if (s/^([0-9]+(?:\.[0-9]+)?)//) {
 
1376
                        $parser->YYData->{LAST_TOKEN} = $1;
 
1377
            return('NUM',$1);
 
1378
                }
 
1379
        if (s/^([A-Za-z_][A-Za-z0-9_]*)//) {
 
1380
                        $parser->YYData->{LAST_TOKEN} = $1;
 
1381
                return('VAR',$1);
 
1382
                }
 
1383
                if (s/^\"(.*?)\"//) {
 
1384
                        $parser->YYData->{LAST_TOKEN} = $1;
 
1385
                        return('TEXT',$1);
 
1386
                }
 
1387
                if (s/^(==|!=|<=|>=|->|\|\||<<|>>|&&)//s) {
 
1388
                        $parser->YYData->{LAST_TOKEN} = $1;
 
1389
            return($1,$1);
 
1390
                }
 
1391
        if (s/^(.)//s) {
 
1392
                        $parser->YYData->{LAST_TOKEN} = $1;
 
1393
            return($1,$1);
 
1394
                }
 
1395
    }
 
1396
}
 
1397
 
 
1398
sub _Use($$)
 
1399
{
 
1400
        my ($self, $x) = @_;
 
1401
        if (defined($self->YYData->{USE})) {
 
1402
                return $self->YYData->{USE}->($x);
 
1403
        }
 
1404
        return $x;
 
1405
}
 
1406
 
 
1407
sub _Lookup($$)
 
1408
{
 
1409
        my ($self, $x) = @_;
 
1410
        return $self->YYData->{LOOKUP}->($x);
 
1411
}
 
1412
 
 
1413
sub _Dereference($$)
 
1414
{
 
1415
        my ($self, $x) = @_;
 
1416
        if (defined($self->YYData->{DEREFERENCE})) {
 
1417
                $self->YYData->{DEREFERENCE}->($x);
 
1418
        }
 
1419
}
 
1420
 
 
1421
sub _Error($)
 
1422
{
 
1423
        my ($self) = @_;
 
1424
        if (defined($self->YYData->{LAST_TOKEN})) {
 
1425
                $self->YYData->{ERROR}->("Parse error in `".$self->YYData->{FULL_INPUT}."' near `". $self->YYData->{LAST_TOKEN} . "'");
 
1426
        } else {
 
1427
                $self->YYData->{ERROR}->("Parse error in `".$self->YYData->{FULL_INPUT}."'");
 
1428
        }
 
1429
}
 
1430
 
 
1431
sub Run {
 
1432
    my($self, $data, $error, $lookup, $deref, $use) = @_;
 
1433
    $self->YYData->{FULL_INPUT} = $data;
 
1434
    $self->YYData->{INPUT} = $data;
 
1435
    $self->YYData->{LOOKUP} = $lookup;
 
1436
    $self->YYData->{DEREFERENCE} = $deref;
 
1437
    $self->YYData->{ERROR} = $error;
 
1438
    $self->YYData->{USE} = $use;
 
1439
    return $self->YYParse( yylex => \&_Lexer, yyerror => \&_Error);
 
1440
}
 
1441
 
 
1442
1;