swissparser 0.11.1 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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