gherkin 2.11.6 → 2.11.7
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.
- checksums.yaml +15 -0
- data/.travis.yml +0 -1
- data/Gemfile +1 -1
- data/History.md +13 -0
- data/README.md +10 -4
- data/examples/parse_and_output_json.rb +2 -2
- data/ext/gherkin_lexer_ar/gherkin_lexer_ar.c +494 -494
- data/ext/gherkin_lexer_bg/gherkin_lexer_bg.c +30 -30
- data/ext/gherkin_lexer_bm/gherkin_lexer_bm.c +30 -30
- data/ext/gherkin_lexer_ca/gherkin_lexer_ca.c +30 -30
- data/ext/gherkin_lexer_cs/gherkin_lexer_cs.c +30 -30
- data/ext/gherkin_lexer_cy_gb/gherkin_lexer_cy_gb.c +30 -30
- data/ext/gherkin_lexer_da/gherkin_lexer_da.c +30 -30
- data/ext/gherkin_lexer_de/gherkin_lexer_de.c +30 -30
- data/ext/gherkin_lexer_el/extconf.rb +6 -0
- data/ext/gherkin_lexer_el/gherkin_lexer_el.c +1977 -0
- data/ext/gherkin_lexer_en/gherkin_lexer_en.c +30 -30
- data/ext/gherkin_lexer_en_au/gherkin_lexer_en_au.c +30 -30
- data/ext/gherkin_lexer_en_lol/gherkin_lexer_en_lol.c +30 -30
- data/ext/gherkin_lexer_en_old/extconf.rb +6 -0
- data/ext/gherkin_lexer_en_old/gherkin_lexer_en_old.c +1309 -0
- data/ext/gherkin_lexer_en_pirate/gherkin_lexer_en_pirate.c +30 -30
- data/ext/gherkin_lexer_en_scouse/gherkin_lexer_en_scouse.c +30 -30
- data/ext/gherkin_lexer_en_tx/gherkin_lexer_en_tx.c +30 -30
- data/ext/gherkin_lexer_eo/gherkin_lexer_eo.c +30 -30
- data/ext/gherkin_lexer_es/gherkin_lexer_es.c +30 -30
- data/ext/gherkin_lexer_et/gherkin_lexer_et.c +30 -30
- data/ext/gherkin_lexer_fa/gherkin_lexer_fa.c +30 -30
- data/ext/gherkin_lexer_fi/gherkin_lexer_fi.c +30 -30
- data/ext/gherkin_lexer_fr/gherkin_lexer_fr.c +30 -30
- data/ext/gherkin_lexer_he/gherkin_lexer_he.c +30 -30
- data/ext/gherkin_lexer_hi/gherkin_lexer_hi.c +30 -30
- data/ext/gherkin_lexer_hr/gherkin_lexer_hr.c +30 -30
- data/ext/gherkin_lexer_hu/gherkin_lexer_hu.c +30 -30
- data/ext/gherkin_lexer_id/gherkin_lexer_id.c +30 -30
- data/ext/gherkin_lexer_is/gherkin_lexer_is.c +30 -30
- data/ext/gherkin_lexer_it/gherkin_lexer_it.c +30 -30
- data/ext/gherkin_lexer_ja/gherkin_lexer_ja.c +30 -30
- data/ext/gherkin_lexer_ko/gherkin_lexer_ko.c +30 -30
- data/ext/gherkin_lexer_lt/gherkin_lexer_lt.c +30 -30
- data/ext/gherkin_lexer_lu/gherkin_lexer_lu.c +30 -30
- data/ext/gherkin_lexer_lv/gherkin_lexer_lv.c +30 -30
- data/ext/gherkin_lexer_nl/gherkin_lexer_nl.c +30 -30
- data/ext/gherkin_lexer_no/gherkin_lexer_no.c +30 -30
- data/ext/gherkin_lexer_pl/gherkin_lexer_pl.c +30 -30
- data/ext/gherkin_lexer_pt/gherkin_lexer_pt.c +30 -30
- data/ext/gherkin_lexer_ro/gherkin_lexer_ro.c +30 -30
- data/ext/gherkin_lexer_ru/gherkin_lexer_ru.c +30 -30
- data/ext/gherkin_lexer_sk/gherkin_lexer_sk.c +30 -30
- data/ext/gherkin_lexer_sr_cyrl/gherkin_lexer_sr_cyrl.c +30 -30
- data/ext/gherkin_lexer_sr_latn/gherkin_lexer_sr_latn.c +617 -614
- data/ext/gherkin_lexer_sv/gherkin_lexer_sv.c +30 -30
- data/ext/gherkin_lexer_tl/gherkin_lexer_tl.c +30 -30
- data/ext/gherkin_lexer_tr/gherkin_lexer_tr.c +30 -30
- data/ext/gherkin_lexer_tt/gherkin_lexer_tt.c +30 -30
- data/ext/gherkin_lexer_uk/gherkin_lexer_uk.c +30 -30
- data/ext/gherkin_lexer_uz/gherkin_lexer_uz.c +622 -614
- data/ext/gherkin_lexer_vi/gherkin_lexer_vi.c +30 -30
- data/ext/gherkin_lexer_zh_cn/gherkin_lexer_zh_cn.c +30 -30
- data/ext/gherkin_lexer_zh_tw/gherkin_lexer_zh_tw.c +30 -30
- data/features/.cucumber/stepdefs.json +66 -66
- data/features/step_definitions/json_formatter_steps.rb +4 -4
- data/features/step_definitions/json_parser_steps.rb +2 -1
- data/features/support/env.rb +2 -3
- data/gherkin.gemspec +8 -6
- data/lib/gherkin/formatter/json_formatter.rb +5 -5
- data/lib/gherkin/formatter/tag_filter.rb +2 -2
- data/lib/gherkin/i18n.json +28 -0
- data/lib/gherkin/i18n.rb +6 -6
- data/lib/gherkin/json_parser.rb +4 -4
- data/lib/gherkin/native/java.rb +2 -2
- data/lib/gherkin/parser/parser.rb +1 -0
- data/lib/gherkin/platform.rb +12 -0
- data/lib/gherkin/tag_expression.rb +7 -1
- data/spec/gherkin/formatter/json_formatter_spec.rb +74 -3
- data/spec/gherkin/i18n_spec.rb +2 -0
- data/spec/gherkin/json_parser_spec.rb +11 -10
- data/spec/gherkin/parser/parser_spec.rb +1 -1
- data/spec/gherkin/tag_expression_spec.rb +19 -15
- data/spec/spec_helper.rb +4 -1
- data/tasks/rspec.rake +1 -2
- metadata +139 -226
- data/lib/gherkin/lexer/tl.rb +0 -1723
- data/lib/gherkin/lexer/tt.rb +0 -1640
- data/spec/gherkin/output_stream_string_io.rb +0 -20
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
#line 1 "/
|
|
2
|
+
#line 1 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
3
3
|
#include <assert.h>
|
|
4
4
|
#include <ruby.h>
|
|
5
5
|
|
|
@@ -80,7 +80,7 @@ static VALUE rb_eGherkinLexingError;
|
|
|
80
80
|
lexer->line_number)
|
|
81
81
|
|
|
82
82
|
|
|
83
|
-
#line 254 "/
|
|
83
|
+
#line 254 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
84
84
|
|
|
85
85
|
|
|
86
86
|
/** Data **/
|
|
@@ -1087,7 +1087,7 @@ static const int lexer_error = 0;
|
|
|
1087
1087
|
static const int lexer_en_main = 1;
|
|
1088
1088
|
|
|
1089
1089
|
|
|
1090
|
-
#line 258 "/
|
|
1090
|
+
#line 258 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1091
1091
|
|
|
1092
1092
|
static VALUE
|
|
1093
1093
|
unindent(VALUE con, int start_col)
|
|
@@ -1260,7 +1260,7 @@ static VALUE CLexer_scan(VALUE self, VALUE input)
|
|
|
1260
1260
|
cs = lexer_start;
|
|
1261
1261
|
}
|
|
1262
1262
|
|
|
1263
|
-
#line 425 "/
|
|
1263
|
+
#line 425 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1264
1264
|
|
|
1265
1265
|
#line 1266 "ext/gherkin_lexer_bg/gherkin_lexer_bg.c"
|
|
1266
1266
|
{
|
|
@@ -1336,7 +1336,7 @@ _match:
|
|
|
1336
1336
|
switch ( *_acts++ )
|
|
1337
1337
|
{
|
|
1338
1338
|
case 0:
|
|
1339
|
-
#line 83 "/
|
|
1339
|
+
#line 83 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1340
1340
|
{
|
|
1341
1341
|
MARK(content_start, p);
|
|
1342
1342
|
lexer->current_line = lexer->line_number;
|
|
@@ -1344,20 +1344,20 @@ _match:
|
|
|
1344
1344
|
}
|
|
1345
1345
|
break;
|
|
1346
1346
|
case 1:
|
|
1347
|
-
#line 89 "/
|
|
1347
|
+
#line 89 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1348
1348
|
{
|
|
1349
1349
|
MARK(content_start, p);
|
|
1350
1350
|
}
|
|
1351
1351
|
break;
|
|
1352
1352
|
case 2:
|
|
1353
|
-
#line 93 "/
|
|
1353
|
+
#line 93 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1354
1354
|
{
|
|
1355
1355
|
lexer->current_line = lexer->line_number;
|
|
1356
1356
|
lexer->start_col = p - data - lexer->last_newline;
|
|
1357
1357
|
}
|
|
1358
1358
|
break;
|
|
1359
1359
|
case 3:
|
|
1360
|
-
#line 98 "/
|
|
1360
|
+
#line 98 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1361
1361
|
{
|
|
1362
1362
|
int len = LEN(content_start, PTR_TO(final_newline));
|
|
1363
1363
|
int type_len = LEN(docstring_content_type_start, PTR_TO(docstring_content_type_end));
|
|
@@ -1369,49 +1369,49 @@ _match:
|
|
|
1369
1369
|
}
|
|
1370
1370
|
break;
|
|
1371
1371
|
case 4:
|
|
1372
|
-
#line 108 "/
|
|
1372
|
+
#line 108 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1373
1373
|
{
|
|
1374
1374
|
MARK(docstring_content_type_start, p);
|
|
1375
1375
|
}
|
|
1376
1376
|
break;
|
|
1377
1377
|
case 5:
|
|
1378
|
-
#line 112 "/
|
|
1378
|
+
#line 112 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1379
1379
|
{
|
|
1380
1380
|
MARK(docstring_content_type_end, p);
|
|
1381
1381
|
}
|
|
1382
1382
|
break;
|
|
1383
1383
|
case 6:
|
|
1384
|
-
#line 116 "/
|
|
1384
|
+
#line 116 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1385
1385
|
{
|
|
1386
1386
|
STORE_KW_END_CON(feature);
|
|
1387
1387
|
}
|
|
1388
1388
|
break;
|
|
1389
1389
|
case 7:
|
|
1390
|
-
#line 120 "/
|
|
1390
|
+
#line 120 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1391
1391
|
{
|
|
1392
1392
|
STORE_KW_END_CON(background);
|
|
1393
1393
|
}
|
|
1394
1394
|
break;
|
|
1395
1395
|
case 8:
|
|
1396
|
-
#line 124 "/
|
|
1396
|
+
#line 124 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1397
1397
|
{
|
|
1398
1398
|
STORE_KW_END_CON(scenario);
|
|
1399
1399
|
}
|
|
1400
1400
|
break;
|
|
1401
1401
|
case 9:
|
|
1402
|
-
#line 128 "/
|
|
1402
|
+
#line 128 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1403
1403
|
{
|
|
1404
1404
|
STORE_KW_END_CON(scenario_outline);
|
|
1405
1405
|
}
|
|
1406
1406
|
break;
|
|
1407
1407
|
case 10:
|
|
1408
|
-
#line 132 "/
|
|
1408
|
+
#line 132 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1409
1409
|
{
|
|
1410
1410
|
STORE_KW_END_CON(examples);
|
|
1411
1411
|
}
|
|
1412
1412
|
break;
|
|
1413
1413
|
case 11:
|
|
1414
|
-
#line 136 "/
|
|
1414
|
+
#line 136 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1415
1415
|
{
|
|
1416
1416
|
store_kw_con(listener, "step",
|
|
1417
1417
|
PTR_TO(keyword_start), LEN(keyword_start, PTR_TO(keyword_end)),
|
|
@@ -1420,34 +1420,34 @@ _match:
|
|
|
1420
1420
|
}
|
|
1421
1421
|
break;
|
|
1422
1422
|
case 12:
|
|
1423
|
-
#line 143 "/
|
|
1423
|
+
#line 143 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1424
1424
|
{
|
|
1425
1425
|
STORE_ATTR(comment);
|
|
1426
1426
|
lexer->mark = 0;
|
|
1427
1427
|
}
|
|
1428
1428
|
break;
|
|
1429
1429
|
case 13:
|
|
1430
|
-
#line 148 "/
|
|
1430
|
+
#line 148 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1431
1431
|
{
|
|
1432
1432
|
STORE_ATTR(tag);
|
|
1433
1433
|
lexer->mark = 0;
|
|
1434
1434
|
}
|
|
1435
1435
|
break;
|
|
1436
1436
|
case 14:
|
|
1437
|
-
#line 153 "/
|
|
1437
|
+
#line 153 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1438
1438
|
{
|
|
1439
1439
|
lexer->line_number += 1;
|
|
1440
1440
|
MARK(final_newline, p);
|
|
1441
1441
|
}
|
|
1442
1442
|
break;
|
|
1443
1443
|
case 15:
|
|
1444
|
-
#line 158 "/
|
|
1444
|
+
#line 158 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1445
1445
|
{
|
|
1446
1446
|
MARK(last_newline, p + 1);
|
|
1447
1447
|
}
|
|
1448
1448
|
break;
|
|
1449
1449
|
case 16:
|
|
1450
|
-
#line 162 "/
|
|
1450
|
+
#line 162 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1451
1451
|
{
|
|
1452
1452
|
if (lexer->mark == 0) {
|
|
1453
1453
|
MARK(mark, p);
|
|
@@ -1455,7 +1455,7 @@ _match:
|
|
|
1455
1455
|
}
|
|
1456
1456
|
break;
|
|
1457
1457
|
case 17:
|
|
1458
|
-
#line 168 "/
|
|
1458
|
+
#line 168 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1459
1459
|
{
|
|
1460
1460
|
MARK(keyword_end, p);
|
|
1461
1461
|
MARK(keyword_start, PTR_TO(mark));
|
|
@@ -1464,13 +1464,13 @@ _match:
|
|
|
1464
1464
|
}
|
|
1465
1465
|
break;
|
|
1466
1466
|
case 18:
|
|
1467
|
-
#line 175 "/
|
|
1467
|
+
#line 175 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1468
1468
|
{
|
|
1469
1469
|
MARK(content_end, p);
|
|
1470
1470
|
}
|
|
1471
1471
|
break;
|
|
1472
1472
|
case 19:
|
|
1473
|
-
#line 179 "/
|
|
1473
|
+
#line 179 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1474
1474
|
{
|
|
1475
1475
|
p = p - 1;
|
|
1476
1476
|
lexer->current_line = lexer->line_number;
|
|
@@ -1478,13 +1478,13 @@ _match:
|
|
|
1478
1478
|
}
|
|
1479
1479
|
break;
|
|
1480
1480
|
case 20:
|
|
1481
|
-
#line 185 "/
|
|
1481
|
+
#line 185 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1482
1482
|
{
|
|
1483
1483
|
MARK(content_start, p);
|
|
1484
1484
|
}
|
|
1485
1485
|
break;
|
|
1486
1486
|
case 21:
|
|
1487
|
-
#line 189 "/
|
|
1487
|
+
#line 189 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1488
1488
|
{
|
|
1489
1489
|
VALUE re_pipe, re_newline, re_backslash;
|
|
1490
1490
|
VALUE con = ENCODED_STR_NEW(PTR_TO(content_start), LEN(content_start, p));
|
|
@@ -1500,13 +1500,13 @@ _match:
|
|
|
1500
1500
|
}
|
|
1501
1501
|
break;
|
|
1502
1502
|
case 22:
|
|
1503
|
-
#line 203 "/
|
|
1503
|
+
#line 203 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1504
1504
|
{
|
|
1505
1505
|
rb_funcall(listener, rb_intern("row"), 2, current_row, INT2FIX(lexer->current_line));
|
|
1506
1506
|
}
|
|
1507
1507
|
break;
|
|
1508
1508
|
case 23:
|
|
1509
|
-
#line 207 "/
|
|
1509
|
+
#line 207 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1510
1510
|
{
|
|
1511
1511
|
int line;
|
|
1512
1512
|
if (cs < lexer_first_final) {
|
|
@@ -1569,7 +1569,7 @@ _again:
|
|
|
1569
1569
|
while ( __nacts-- > 0 ) {
|
|
1570
1570
|
switch ( *__acts++ ) {
|
|
1571
1571
|
case 23:
|
|
1572
|
-
#line 207 "/
|
|
1572
|
+
#line 207 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1573
1573
|
{
|
|
1574
1574
|
int line;
|
|
1575
1575
|
if (cs < lexer_first_final) {
|
|
@@ -1623,7 +1623,7 @@ _again:
|
|
|
1623
1623
|
_out: {}
|
|
1624
1624
|
}
|
|
1625
1625
|
|
|
1626
|
-
#line 426 "/
|
|
1626
|
+
#line 426 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bg.c.rl"
|
|
1627
1627
|
|
|
1628
1628
|
assert(p <= pe && "data overflow after parsing execute");
|
|
1629
1629
|
assert(lexer->content_start <= len && "content starts after data end");
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
#line 1 "/
|
|
2
|
+
#line 1 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
3
3
|
#include <assert.h>
|
|
4
4
|
#include <ruby.h>
|
|
5
5
|
|
|
@@ -80,7 +80,7 @@ static VALUE rb_eGherkinLexingError;
|
|
|
80
80
|
lexer->line_number)
|
|
81
81
|
|
|
82
82
|
|
|
83
|
-
#line 254 "/
|
|
83
|
+
#line 254 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
84
84
|
|
|
85
85
|
|
|
86
86
|
/** Data **/
|
|
@@ -808,7 +808,7 @@ static const int lexer_error = 0;
|
|
|
808
808
|
static const int lexer_en_main = 1;
|
|
809
809
|
|
|
810
810
|
|
|
811
|
-
#line 258 "/
|
|
811
|
+
#line 258 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
812
812
|
|
|
813
813
|
static VALUE
|
|
814
814
|
unindent(VALUE con, int start_col)
|
|
@@ -981,7 +981,7 @@ static VALUE CLexer_scan(VALUE self, VALUE input)
|
|
|
981
981
|
cs = lexer_start;
|
|
982
982
|
}
|
|
983
983
|
|
|
984
|
-
#line 425 "/
|
|
984
|
+
#line 425 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
985
985
|
|
|
986
986
|
#line 987 "ext/gherkin_lexer_bm/gherkin_lexer_bm.c"
|
|
987
987
|
{
|
|
@@ -1057,7 +1057,7 @@ _match:
|
|
|
1057
1057
|
switch ( *_acts++ )
|
|
1058
1058
|
{
|
|
1059
1059
|
case 0:
|
|
1060
|
-
#line 83 "/
|
|
1060
|
+
#line 83 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1061
1061
|
{
|
|
1062
1062
|
MARK(content_start, p);
|
|
1063
1063
|
lexer->current_line = lexer->line_number;
|
|
@@ -1065,20 +1065,20 @@ _match:
|
|
|
1065
1065
|
}
|
|
1066
1066
|
break;
|
|
1067
1067
|
case 1:
|
|
1068
|
-
#line 89 "/
|
|
1068
|
+
#line 89 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1069
1069
|
{
|
|
1070
1070
|
MARK(content_start, p);
|
|
1071
1071
|
}
|
|
1072
1072
|
break;
|
|
1073
1073
|
case 2:
|
|
1074
|
-
#line 93 "/
|
|
1074
|
+
#line 93 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1075
1075
|
{
|
|
1076
1076
|
lexer->current_line = lexer->line_number;
|
|
1077
1077
|
lexer->start_col = p - data - lexer->last_newline;
|
|
1078
1078
|
}
|
|
1079
1079
|
break;
|
|
1080
1080
|
case 3:
|
|
1081
|
-
#line 98 "/
|
|
1081
|
+
#line 98 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1082
1082
|
{
|
|
1083
1083
|
int len = LEN(content_start, PTR_TO(final_newline));
|
|
1084
1084
|
int type_len = LEN(docstring_content_type_start, PTR_TO(docstring_content_type_end));
|
|
@@ -1090,49 +1090,49 @@ _match:
|
|
|
1090
1090
|
}
|
|
1091
1091
|
break;
|
|
1092
1092
|
case 4:
|
|
1093
|
-
#line 108 "/
|
|
1093
|
+
#line 108 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1094
1094
|
{
|
|
1095
1095
|
MARK(docstring_content_type_start, p);
|
|
1096
1096
|
}
|
|
1097
1097
|
break;
|
|
1098
1098
|
case 5:
|
|
1099
|
-
#line 112 "/
|
|
1099
|
+
#line 112 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1100
1100
|
{
|
|
1101
1101
|
MARK(docstring_content_type_end, p);
|
|
1102
1102
|
}
|
|
1103
1103
|
break;
|
|
1104
1104
|
case 6:
|
|
1105
|
-
#line 116 "/
|
|
1105
|
+
#line 116 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1106
1106
|
{
|
|
1107
1107
|
STORE_KW_END_CON(feature);
|
|
1108
1108
|
}
|
|
1109
1109
|
break;
|
|
1110
1110
|
case 7:
|
|
1111
|
-
#line 120 "/
|
|
1111
|
+
#line 120 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1112
1112
|
{
|
|
1113
1113
|
STORE_KW_END_CON(background);
|
|
1114
1114
|
}
|
|
1115
1115
|
break;
|
|
1116
1116
|
case 8:
|
|
1117
|
-
#line 124 "/
|
|
1117
|
+
#line 124 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1118
1118
|
{
|
|
1119
1119
|
STORE_KW_END_CON(scenario);
|
|
1120
1120
|
}
|
|
1121
1121
|
break;
|
|
1122
1122
|
case 9:
|
|
1123
|
-
#line 128 "/
|
|
1123
|
+
#line 128 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1124
1124
|
{
|
|
1125
1125
|
STORE_KW_END_CON(scenario_outline);
|
|
1126
1126
|
}
|
|
1127
1127
|
break;
|
|
1128
1128
|
case 10:
|
|
1129
|
-
#line 132 "/
|
|
1129
|
+
#line 132 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1130
1130
|
{
|
|
1131
1131
|
STORE_KW_END_CON(examples);
|
|
1132
1132
|
}
|
|
1133
1133
|
break;
|
|
1134
1134
|
case 11:
|
|
1135
|
-
#line 136 "/
|
|
1135
|
+
#line 136 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1136
1136
|
{
|
|
1137
1137
|
store_kw_con(listener, "step",
|
|
1138
1138
|
PTR_TO(keyword_start), LEN(keyword_start, PTR_TO(keyword_end)),
|
|
@@ -1141,34 +1141,34 @@ _match:
|
|
|
1141
1141
|
}
|
|
1142
1142
|
break;
|
|
1143
1143
|
case 12:
|
|
1144
|
-
#line 143 "/
|
|
1144
|
+
#line 143 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1145
1145
|
{
|
|
1146
1146
|
STORE_ATTR(comment);
|
|
1147
1147
|
lexer->mark = 0;
|
|
1148
1148
|
}
|
|
1149
1149
|
break;
|
|
1150
1150
|
case 13:
|
|
1151
|
-
#line 148 "/
|
|
1151
|
+
#line 148 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1152
1152
|
{
|
|
1153
1153
|
STORE_ATTR(tag);
|
|
1154
1154
|
lexer->mark = 0;
|
|
1155
1155
|
}
|
|
1156
1156
|
break;
|
|
1157
1157
|
case 14:
|
|
1158
|
-
#line 153 "/
|
|
1158
|
+
#line 153 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1159
1159
|
{
|
|
1160
1160
|
lexer->line_number += 1;
|
|
1161
1161
|
MARK(final_newline, p);
|
|
1162
1162
|
}
|
|
1163
1163
|
break;
|
|
1164
1164
|
case 15:
|
|
1165
|
-
#line 158 "/
|
|
1165
|
+
#line 158 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1166
1166
|
{
|
|
1167
1167
|
MARK(last_newline, p + 1);
|
|
1168
1168
|
}
|
|
1169
1169
|
break;
|
|
1170
1170
|
case 16:
|
|
1171
|
-
#line 162 "/
|
|
1171
|
+
#line 162 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1172
1172
|
{
|
|
1173
1173
|
if (lexer->mark == 0) {
|
|
1174
1174
|
MARK(mark, p);
|
|
@@ -1176,7 +1176,7 @@ _match:
|
|
|
1176
1176
|
}
|
|
1177
1177
|
break;
|
|
1178
1178
|
case 17:
|
|
1179
|
-
#line 168 "/
|
|
1179
|
+
#line 168 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1180
1180
|
{
|
|
1181
1181
|
MARK(keyword_end, p);
|
|
1182
1182
|
MARK(keyword_start, PTR_TO(mark));
|
|
@@ -1185,13 +1185,13 @@ _match:
|
|
|
1185
1185
|
}
|
|
1186
1186
|
break;
|
|
1187
1187
|
case 18:
|
|
1188
|
-
#line 175 "/
|
|
1188
|
+
#line 175 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1189
1189
|
{
|
|
1190
1190
|
MARK(content_end, p);
|
|
1191
1191
|
}
|
|
1192
1192
|
break;
|
|
1193
1193
|
case 19:
|
|
1194
|
-
#line 179 "/
|
|
1194
|
+
#line 179 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1195
1195
|
{
|
|
1196
1196
|
p = p - 1;
|
|
1197
1197
|
lexer->current_line = lexer->line_number;
|
|
@@ -1199,13 +1199,13 @@ _match:
|
|
|
1199
1199
|
}
|
|
1200
1200
|
break;
|
|
1201
1201
|
case 20:
|
|
1202
|
-
#line 185 "/
|
|
1202
|
+
#line 185 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1203
1203
|
{
|
|
1204
1204
|
MARK(content_start, p);
|
|
1205
1205
|
}
|
|
1206
1206
|
break;
|
|
1207
1207
|
case 21:
|
|
1208
|
-
#line 189 "/
|
|
1208
|
+
#line 189 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1209
1209
|
{
|
|
1210
1210
|
VALUE re_pipe, re_newline, re_backslash;
|
|
1211
1211
|
VALUE con = ENCODED_STR_NEW(PTR_TO(content_start), LEN(content_start, p));
|
|
@@ -1221,13 +1221,13 @@ _match:
|
|
|
1221
1221
|
}
|
|
1222
1222
|
break;
|
|
1223
1223
|
case 22:
|
|
1224
|
-
#line 203 "/
|
|
1224
|
+
#line 203 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1225
1225
|
{
|
|
1226
1226
|
rb_funcall(listener, rb_intern("row"), 2, current_row, INT2FIX(lexer->current_line));
|
|
1227
1227
|
}
|
|
1228
1228
|
break;
|
|
1229
1229
|
case 23:
|
|
1230
|
-
#line 207 "/
|
|
1230
|
+
#line 207 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1231
1231
|
{
|
|
1232
1232
|
int line;
|
|
1233
1233
|
if (cs < lexer_first_final) {
|
|
@@ -1290,7 +1290,7 @@ _again:
|
|
|
1290
1290
|
while ( __nacts-- > 0 ) {
|
|
1291
1291
|
switch ( *__acts++ ) {
|
|
1292
1292
|
case 23:
|
|
1293
|
-
#line 207 "/
|
|
1293
|
+
#line 207 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1294
1294
|
{
|
|
1295
1295
|
int line;
|
|
1296
1296
|
if (cs < lexer_first_final) {
|
|
@@ -1344,7 +1344,7 @@ _again:
|
|
|
1344
1344
|
_out: {}
|
|
1345
1345
|
}
|
|
1346
1346
|
|
|
1347
|
-
#line 426 "/
|
|
1347
|
+
#line 426 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/bm.c.rl"
|
|
1348
1348
|
|
|
1349
1349
|
assert(p <= pe && "data overflow after parsing execute");
|
|
1350
1350
|
assert(lexer->content_start <= len && "content starts after data end");
|