onion 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,1692 +0,0 @@
1
- # Autogenerated from a Treetop grammar. Edits may be lost.
2
-
3
-
4
- module Onion
5
- module Common
6
- include Treetop::Runtime
7
-
8
- def root
9
- @root ||= :Year
10
- end
11
-
12
- module Year0
13
- end
14
-
15
- def _nt_Year
16
- start_index = index
17
- if node_cache[:Year].has_key?(index)
18
- cached = node_cache[:Year][index]
19
- if cached
20
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
21
- @index = cached.interval.end
22
- end
23
- return cached
24
- end
25
-
26
- i0, s0 = index, []
27
- if has_terminal?('\G[0-9]', true, index)
28
- r1 = true
29
- @index += 1
30
- else
31
- r1 = nil
32
- end
33
- s0 << r1
34
- if r1
35
- if has_terminal?('\G[0-9]', true, index)
36
- r2 = true
37
- @index += 1
38
- else
39
- r2 = nil
40
- end
41
- s0 << r2
42
- if r2
43
- if has_terminal?('\G[0-9]', true, index)
44
- r3 = true
45
- @index += 1
46
- else
47
- r3 = nil
48
- end
49
- s0 << r3
50
- if r3
51
- if has_terminal?('\G[0-9]', true, index)
52
- r4 = true
53
- @index += 1
54
- else
55
- r4 = nil
56
- end
57
- s0 << r4
58
- end
59
- end
60
- end
61
- if s0.last
62
- r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
63
- r0.extend(Year0)
64
- else
65
- @index = i0
66
- r0 = nil
67
- end
68
-
69
- node_cache[:Year][start_index] = r0
70
-
71
- r0
72
- end
73
-
74
- module Month0
75
- end
76
-
77
- module Month1
78
- end
79
-
80
- def _nt_Month
81
- start_index = index
82
- if node_cache[:Month].has_key?(index)
83
- cached = node_cache[:Month][index]
84
- if cached
85
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
86
- @index = cached.interval.end
87
- end
88
- return cached
89
- end
90
-
91
- i0 = index
92
- i1, s1 = index, []
93
- if has_terminal?('\G[0]', true, index)
94
- r2 = true
95
- @index += 1
96
- else
97
- r2 = nil
98
- end
99
- s1 << r2
100
- if r2
101
- if has_terminal?('\G[1-9]', true, index)
102
- r3 = true
103
- @index += 1
104
- else
105
- r3 = nil
106
- end
107
- s1 << r3
108
- end
109
- if s1.last
110
- r1 = instantiate_node(SyntaxNode,input, i1...index, s1)
111
- r1.extend(Month0)
112
- else
113
- @index = i1
114
- r1 = nil
115
- end
116
- if r1
117
- r0 = r1
118
- else
119
- i4, s4 = index, []
120
- if has_terminal?('\G[1]', true, index)
121
- r5 = true
122
- @index += 1
123
- else
124
- r5 = nil
125
- end
126
- s4 << r5
127
- if r5
128
- if has_terminal?('\G[0-2]', true, index)
129
- r6 = true
130
- @index += 1
131
- else
132
- r6 = nil
133
- end
134
- s4 << r6
135
- end
136
- if s4.last
137
- r4 = instantiate_node(SyntaxNode,input, i4...index, s4)
138
- r4.extend(Month1)
139
- else
140
- @index = i4
141
- r4 = nil
142
- end
143
- if r4
144
- r0 = r4
145
- else
146
- @index = i0
147
- r0 = nil
148
- end
149
- end
150
-
151
- node_cache[:Month][start_index] = r0
152
-
153
- r0
154
- end
155
-
156
- module Day0
157
- end
158
-
159
- module Day1
160
- end
161
-
162
- def _nt_Day
163
- start_index = index
164
- if node_cache[:Day].has_key?(index)
165
- cached = node_cache[:Day][index]
166
- if cached
167
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
168
- @index = cached.interval.end
169
- end
170
- return cached
171
- end
172
-
173
- i0 = index
174
- i1, s1 = index, []
175
- if has_terminal?('\G[0-2]', true, index)
176
- r2 = true
177
- @index += 1
178
- else
179
- r2 = nil
180
- end
181
- s1 << r2
182
- if r2
183
- if has_terminal?('\G[0-9]', true, index)
184
- r3 = true
185
- @index += 1
186
- else
187
- r3 = nil
188
- end
189
- s1 << r3
190
- end
191
- if s1.last
192
- r1 = instantiate_node(SyntaxNode,input, i1...index, s1)
193
- r1.extend(Day0)
194
- else
195
- @index = i1
196
- r1 = nil
197
- end
198
- if r1
199
- r0 = r1
200
- else
201
- i4, s4 = index, []
202
- if has_terminal?('\G[3]', true, index)
203
- r5 = true
204
- @index += 1
205
- else
206
- r5 = nil
207
- end
208
- s4 << r5
209
- if r5
210
- if has_terminal?('\G[0-1]', true, index)
211
- r6 = true
212
- @index += 1
213
- else
214
- r6 = nil
215
- end
216
- s4 << r6
217
- end
218
- if s4.last
219
- r4 = instantiate_node(SyntaxNode,input, i4...index, s4)
220
- r4.extend(Day1)
221
- else
222
- @index = i4
223
- r4 = nil
224
- end
225
- if r4
226
- r0 = r4
227
- else
228
- @index = i0
229
- r0 = nil
230
- end
231
- end
232
-
233
- node_cache[:Day][start_index] = r0
234
-
235
- r0
236
- end
237
-
238
- module Hour0
239
- end
240
-
241
- module Hour1
242
- end
243
-
244
- module Hour2
245
- end
246
-
247
- def _nt_Hour
248
- start_index = index
249
- if node_cache[:Hour].has_key?(index)
250
- cached = node_cache[:Hour][index]
251
- if cached
252
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
253
- @index = cached.interval.end
254
- end
255
- return cached
256
- end
257
-
258
- i0 = index
259
- i1, s1 = index, []
260
- if has_terminal?('\G[0]', true, index)
261
- r2 = true
262
- @index += 1
263
- else
264
- r2 = nil
265
- end
266
- s1 << r2
267
- if r2
268
- if has_terminal?('\G[1-9]', true, index)
269
- r3 = true
270
- @index += 1
271
- else
272
- r3 = nil
273
- end
274
- s1 << r3
275
- end
276
- if s1.last
277
- r1 = instantiate_node(SyntaxNode,input, i1...index, s1)
278
- r1.extend(Hour0)
279
- else
280
- @index = i1
281
- r1 = nil
282
- end
283
- if r1
284
- r0 = r1
285
- else
286
- i4, s4 = index, []
287
- if has_terminal?('\G[1]', true, index)
288
- r5 = true
289
- @index += 1
290
- else
291
- r5 = nil
292
- end
293
- s4 << r5
294
- if r5
295
- if has_terminal?('\G[0-9]', true, index)
296
- r6 = true
297
- @index += 1
298
- else
299
- r6 = nil
300
- end
301
- s4 << r6
302
- end
303
- if s4.last
304
- r4 = instantiate_node(SyntaxNode,input, i4...index, s4)
305
- r4.extend(Hour1)
306
- else
307
- @index = i4
308
- r4 = nil
309
- end
310
- if r4
311
- r0 = r4
312
- else
313
- i7, s7 = index, []
314
- if has_terminal?('\G[2]', true, index)
315
- r8 = true
316
- @index += 1
317
- else
318
- r8 = nil
319
- end
320
- s7 << r8
321
- if r8
322
- if has_terminal?('\G[0-4]', true, index)
323
- r9 = true
324
- @index += 1
325
- else
326
- r9 = nil
327
- end
328
- s7 << r9
329
- end
330
- if s7.last
331
- r7 = instantiate_node(SyntaxNode,input, i7...index, s7)
332
- r7.extend(Hour2)
333
- else
334
- @index = i7
335
- r7 = nil
336
- end
337
- if r7
338
- r0 = r7
339
- else
340
- @index = i0
341
- r0 = nil
342
- end
343
- end
344
- end
345
-
346
- node_cache[:Hour][start_index] = r0
347
-
348
- r0
349
- end
350
-
351
- module Minute0
352
- end
353
-
354
- module Minute1
355
- end
356
-
357
- def _nt_Minute
358
- start_index = index
359
- if node_cache[:Minute].has_key?(index)
360
- cached = node_cache[:Minute][index]
361
- if cached
362
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
363
- @index = cached.interval.end
364
- end
365
- return cached
366
- end
367
-
368
- i0 = index
369
- i1, s1 = index, []
370
- if has_terminal?('\G[0]', true, index)
371
- r2 = true
372
- @index += 1
373
- else
374
- r2 = nil
375
- end
376
- s1 << r2
377
- if r2
378
- if has_terminal?('\G[0-9]', true, index)
379
- r3 = true
380
- @index += 1
381
- else
382
- r3 = nil
383
- end
384
- s1 << r3
385
- end
386
- if s1.last
387
- r1 = instantiate_node(SyntaxNode,input, i1...index, s1)
388
- r1.extend(Minute0)
389
- else
390
- @index = i1
391
- r1 = nil
392
- end
393
- if r1
394
- r0 = r1
395
- else
396
- i4, s4 = index, []
397
- if has_terminal?('\G[1-5]', true, index)
398
- r5 = true
399
- @index += 1
400
- else
401
- r5 = nil
402
- end
403
- s4 << r5
404
- if r5
405
- if has_terminal?('\G[0-9]', true, index)
406
- r6 = true
407
- @index += 1
408
- else
409
- r6 = nil
410
- end
411
- s4 << r6
412
- end
413
- if s4.last
414
- r4 = instantiate_node(SyntaxNode,input, i4...index, s4)
415
- r4.extend(Minute1)
416
- else
417
- @index = i4
418
- r4 = nil
419
- end
420
- if r4
421
- r0 = r4
422
- else
423
- @index = i0
424
- r0 = nil
425
- end
426
- end
427
-
428
- node_cache[:Minute][start_index] = r0
429
-
430
- r0
431
- end
432
-
433
- module Second0
434
- end
435
-
436
- module Second1
437
- end
438
-
439
- def _nt_Second
440
- start_index = index
441
- if node_cache[:Second].has_key?(index)
442
- cached = node_cache[:Second][index]
443
- if cached
444
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
445
- @index = cached.interval.end
446
- end
447
- return cached
448
- end
449
-
450
- i0 = index
451
- i1, s1 = index, []
452
- if has_terminal?('\G[0]', true, index)
453
- r2 = true
454
- @index += 1
455
- else
456
- r2 = nil
457
- end
458
- s1 << r2
459
- if r2
460
- if has_terminal?('\G[0-9]', true, index)
461
- r3 = true
462
- @index += 1
463
- else
464
- r3 = nil
465
- end
466
- s1 << r3
467
- end
468
- if s1.last
469
- r1 = instantiate_node(SyntaxNode,input, i1...index, s1)
470
- r1.extend(Second0)
471
- else
472
- @index = i1
473
- r1 = nil
474
- end
475
- if r1
476
- r0 = r1
477
- else
478
- i4, s4 = index, []
479
- if has_terminal?('\G[1-5]', true, index)
480
- r5 = true
481
- @index += 1
482
- else
483
- r5 = nil
484
- end
485
- s4 << r5
486
- if r5
487
- if has_terminal?('\G[0-9]', true, index)
488
- r6 = true
489
- @index += 1
490
- else
491
- r6 = nil
492
- end
493
- s4 << r6
494
- end
495
- if s4.last
496
- r4 = instantiate_node(SyntaxNode,input, i4...index, s4)
497
- r4.extend(Second1)
498
- else
499
- @index = i4
500
- r4 = nil
501
- end
502
- if r4
503
- r0 = r4
504
- else
505
- @index = i0
506
- r0 = nil
507
- end
508
- end
509
-
510
- node_cache[:Second][start_index] = r0
511
-
512
- r0
513
- end
514
-
515
- module DateTime0
516
- def Year
517
- elements[0]
518
- end
519
-
520
- def Month
521
- elements[2]
522
- end
523
-
524
- def Day
525
- elements[4]
526
- end
527
-
528
- def Hour
529
- elements[6]
530
- end
531
-
532
- def Minute
533
- elements[8]
534
- end
535
-
536
- def Second
537
- elements[10]
538
- end
539
- end
540
-
541
- def _nt_DateTime
542
- start_index = index
543
- if node_cache[:DateTime].has_key?(index)
544
- cached = node_cache[:DateTime][index]
545
- if cached
546
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
547
- @index = cached.interval.end
548
- end
549
- return cached
550
- end
551
-
552
- i0, s0 = index, []
553
- r1 = _nt_Year
554
- s0 << r1
555
- if r1
556
- if has_terminal?("-", false, index)
557
- r2 = instantiate_node(SyntaxNode,input, index...(index + 1))
558
- @index += 1
559
- else
560
- terminal_parse_failure("-")
561
- r2 = nil
562
- end
563
- s0 << r2
564
- if r2
565
- r3 = _nt_Month
566
- s0 << r3
567
- if r3
568
- if has_terminal?("-", false, index)
569
- r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
570
- @index += 1
571
- else
572
- terminal_parse_failure("-")
573
- r4 = nil
574
- end
575
- s0 << r4
576
- if r4
577
- r5 = _nt_Day
578
- s0 << r5
579
- if r5
580
- if has_terminal?(" ", false, index)
581
- r6 = instantiate_node(SyntaxNode,input, index...(index + 1))
582
- @index += 1
583
- else
584
- terminal_parse_failure(" ")
585
- r6 = nil
586
- end
587
- s0 << r6
588
- if r6
589
- r7 = _nt_Hour
590
- s0 << r7
591
- if r7
592
- if has_terminal?(":", false, index)
593
- r8 = instantiate_node(SyntaxNode,input, index...(index + 1))
594
- @index += 1
595
- else
596
- terminal_parse_failure(":")
597
- r8 = nil
598
- end
599
- s0 << r8
600
- if r8
601
- r9 = _nt_Minute
602
- s0 << r9
603
- if r9
604
- if has_terminal?(":", false, index)
605
- r10 = instantiate_node(SyntaxNode,input, index...(index + 1))
606
- @index += 1
607
- else
608
- terminal_parse_failure(":")
609
- r10 = nil
610
- end
611
- s0 << r10
612
- if r10
613
- r11 = _nt_Second
614
- s0 << r11
615
- end
616
- end
617
- end
618
- end
619
- end
620
- end
621
- end
622
- end
623
- end
624
- end
625
- if s0.last
626
- r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
627
- r0.extend(DateTime0)
628
- else
629
- @index = i0
630
- r0 = nil
631
- end
632
-
633
- node_cache[:DateTime][start_index] = r0
634
-
635
- r0
636
- end
637
-
638
- def _nt_Base64Char
639
- start_index = index
640
- if node_cache[:Base64Char].has_key?(index)
641
- cached = node_cache[:Base64Char][index]
642
- if cached
643
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
644
- @index = cached.interval.end
645
- end
646
- return cached
647
- end
648
-
649
- if has_terminal?('\G[A-Za-z0-9+/]', true, index)
650
- r0 = instantiate_node(SyntaxNode,input, index...(index + 1))
651
- @index += 1
652
- else
653
- r0 = nil
654
- end
655
-
656
- node_cache[:Base64Char][start_index] = r0
657
-
658
- r0
659
- end
660
-
661
- def _nt_Base64Hash
662
- start_index = index
663
- if node_cache[:Base64Hash].has_key?(index)
664
- cached = node_cache[:Base64Hash][index]
665
- if cached
666
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
667
- @index = cached.interval.end
668
- end
669
- return cached
670
- end
671
-
672
- s0, i0 = [], index
673
- loop do
674
- r1 = _nt_Base64Char
675
- if r1
676
- s0 << r1
677
- else
678
- break
679
- end
680
- end
681
- if s0.empty?
682
- @index = i0
683
- r0 = nil
684
- else
685
- r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
686
- end
687
-
688
- node_cache[:Base64Hash][start_index] = r0
689
-
690
- r0
691
- end
692
-
693
- module IPv4Byte0
694
- end
695
-
696
- module IPv4Byte1
697
- end
698
-
699
- module IPv4Byte2
700
- end
701
-
702
- module IPv4Byte3
703
- end
704
-
705
- def _nt_IPv4Byte
706
- start_index = index
707
- if node_cache[:IPv4Byte].has_key?(index)
708
- cached = node_cache[:IPv4Byte][index]
709
- if cached
710
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
711
- @index = cached.interval.end
712
- end
713
- return cached
714
- end
715
-
716
- i0 = index
717
- i1, s1 = index, []
718
- if has_terminal?('\G[2]', true, index)
719
- r2 = true
720
- @index += 1
721
- else
722
- r2 = nil
723
- end
724
- s1 << r2
725
- if r2
726
- if has_terminal?('\G[5]', true, index)
727
- r3 = true
728
- @index += 1
729
- else
730
- r3 = nil
731
- end
732
- s1 << r3
733
- if r3
734
- if has_terminal?('\G[0-5]', true, index)
735
- r4 = true
736
- @index += 1
737
- else
738
- r4 = nil
739
- end
740
- s1 << r4
741
- end
742
- end
743
- if s1.last
744
- r1 = instantiate_node(SyntaxNode,input, i1...index, s1)
745
- r1.extend(IPv4Byte0)
746
- else
747
- @index = i1
748
- r1 = nil
749
- end
750
- if r1
751
- r0 = r1
752
- else
753
- i5, s5 = index, []
754
- if has_terminal?('\G[2]', true, index)
755
- r6 = true
756
- @index += 1
757
- else
758
- r6 = nil
759
- end
760
- s5 << r6
761
- if r6
762
- if has_terminal?('\G[0-4]', true, index)
763
- r7 = true
764
- @index += 1
765
- else
766
- r7 = nil
767
- end
768
- s5 << r7
769
- if r7
770
- if has_terminal?('\G[0-9]', true, index)
771
- r8 = true
772
- @index += 1
773
- else
774
- r8 = nil
775
- end
776
- s5 << r8
777
- end
778
- end
779
- if s5.last
780
- r5 = instantiate_node(SyntaxNode,input, i5...index, s5)
781
- r5.extend(IPv4Byte1)
782
- else
783
- @index = i5
784
- r5 = nil
785
- end
786
- if r5
787
- r0 = r5
788
- else
789
- i9, s9 = index, []
790
- if has_terminal?('\G[1]', true, index)
791
- r10 = true
792
- @index += 1
793
- else
794
- r10 = nil
795
- end
796
- s9 << r10
797
- if r10
798
- if has_terminal?('\G[0-9]', true, index)
799
- r11 = true
800
- @index += 1
801
- else
802
- r11 = nil
803
- end
804
- s9 << r11
805
- if r11
806
- if has_terminal?('\G[0-9]', true, index)
807
- r12 = true
808
- @index += 1
809
- else
810
- r12 = nil
811
- end
812
- s9 << r12
813
- end
814
- end
815
- if s9.last
816
- r9 = instantiate_node(SyntaxNode,input, i9...index, s9)
817
- r9.extend(IPv4Byte2)
818
- else
819
- @index = i9
820
- r9 = nil
821
- end
822
- if r9
823
- r0 = r9
824
- else
825
- i13, s13 = index, []
826
- if has_terminal?('\G[1-9]', true, index)
827
- r14 = true
828
- @index += 1
829
- else
830
- r14 = nil
831
- end
832
- s13 << r14
833
- if r14
834
- if has_terminal?('\G[0-9]', true, index)
835
- r15 = true
836
- @index += 1
837
- else
838
- r15 = nil
839
- end
840
- s13 << r15
841
- end
842
- if s13.last
843
- r13 = instantiate_node(SyntaxNode,input, i13...index, s13)
844
- r13.extend(IPv4Byte3)
845
- else
846
- @index = i13
847
- r13 = nil
848
- end
849
- if r13
850
- r0 = r13
851
- else
852
- if has_terminal?('\G[0-9]', true, index)
853
- r16 = true
854
- @index += 1
855
- else
856
- r16 = nil
857
- end
858
- if r16
859
- r0 = r16
860
- else
861
- @index = i0
862
- r0 = nil
863
- end
864
- end
865
- end
866
- end
867
- end
868
-
869
- node_cache[:IPv4Byte][start_index] = r0
870
-
871
- r0
872
- end
873
-
874
- module IPv4Address0
875
- def IPv4Byte1
876
- elements[0]
877
- end
878
-
879
- def IPv4Byte2
880
- elements[2]
881
- end
882
-
883
- def IPv4Byte3
884
- elements[4]
885
- end
886
-
887
- def IPv4Byte4
888
- elements[6]
889
- end
890
- end
891
-
892
- def _nt_IPv4Address
893
- start_index = index
894
- if node_cache[:IPv4Address].has_key?(index)
895
- cached = node_cache[:IPv4Address][index]
896
- if cached
897
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
898
- @index = cached.interval.end
899
- end
900
- return cached
901
- end
902
-
903
- i0, s0 = index, []
904
- r1 = _nt_IPv4Byte
905
- s0 << r1
906
- if r1
907
- if has_terminal?(".", false, index)
908
- r2 = instantiate_node(SyntaxNode,input, index...(index + 1))
909
- @index += 1
910
- else
911
- terminal_parse_failure(".")
912
- r2 = nil
913
- end
914
- s0 << r2
915
- if r2
916
- r3 = _nt_IPv4Byte
917
- s0 << r3
918
- if r3
919
- if has_terminal?(".", false, index)
920
- r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
921
- @index += 1
922
- else
923
- terminal_parse_failure(".")
924
- r4 = nil
925
- end
926
- s0 << r4
927
- if r4
928
- r5 = _nt_IPv4Byte
929
- s0 << r5
930
- if r5
931
- if has_terminal?(".", false, index)
932
- r6 = instantiate_node(SyntaxNode,input, index...(index + 1))
933
- @index += 1
934
- else
935
- terminal_parse_failure(".")
936
- r6 = nil
937
- end
938
- s0 << r6
939
- if r6
940
- r7 = _nt_IPv4Byte
941
- s0 << r7
942
- end
943
- end
944
- end
945
- end
946
- end
947
- end
948
- if s0.last
949
- r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
950
- r0.extend(IPv4Address0)
951
- else
952
- @index = i0
953
- r0 = nil
954
- end
955
-
956
- node_cache[:IPv4Address][start_index] = r0
957
-
958
- r0
959
- end
960
-
961
- def _nt_IP
962
- start_index = index
963
- if node_cache[:IP].has_key?(index)
964
- cached = node_cache[:IP][index]
965
- if cached
966
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
967
- @index = cached.interval.end
968
- end
969
- return cached
970
- end
971
-
972
- r0 = _nt_IPv4Address
973
-
974
- node_cache[:IP][start_index] = r0
975
-
976
- r0
977
- end
978
-
979
- def _nt_Hostname
980
- start_index = index
981
- if node_cache[:Hostname].has_key?(index)
982
- cached = node_cache[:Hostname][index]
983
- if cached
984
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
985
- @index = cached.interval.end
986
- end
987
- return cached
988
- end
989
-
990
- s0, i0 = [], index
991
- loop do
992
- if has_terminal?('\G[a-zA-Z\\.\\-]', true, index)
993
- r1 = true
994
- @index += 1
995
- else
996
- r1 = nil
997
- end
998
- if r1
999
- s0 << r1
1000
- else
1001
- break
1002
- end
1003
- end
1004
- if s0.empty?
1005
- @index = i0
1006
- r0 = nil
1007
- else
1008
- r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
1009
- end
1010
-
1011
- node_cache[:Hostname][start_index] = r0
1012
-
1013
- r0
1014
- end
1015
-
1016
- def _nt_Address
1017
- start_index = index
1018
- if node_cache[:Address].has_key?(index)
1019
- cached = node_cache[:Address][index]
1020
- if cached
1021
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1022
- @index = cached.interval.end
1023
- end
1024
- return cached
1025
- end
1026
-
1027
- i0 = index
1028
- r1 = _nt_Hostname
1029
- if r1
1030
- r0 = r1
1031
- else
1032
- r2 = _nt_IP
1033
- if r2
1034
- r0 = r2
1035
- else
1036
- @index = i0
1037
- r0 = nil
1038
- end
1039
- end
1040
-
1041
- node_cache[:Address][start_index] = r0
1042
-
1043
- r0
1044
- end
1045
-
1046
- def _nt_Port
1047
- start_index = index
1048
- if node_cache[:Port].has_key?(index)
1049
- cached = node_cache[:Port][index]
1050
- if cached
1051
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1052
- @index = cached.interval.end
1053
- end
1054
- return cached
1055
- end
1056
-
1057
- s0, i0 = [], index
1058
- loop do
1059
- if has_terminal?('\G[0-9]', true, index)
1060
- r1 = true
1061
- @index += 1
1062
- else
1063
- r1 = nil
1064
- end
1065
- if r1
1066
- s0 << r1
1067
- else
1068
- break
1069
- end
1070
- end
1071
- if s0.empty?
1072
- @index = i0
1073
- r0 = nil
1074
- else
1075
- r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
1076
- end
1077
-
1078
- node_cache[:Port][start_index] = r0
1079
-
1080
- r0
1081
- end
1082
-
1083
- def _nt_ORPort
1084
- start_index = index
1085
- if node_cache[:ORPort].has_key?(index)
1086
- cached = node_cache[:ORPort][index]
1087
- if cached
1088
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1089
- @index = cached.interval.end
1090
- end
1091
- return cached
1092
- end
1093
-
1094
- r0 = _nt_Port
1095
-
1096
- node_cache[:ORPort][start_index] = r0
1097
-
1098
- r0
1099
- end
1100
-
1101
- def _nt_DirPort
1102
- start_index = index
1103
- if node_cache[:DirPort].has_key?(index)
1104
- cached = node_cache[:DirPort][index]
1105
- if cached
1106
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1107
- @index = cached.interval.end
1108
- end
1109
- return cached
1110
- end
1111
-
1112
- r0 = _nt_Port
1113
-
1114
- node_cache[:DirPort][start_index] = r0
1115
-
1116
- r0
1117
- end
1118
-
1119
- def _nt_SP
1120
- start_index = index
1121
- if node_cache[:SP].has_key?(index)
1122
- cached = node_cache[:SP][index]
1123
- if cached
1124
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1125
- @index = cached.interval.end
1126
- end
1127
- return cached
1128
- end
1129
-
1130
- if has_terminal?(" ", false, index)
1131
- r0 = instantiate_node(SyntaxNode,input, index...(index + 1))
1132
- @index += 1
1133
- else
1134
- terminal_parse_failure(" ")
1135
- r0 = nil
1136
- end
1137
-
1138
- node_cache[:SP][start_index] = r0
1139
-
1140
- r0
1141
- end
1142
-
1143
- def _nt_NL
1144
- start_index = index
1145
- if node_cache[:NL].has_key?(index)
1146
- cached = node_cache[:NL][index]
1147
- if cached
1148
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1149
- @index = cached.interval.end
1150
- end
1151
- return cached
1152
- end
1153
-
1154
- if has_terminal?("\r\n", false, index)
1155
- r0 = instantiate_node(SyntaxNode,input, index...(index + 2))
1156
- @index += 2
1157
- else
1158
- terminal_parse_failure("\r\n")
1159
- r0 = nil
1160
- end
1161
-
1162
- node_cache[:NL][start_index] = r0
1163
-
1164
- r0
1165
- end
1166
-
1167
- def _nt_ALPHA
1168
- start_index = index
1169
- if node_cache[:ALPHA].has_key?(index)
1170
- cached = node_cache[:ALPHA][index]
1171
- if cached
1172
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1173
- @index = cached.interval.end
1174
- end
1175
- return cached
1176
- end
1177
-
1178
- i0 = index
1179
- if has_terminal?('\G[A-Z]', true, index)
1180
- r1 = true
1181
- @index += 1
1182
- else
1183
- r1 = nil
1184
- end
1185
- if r1
1186
- r0 = r1
1187
- else
1188
- if has_terminal?('\G[a-z]', true, index)
1189
- r2 = true
1190
- @index += 1
1191
- else
1192
- r2 = nil
1193
- end
1194
- if r2
1195
- r0 = r2
1196
- else
1197
- @index = i0
1198
- r0 = nil
1199
- end
1200
- end
1201
-
1202
- node_cache[:ALPHA][start_index] = r0
1203
-
1204
- r0
1205
- end
1206
-
1207
- def _nt_DIGIT
1208
- start_index = index
1209
- if node_cache[:DIGIT].has_key?(index)
1210
- cached = node_cache[:DIGIT][index]
1211
- if cached
1212
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1213
- @index = cached.interval.end
1214
- end
1215
- return cached
1216
- end
1217
-
1218
- if has_terminal?('\G[0-9]', true, index)
1219
- r0 = instantiate_node(SyntaxNode,input, index...(index + 1))
1220
- @index += 1
1221
- else
1222
- r0 = nil
1223
- end
1224
-
1225
- node_cache[:DIGIT][start_index] = r0
1226
-
1227
- r0
1228
- end
1229
-
1230
- def _nt_HEXDIG
1231
- start_index = index
1232
- if node_cache[:HEXDIG].has_key?(index)
1233
- cached = node_cache[:HEXDIG][index]
1234
- if cached
1235
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1236
- @index = cached.interval.end
1237
- end
1238
- return cached
1239
- end
1240
-
1241
- i0 = index
1242
- r1 = _nt_DIGIT
1243
- if r1
1244
- r0 = r1
1245
- else
1246
- if has_terminal?("A", false, index)
1247
- r2 = instantiate_node(SyntaxNode,input, index...(index + 1))
1248
- @index += 1
1249
- else
1250
- terminal_parse_failure("A")
1251
- r2 = nil
1252
- end
1253
- if r2
1254
- r0 = r2
1255
- else
1256
- if has_terminal?("B", false, index)
1257
- r3 = instantiate_node(SyntaxNode,input, index...(index + 1))
1258
- @index += 1
1259
- else
1260
- terminal_parse_failure("B")
1261
- r3 = nil
1262
- end
1263
- if r3
1264
- r0 = r3
1265
- else
1266
- if has_terminal?("C", false, index)
1267
- r4 = instantiate_node(SyntaxNode,input, index...(index + 1))
1268
- @index += 1
1269
- else
1270
- terminal_parse_failure("C")
1271
- r4 = nil
1272
- end
1273
- if r4
1274
- r0 = r4
1275
- else
1276
- if has_terminal?("D", false, index)
1277
- r5 = instantiate_node(SyntaxNode,input, index...(index + 1))
1278
- @index += 1
1279
- else
1280
- terminal_parse_failure("D")
1281
- r5 = nil
1282
- end
1283
- if r5
1284
- r0 = r5
1285
- else
1286
- if has_terminal?("E", false, index)
1287
- r6 = instantiate_node(SyntaxNode,input, index...(index + 1))
1288
- @index += 1
1289
- else
1290
- terminal_parse_failure("E")
1291
- r6 = nil
1292
- end
1293
- if r6
1294
- r0 = r6
1295
- else
1296
- if has_terminal?("F", false, index)
1297
- r7 = instantiate_node(SyntaxNode,input, index...(index + 1))
1298
- @index += 1
1299
- else
1300
- terminal_parse_failure("F")
1301
- r7 = nil
1302
- end
1303
- if r7
1304
- r0 = r7
1305
- else
1306
- @index = i0
1307
- r0 = nil
1308
- end
1309
- end
1310
- end
1311
- end
1312
- end
1313
- end
1314
- end
1315
-
1316
- node_cache[:HEXDIG][start_index] = r0
1317
-
1318
- r0
1319
- end
1320
-
1321
- def _nt_IDChar
1322
- start_index = index
1323
- if node_cache[:IDChar].has_key?(index)
1324
- cached = node_cache[:IDChar][index]
1325
- if cached
1326
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1327
- @index = cached.interval.end
1328
- end
1329
- return cached
1330
- end
1331
-
1332
- i0 = index
1333
- r1 = _nt_ALPHA
1334
- if r1
1335
- r0 = r1
1336
- else
1337
- r2 = _nt_DIGIT
1338
- if r2
1339
- r0 = r2
1340
- else
1341
- @index = i0
1342
- r0 = nil
1343
- end
1344
- end
1345
-
1346
- node_cache[:IDChar][start_index] = r0
1347
-
1348
- r0
1349
- end
1350
-
1351
- def _nt_NicknameChar
1352
- start_index = index
1353
- if node_cache[:NicknameChar].has_key?(index)
1354
- cached = node_cache[:NicknameChar][index]
1355
- if cached
1356
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1357
- @index = cached.interval.end
1358
- end
1359
- return cached
1360
- end
1361
-
1362
- i0 = index
1363
- if has_terminal?('\G[A-Z]', true, index)
1364
- r1 = true
1365
- @index += 1
1366
- else
1367
- r1 = nil
1368
- end
1369
- if r1
1370
- r0 = r1
1371
- else
1372
- if has_terminal?('\G[a-z]', true, index)
1373
- r2 = true
1374
- @index += 1
1375
- else
1376
- r2 = nil
1377
- end
1378
- if r2
1379
- r0 = r2
1380
- else
1381
- if has_terminal?('\G[0-9]', true, index)
1382
- r3 = true
1383
- @index += 1
1384
- else
1385
- r3 = nil
1386
- end
1387
- if r3
1388
- r0 = r3
1389
- else
1390
- @index = i0
1391
- r0 = nil
1392
- end
1393
- end
1394
- end
1395
-
1396
- node_cache[:NicknameChar][start_index] = r0
1397
-
1398
- r0
1399
- end
1400
-
1401
- def _nt_Nickname
1402
- start_index = index
1403
- if node_cache[:Nickname].has_key?(index)
1404
- cached = node_cache[:Nickname][index]
1405
- if cached
1406
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1407
- @index = cached.interval.end
1408
- end
1409
- return cached
1410
- end
1411
-
1412
- s0, i0 = [], index
1413
- loop do
1414
- r1 = _nt_NicknameChar
1415
- if r1
1416
- s0 << r1
1417
- else
1418
- break
1419
- end
1420
- if s0.size == 19
1421
- break
1422
- end
1423
- end
1424
- if s0.size < 1
1425
- @index = i0
1426
- r0 = nil
1427
- else
1428
- r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
1429
- end
1430
-
1431
- node_cache[:Nickname][start_index] = r0
1432
-
1433
- r0
1434
- end
1435
-
1436
- module Fingerprint0
1437
- end
1438
-
1439
- def _nt_Fingerprint
1440
- start_index = index
1441
- if node_cache[:Fingerprint].has_key?(index)
1442
- cached = node_cache[:Fingerprint][index]
1443
- if cached
1444
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1445
- @index = cached.interval.end
1446
- end
1447
- return cached
1448
- end
1449
-
1450
- i0, s0 = index, []
1451
- if has_terminal?("$", false, index)
1452
- r1 = instantiate_node(SyntaxNode,input, index...(index + 1))
1453
- @index += 1
1454
- else
1455
- terminal_parse_failure("$")
1456
- r1 = nil
1457
- end
1458
- s0 << r1
1459
- if r1
1460
- s2, i2 = [], index
1461
- loop do
1462
- r3 = _nt_HEXDIG
1463
- if r3
1464
- s2 << r3
1465
- else
1466
- break
1467
- end
1468
- if s2.size == 40
1469
- break
1470
- end
1471
- end
1472
- if s2.size < 40
1473
- @index = i2
1474
- r2 = nil
1475
- else
1476
- r2 = instantiate_node(SyntaxNode,input, i2...index, s2)
1477
- end
1478
- s0 << r2
1479
- end
1480
- if s0.last
1481
- r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
1482
- r0.extend(Fingerprint0)
1483
- else
1484
- @index = i0
1485
- r0 = nil
1486
- end
1487
-
1488
- node_cache[:Fingerprint][start_index] = r0
1489
-
1490
- r0
1491
- end
1492
-
1493
- def _nt_ServerID
1494
- start_index = index
1495
- if node_cache[:ServerID].has_key?(index)
1496
- cached = node_cache[:ServerID][index]
1497
- if cached
1498
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1499
- @index = cached.interval.end
1500
- end
1501
- return cached
1502
- end
1503
-
1504
- i0 = index
1505
- r1 = _nt_Nickname
1506
- if r1
1507
- r0 = r1
1508
- else
1509
- r2 = _nt_Fingerprint
1510
- if r2
1511
- r0 = r2
1512
- else
1513
- @index = i0
1514
- r0 = nil
1515
- end
1516
- end
1517
-
1518
- node_cache[:ServerID][start_index] = r0
1519
-
1520
- r0
1521
- end
1522
-
1523
- module LongName0
1524
- def f
1525
- elements[0]
1526
- end
1527
-
1528
- def n
1529
- elements[2]
1530
- end
1531
- end
1532
-
1533
- def _nt_LongName
1534
- start_index = index
1535
- if node_cache[:LongName].has_key?(index)
1536
- cached = node_cache[:LongName][index]
1537
- if cached
1538
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1539
- @index = cached.interval.end
1540
- end
1541
- return cached
1542
- end
1543
-
1544
- i0 = index
1545
- i1, s1 = index, []
1546
- r2 = _nt_Fingerprint
1547
- s1 << r2
1548
- if r2
1549
- if has_terminal?("=", false, index)
1550
- r3 = instantiate_node(SyntaxNode,input, index...(index + 1))
1551
- @index += 1
1552
- else
1553
- terminal_parse_failure("=")
1554
- r3 = nil
1555
- end
1556
- s1 << r3
1557
- if r3
1558
- r4 = _nt_Nickname
1559
- s1 << r4
1560
- end
1561
- end
1562
- if s1.last
1563
- r1 = instantiate_node(SyntaxNode,input, i1...index, s1)
1564
- r1.extend(LongName0)
1565
- else
1566
- @index = i1
1567
- r1 = nil
1568
- end
1569
- if r1
1570
- r0 = r1
1571
- else
1572
- r5 = _nt_Fingerprint
1573
- if r5
1574
- r0 = r5
1575
- else
1576
- @index = i0
1577
- r0 = nil
1578
- end
1579
- end
1580
-
1581
- node_cache[:LongName][start_index] = r0
1582
-
1583
- r0
1584
- end
1585
-
1586
- def _nt_ServerSpec
1587
- start_index = index
1588
- if node_cache[:ServerSpec].has_key?(index)
1589
- cached = node_cache[:ServerSpec][index]
1590
- if cached
1591
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1592
- @index = cached.interval.end
1593
- end
1594
- return cached
1595
- end
1596
-
1597
- i0 = index
1598
- r1 = _nt_LongName
1599
- if r1
1600
- r0 = r1
1601
- else
1602
- r2 = _nt_Nickname
1603
- if r2
1604
- r0 = r2
1605
- else
1606
- @index = i0
1607
- r0 = nil
1608
- end
1609
- end
1610
-
1611
- node_cache[:ServerSpec][start_index] = r0
1612
-
1613
- r0
1614
- end
1615
-
1616
- def _nt_StreamID
1617
- start_index = index
1618
- if node_cache[:StreamID].has_key?(index)
1619
- cached = node_cache[:StreamID][index]
1620
- if cached
1621
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1622
- @index = cached.interval.end
1623
- end
1624
- return cached
1625
- end
1626
-
1627
- s0, i0 = [], index
1628
- loop do
1629
- r1 = _nt_IDChar
1630
- if r1
1631
- s0 << r1
1632
- else
1633
- break
1634
- end
1635
- if s0.size == 16
1636
- break
1637
- end
1638
- end
1639
- if s0.size < 1
1640
- @index = i0
1641
- r0 = nil
1642
- else
1643
- r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
1644
- end
1645
-
1646
- node_cache[:StreamID][start_index] = r0
1647
-
1648
- r0
1649
- end
1650
-
1651
- def _nt_CircuitID
1652
- start_index = index
1653
- if node_cache[:CircuitID].has_key?(index)
1654
- cached = node_cache[:CircuitID][index]
1655
- if cached
1656
- cached = SyntaxNode.new(input, index...(index + 1)) if cached == true
1657
- @index = cached.interval.end
1658
- end
1659
- return cached
1660
- end
1661
-
1662
- s0, i0 = [], index
1663
- loop do
1664
- r1 = _nt_IDChar
1665
- if r1
1666
- s0 << r1
1667
- else
1668
- break
1669
- end
1670
- if s0.size == 16
1671
- break
1672
- end
1673
- end
1674
- if s0.size < 1
1675
- @index = i0
1676
- r0 = nil
1677
- else
1678
- r0 = instantiate_node(SyntaxNode,input, i0...index, s0)
1679
- end
1680
-
1681
- node_cache[:CircuitID][start_index] = r0
1682
-
1683
- r0
1684
- end
1685
-
1686
- end
1687
-
1688
- class CommonParser < Treetop::Runtime::CompiledParser
1689
- include Common
1690
- end
1691
-
1692
- end