@@ -15,53 +15,57 @@ static const char _mr_extractor_actions[] = {
1515
1616static const char _mr_extractor_key_offsets [] = {
1717 0 , 0 , 8 , 17 , 20 , 23 , 25 , 28 ,
18- 37 , 49 , 50 , 51 , 53 , 54
18+ 40 , 41 , 42 , 44 , 45 , 57 , 61
1919};
2020
2121static const char _mr_extractor_trans_keys [] = {
2222 46 , 95 , 48 , 57 , 65 , 90 , 97 , 122 ,
2323 46 , 61 , 95 , 48 , 57 , 65 , 90 , 97 ,
2424 122 , 69 , 67 , 68 , 32 , 48 , 57 , 48 ,
25- 57 , 32 , 48 , 57 , 32 , 46 , 95 , 48 ,
26- 57 , 65 , 90 , 97 , 122 , 0 , 32 , 46 ,
25+ 57 , 32 , 48 , 57 , 0 , 32 , 46 , 95 ,
26+ 9 , 13 , 48 , 57 , 65 , 90 , 97 , 122 ,
27+ 32 , 49 , 32 , 49 , 32 , 0 , 32 , 46 ,
2728 95 , 9 , 13 , 48 , 57 , 65 , 90 , 97 ,
28- 122 , 32 , 49 , 32 , 49 , 32 , 46 , 95 ,
29- 48 , 57 , 65 , 90 , 97 , 122 , 0
29+ 122 , 0 , 32 , 9 , 13 , 0 , 32 , 46 ,
30+ 95 , 9 , 13 , 48 , 57 , 65 , 90 , 97 ,
31+ 122 , 0
3032};
3133
3234static const char _mr_extractor_single_lengths [] = {
33- 0 , 2 , 3 , 1 , 1 , 0 , 1 , 3 ,
34- 4 , 1 , 1 , 2 , 1 , 2
35+ 0 , 2 , 3 , 1 , 1 , 0 , 1 , 4 ,
36+ 1 , 1 , 2 , 1 , 4 , 2 , 4
3537};
3638
3739static const char _mr_extractor_range_lengths [] = {
38- 0 , 3 , 3 , 1 , 1 , 1 , 1 , 3 ,
39- 4 , 0 , 0 , 0 , 0 , 3
40+ 0 , 3 , 3 , 1 , 1 , 1 , 1 , 4 ,
41+ 0 , 0 , 0 , 0 , 4 , 1 , 4
4042};
4143
4244static const char _mr_extractor_index_offsets [] = {
4345 0 , 0 , 6 , 13 , 16 , 19 , 21 , 24 ,
44- 31 , 40 , 42 , 44 , 47 , 49
46+ 33 , 35 , 37 , 40 , 42 , 51 , 55
4547};
4648
4749static const char _mr_extractor_indicies [] = {
4850 0 , 0 , 0 , 0 , 0 , 1 , 0 , 2 ,
4951 0 , 0 , 0 , 0 , 1 , 4 , 3 , 1 ,
5052 5 , 6 , 1 , 7 , 1 , 8 , 7 , 1 ,
51- 9 , 10 , 10 , 10 , 10 , 10 , 1 , 11 ,
52- 11 , 10 , 10 , 11 , 10 , 10 , 10 , 1 ,
53- 12 , 1 , 13 , 1 , 6 , 14 , 1 , 6 ,
54- 1 , 10 , 10 , 10 , 10 , 10 , 1 , 0
53+ 9 , 9 , 10 , 10 , 9 , 10 , 10 , 10 ,
54+ 1 , 11 , 1 , 12 , 1 , 6 , 13 , 1 ,
55+ 6 , 1 , 14 , 15 , 10 , 10 , 14 , 10 ,
56+ 10 , 10 , 1 , 14 , 14 , 14 , 1 , 14 ,
57+ 14 , 10 , 10 , 14 , 10 , 10 , 10 , 1 ,
58+ 0
5559};
5660
5761static const char _mr_extractor_trans_targs [] = {
58- 2 , 0 , 3 , 4 , 9 , 5 , 4 , 6 ,
59- 7 , 7 , 8 , 13 , 10 , 11 , 12
62+ 2 , 0 , 3 , 4 , 8 , 5 , 4 , 6 ,
63+ 12 , 14 , 7 , 9 , 10 , 11 , 13 , 12
6064};
6165
6266static const char _mr_extractor_trans_actions [] = {
6367 0 , 0 , 1 , 3 , 3 , 5 , 0 , 0 ,
64- 7 , 0 , 0 , 9 , 0 , 0 , 0
68+ 7 , 9 , 0 , 0 , 0 , 0 , 0 , 0
6569};
6670
6771static const int mr_extractor_start = 1 ;
@@ -91,14 +95,14 @@ readstat_error_t extract_mr_data(const char *line, mr_set_t *result) {
9195
9296 // Execute Ragel finite state machine (FSM)
9397
94- #line 95 "src/spss/readstat_sav_parse_mr_name.c"
98+ #line 99 "src/spss/readstat_sav_parse_mr_name.c"
9599 {
96100 cs = mr_extractor_start ;
97101 }
98102
99103#line 142 "src/spss/readstat_sav_parse_mr_name.rl"
100104
101- #line 102 "src/spss/readstat_sav_parse_mr_name.c"
105+ #line 106 "src/spss/readstat_sav_parse_mr_name.c"
102106 {
103107 int _klen ;
104108 unsigned int _trans ;
@@ -267,7 +271,7 @@ readstat_error_t extract_mr_data(const char *line, mr_set_t *result) {
267271 mr_subvariables [mr_subvar_count ++ ] = subvar ;
268272 }
269273 break ;
270- #line 271 "src/spss/readstat_sav_parse_mr_name.c"
274+ #line 275 "src/spss/readstat_sav_parse_mr_name.c"
271275 }
272276 }
273277
@@ -283,7 +287,7 @@ readstat_error_t extract_mr_data(const char *line, mr_set_t *result) {
283287#line 143 "src/spss/readstat_sav_parse_mr_name.rl"
284288
285289 // Check if FSM finished successfully
286- if (cs < 13 || p != pe ) {
290+ if (cs < 12 || p != pe ) {
287291 retval = READSTAT_ERROR_BAD_MR_STRING ;
288292 goto cleanup ;
289293 }
@@ -322,7 +326,7 @@ readstat_error_t parse_mr_line(const char *line, mr_set_t *result) {
322326}
323327
324328
325- #line 326 "src/spss/readstat_sav_parse_mr_name.c"
329+ #line 330 "src/spss/readstat_sav_parse_mr_name.c"
326330static const char _mr_parser_actions [] = {
327331 0 , 1 , 0
328332};
@@ -378,14 +382,14 @@ readstat_error_t parse_mr_string(const char *line, mr_set_t **mr_sets, size_t *n
378382 * n_mr_lines = 0 ;
379383
380384
381- #line 382 "src/spss/readstat_sav_parse_mr_name.c"
385+ #line 386 "src/spss/readstat_sav_parse_mr_name.c"
382386 {
383387 cs = mr_parser_start ;
384388 }
385389
386390#line 228 "src/spss/readstat_sav_parse_mr_name.rl"
387391
388- #line 389 "src/spss/readstat_sav_parse_mr_name.c"
392+ #line 393 "src/spss/readstat_sav_parse_mr_name.c"
389393 {
390394 int _klen ;
391395 unsigned int _trans ;
@@ -485,7 +489,7 @@ readstat_error_t parse_mr_string(const char *line, mr_set_t **mr_sets, size_t *n
485489 start = p + 1 ;
486490 }
487491 break ;
488- #line 489 "src/spss/readstat_sav_parse_mr_name.c"
492+ #line 493 "src/spss/readstat_sav_parse_mr_name.c"
489493 }
490494 }
491495
0 commit comments