swissparser 0.11.1 → 1.0.0

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