summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/prebuilt/levcomp.tab.cc
diff options
context:
space:
mode:
Diffstat (limited to 'crawl-ref/source/prebuilt/levcomp.tab.cc')
-rw-r--r--crawl-ref/source/prebuilt/levcomp.tab.cc479
1 files changed, 237 insertions, 242 deletions
diff --git a/crawl-ref/source/prebuilt/levcomp.tab.cc b/crawl-ref/source/prebuilt/levcomp.tab.cc
index 783cc49869..593282c213 100644
--- a/crawl-ref/source/prebuilt/levcomp.tab.cc
+++ b/crawl-ref/source/prebuilt/levcomp.tab.cc
@@ -164,8 +164,6 @@ int yylex();
extern int yylineno;
-static bool start_marker_segment = false;
-
void yyerror(const char *e)
{
if (strstr(e, lc_desfile.c_str()) == e)
@@ -211,14 +209,14 @@ level_range set_range(const char *s, int start, int end)
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
typedef union YYSTYPE
-#line 48 "levcomp.ypp"
+#line 46 "levcomp.ypp"
{
int i;
const char *text;
raw_range range;
}
/* Line 187 of yacc.c. */
-#line 222 "levcomp.tab.c"
+#line 220 "levcomp.tab.c"
YYSTYPE;
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
@@ -231,7 +229,7 @@ typedef union YYSTYPE
/* Line 216 of yacc.c. */
-#line 235 "levcomp.tab.c"
+#line 233 "levcomp.tab.c"
#ifdef short
# undef short
@@ -451,11 +449,11 @@ union yyalloc
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 38
/* YYNNTS -- Number of nonterminals. */
-#define YYNNTS 69
+#define YYNNTS 65
/* YYNRULES -- Number of rules. */
-#define YYNRULES 123
+#define YYNRULES 118
/* YYNRULES -- Number of states. */
-#define YYNSTATES 141
+#define YYNSTATES 137
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
#define YYUNDEFTOK 2
@@ -512,11 +510,10 @@ static const yytype_uint16 yyprhs[] =
104, 106, 109, 110, 113, 115, 118, 119, 122, 124,
127, 128, 131, 133, 135, 138, 140, 143, 145, 148,
150, 153, 156, 158, 162, 164, 167, 168, 171, 173,
- 176, 179, 180, 184, 186, 187, 190, 192, 195, 197,
- 200, 202, 205, 207, 211, 213, 216, 218, 222, 224,
- 227, 229, 233, 235, 237, 240, 244, 246, 248, 250,
- 253, 257, 259, 261, 264, 266, 269, 272, 274, 277,
- 280, 282, 285, 287
+ 176, 179, 182, 185, 187, 190, 192, 195, 197, 201,
+ 203, 206, 208, 212, 214, 217, 219, 223, 225, 227,
+ 230, 234, 236, 238, 240, 243, 247, 249, 251, 254,
+ 256, 259, 262, 264, 267, 270, 272, 275, 277
};
/* YYRHS -- A `-1'-separated list of the rules' RHS. */
@@ -525,10 +522,10 @@ static const yytype_int8 yyrhs[] =
39, 0, -1, 40, -1, -1, 40, 41, -1, 43,
-1, 45, -1, 32, -1, 44, -1, 50, -1, 3,
33, -1, 48, 46, -1, -1, 46, 47, -1, 49,
- -1, 104, -1, 11, 33, -1, 99, -1, 100, -1,
- 101, -1, 102, -1, 103, -1, 96, -1, 93, -1,
- 77, -1, 90, -1, 87, -1, 82, -1, 83, -1,
- 84, -1, 69, -1, 72, -1, 75, -1, 76, -1,
+ -1, 100, -1, 11, 33, -1, 95, -1, 96, -1,
+ 97, -1, 98, -1, 99, -1, 92, -1, 89, -1,
+ 77, -1, 86, -1, 83, -1, 78, -1, 79, -1,
+ 80, -1, 69, -1, 72, -1, 75, -1, 76, -1,
65, -1, 67, -1, 66, -1, 68, -1, 53, -1,
62, -1, 56, -1, 59, -1, 42, -1, 21, 51,
-1, -1, 51, 52, -1, 37, -1, 21, 54, -1,
@@ -539,36 +536,34 @@ static const yytype_int8 yyrhs[] =
9, 33, -1, 8, -1, 8, 33, -1, 10, -1,
10, 33, -1, 4, 70, -1, 71, -1, 70, 30,
71, -1, 36, -1, 6, 73, -1, -1, 73, 74,
- -1, 33, -1, 26, 33, -1, 27, 33, -1, -1,
- 18, 78, 79, -1, 80, -1, -1, 80, 81, -1,
- 33, -1, 19, 85, -1, 28, -1, 28, 33, -1,
- 29, -1, 29, 33, -1, 86, -1, 85, 30, 86,
- -1, 36, -1, 24, 88, -1, 89, -1, 88, 30,
- 89, -1, 36, -1, 5, 91, -1, 92, -1, 92,
- 30, 91, -1, 36, -1, 17, -1, 17, 94, -1,
- 94, 30, 95, -1, 95, -1, 36, -1, 16, -1,
- 16, 97, -1, 98, 30, 97, -1, 98, -1, 35,
+ -1, 33, -1, 26, 33, -1, 27, 33, -1, 18,
+ 33, -1, 19, 81, -1, 28, -1, 28, 33, -1,
+ 29, -1, 29, 33, -1, 82, -1, 81, 30, 82,
+ -1, 36, -1, 24, 84, -1, 85, -1, 84, 30,
+ 85, -1, 36, -1, 5, 87, -1, 88, -1, 88,
+ 30, 87, -1, 36, -1, 17, -1, 17, 90, -1,
+ 90, 30, 91, -1, 91, -1, 36, -1, 16, -1,
+ 16, 93, -1, 94, 30, 93, -1, 94, -1, 35,
-1, 14, 33, -1, 12, -1, 12, 33, -1, 15,
31, -1, 13, -1, 13, 33, -1, 25, 33, -1,
- 105, -1, 105, 106, -1, 106, -1, 34, -1
+ 101, -1, 101, 102, -1, 102, -1, 34, -1
};
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const yytype_uint16 yyrline[] =
{
- 0, 69, 69, 72, 73, 76, 77, 80, 86, 87,
- 90, 100, 122, 123, 126, 127, 130, 154, 155, 156,
- 157, 158, 159, 160, 161, 162, 163, 164, 165, 166,
- 167, 168, 169, 170, 171, 172, 173, 174, 175, 176,
- 177, 178, 179, 182, 184, 185, 188, 193, 195, 196,
- 199, 204, 206, 207, 210, 215, 217, 218, 221, 226,
- 228, 229, 232, 237, 238, 246, 247, 255, 256, 264,
- 265, 273, 276, 277, 280, 288, 291, 292, 295, 304,
- 313, 323, 322, 333, 335, 336, 339, 351, 354, 355,
- 363, 364, 372, 373, 376, 385, 388, 389, 392, 401,
- 404, 405, 408, 417, 418, 421, 422, 425, 433, 434,
- 437, 438, 441, 450, 459, 460, 469, 477, 478, 487,
- 496, 499, 500, 503
+ 0, 67, 67, 70, 71, 74, 75, 78, 84, 85,
+ 88, 98, 120, 121, 124, 125, 128, 152, 153, 154,
+ 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
+ 165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
+ 175, 176, 177, 180, 182, 183, 186, 191, 193, 194,
+ 197, 202, 204, 205, 208, 213, 215, 216, 219, 224,
+ 226, 227, 230, 235, 236, 244, 245, 253, 254, 262,
+ 263, 271, 274, 275, 278, 286, 289, 290, 293, 302,
+ 311, 320, 353, 356, 357, 365, 366, 374, 375, 378,
+ 387, 390, 391, 394, 403, 406, 407, 410, 419, 420,
+ 423, 424, 427, 435, 436, 439, 440, 443, 452, 461,
+ 462, 471, 479, 480, 489, 498, 501, 502, 505
};
#endif
@@ -590,13 +585,12 @@ static const char *const yytname[] =
"validate_lua_line", "veto_lua", "veto_lua_lines", "veto_lua_line",
"prelude_lua", "prelude_lua_lines", "prelude_lua_line", "kfeat", "kmons",
"kitem", "kmask", "shuffle", "shuffle_specifiers", "shuffle_spec",
- "tags", "tagstrings", "tagstring", "lflags", "bflags", "marker", "@1",
- "marker_spec", "mspec_segments", "mspec_segment", "colour", "floorcol",
- "rockcol", "colour_specifiers", "colour_specifier", "nsubst",
- "nsubst_specifiers", "nsubst_spec", "subst", "subst_specifiers",
- "subst_spec", "items", "item_specifiers", "item_specifier", "mons",
- "mnames", "mname", "place", "depth", "chance", "orientation", "welcome",
- "map_def", "map_lines", "map_line", 0
+ "tags", "tagstrings", "tagstring", "lflags", "bflags", "marker",
+ "colour", "floorcol", "rockcol", "colour_specifiers", "colour_specifier",
+ "nsubst", "nsubst_specifiers", "nsubst_spec", "subst",
+ "subst_specifiers", "subst_spec", "items", "item_specifiers",
+ "item_specifier", "mons", "mnames", "mname", "place", "depth", "chance",
+ "orientation", "welcome", "map_def", "map_lines", "map_line", 0
};
#endif
@@ -623,11 +617,10 @@ static const yytype_uint8 yyr1[] =
55, 56, 57, 57, 58, 59, 60, 60, 61, 62,
63, 63, 64, 65, 65, 66, 66, 67, 67, 68,
68, 69, 70, 70, 71, 72, 73, 73, 74, 75,
- 76, 78, 77, 79, 80, 80, 81, 82, 83, 83,
- 84, 84, 85, 85, 86, 87, 88, 88, 89, 90,
- 91, 91, 92, 93, 93, 94, 94, 95, 96, 96,
- 97, 97, 98, 99, 100, 100, 101, 102, 102, 103,
- 104, 105, 105, 106
+ 76, 77, 78, 79, 79, 80, 80, 81, 81, 82,
+ 83, 84, 84, 85, 86, 87, 87, 88, 89, 89,
+ 90, 90, 91, 92, 92, 93, 93, 94, 95, 96,
+ 96, 97, 98, 98, 99, 100, 101, 101, 102
};
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
@@ -641,11 +634,10 @@ static const yytype_uint8 yyr2[] =
1, 2, 0, 2, 1, 2, 0, 2, 1, 2,
0, 2, 1, 1, 2, 1, 2, 1, 2, 1,
2, 2, 1, 3, 1, 2, 0, 2, 1, 2,
- 2, 0, 3, 1, 0, 2, 1, 2, 1, 2,
- 1, 2, 1, 3, 1, 2, 1, 3, 1, 2,
- 1, 3, 1, 1, 2, 3, 1, 1, 1, 2,
- 3, 1, 1, 2, 1, 2, 2, 1, 2, 2,
- 1, 2, 1, 1
+ 2, 2, 2, 1, 2, 1, 2, 1, 3, 1,
+ 2, 1, 3, 1, 2, 1, 3, 1, 1, 2,
+ 3, 1, 1, 1, 2, 3, 1, 1, 2, 1,
+ 2, 2, 1, 2, 2, 1, 2, 1, 1
};
/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
@@ -655,65 +647,63 @@ static const yytype_uint8 yydefact[] =
{
3, 0, 2, 1, 0, 0, 44, 4, 5, 8,
6, 12, 9, 10, 16, 43, 11, 46, 45, 0,
- 0, 76, 63, 67, 65, 69, 114, 117, 0, 0,
- 108, 103, 81, 0, 60, 48, 52, 56, 0, 0,
- 0, 0, 88, 90, 7, 123, 42, 13, 14, 38,
+ 0, 76, 63, 67, 65, 69, 109, 112, 0, 0,
+ 103, 98, 0, 0, 60, 48, 52, 56, 0, 0,
+ 0, 0, 83, 85, 7, 118, 42, 13, 14, 38,
40, 41, 39, 34, 36, 35, 37, 30, 31, 32,
33, 24, 27, 28, 29, 26, 25, 23, 22, 17,
- 18, 19, 20, 21, 15, 120, 122, 74, 71, 72,
- 102, 99, 100, 75, 64, 68, 66, 70, 115, 118,
- 113, 116, 112, 109, 111, 107, 104, 106, 84, 94,
- 87, 92, 59, 47, 51, 55, 98, 95, 96, 119,
- 79, 80, 89, 91, 121, 0, 0, 78, 77, 0,
- 0, 82, 83, 0, 62, 61, 50, 49, 54, 53,
- 58, 57, 0, 73, 101, 110, 105, 86, 85, 93,
- 97
+ 18, 19, 20, 21, 15, 115, 117, 74, 71, 72,
+ 97, 94, 95, 75, 64, 68, 66, 70, 110, 113,
+ 108, 111, 107, 104, 106, 102, 99, 101, 81, 89,
+ 82, 87, 59, 47, 51, 55, 93, 90, 91, 114,
+ 79, 80, 84, 86, 116, 0, 0, 78, 77, 0,
+ 0, 0, 62, 61, 50, 49, 54, 53, 58, 57,
+ 0, 73, 96, 105, 100, 88, 92
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int16 yydefgoto[] =
{
-1, 1, 2, 7, 46, 8, 9, 10, 16, 47,
- 11, 48, 12, 15, 18, 49, 103, 127, 50, 104,
- 129, 51, 105, 131, 52, 102, 125, 53, 54, 55,
+ 11, 48, 12, 15, 18, 49, 103, 125, 50, 104,
+ 127, 51, 105, 129, 52, 102, 123, 53, 54, 55,
56, 57, 78, 79, 58, 83, 118, 59, 60, 61,
- 98, 121, 122, 138, 62, 63, 64, 100, 101, 65,
- 107, 108, 66, 81, 82, 67, 96, 97, 68, 93,
- 94, 69, 70, 71, 72, 73, 74, 75, 76
+ 62, 63, 64, 100, 101, 65, 107, 108, 66, 81,
+ 82, 67, 96, 97, 68, 93, 94, 69, 70, 71,
+ 72, 73, 74, 75, 76
};
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
-#define YYPACT_NINF -76
+#define YYPACT_NINF -77
static const yytype_int8 yypact[] =
{
- -76, 7, 23, -76, -6, -2, -76, -76, -76, -76,
- -76, -76, -76, -76, -76, -8, -4, -76, -76, -3,
- -1, -76, 3, 4, 5, 6, 8, 9, 10, 1,
- 11, 12, -76, 13, -76, -76, -76, -76, 14, 18,
- 19, 20, 21, 22, -76, -76, -76, -76, -76, -76,
- -76, -76, -76, -76, -76, -76, -76, -76, -76, -76,
- -76, -76, -76, -76, -76, -76, -76, -76, -76, -76,
- -76, -76, -76, -76, -76, 24, -76, -76, 15, -76,
- -76, -76, 17, 26, -76, -76, -76, -76, -76, -76,
- -76, -76, -76, -76, 27, -76, 30, -76, -76, -76,
- 31, -76, 25, 28, 29, 32, -76, 33, -76, -76,
- -76, -76, -76, -76, -76, -3, -1, -76, -76, 11,
- 12, -76, 34, 13, -76, -76, -76, -76, -76, -76,
- -76, -76, 14, -76, -76, -76, -76, -76, -76, -76,
- -76
+ -77, 7, 23, -77, -6, -2, -77, -77, -77, -77,
+ -77, -77, -77, -77, -77, -8, -4, -77, -77, -3,
+ -1, -77, 3, 4, 5, 6, 8, 9, 10, 1,
+ 11, 12, 14, 13, -77, -77, -77, -77, 15, 17,
+ 19, 20, 21, 22, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, -77, 24, -77, -77, 26, -77,
+ -77, -77, 27, 28, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, 29, -77, 30, -77, -77, -77,
+ 32, -77, 31, 33, 34, 35, -77, 36, -77, -77,
+ -77, -77, -77, -77, -77, -3, -1, -77, -77, 11,
+ 12, 13, -77, -77, -77, -77, -77, -77, -77, -77,
+ 15, -77, -77, -77, -77, -77, -77
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int8 yypgoto[] =
{
- -76, -76, -76, -76, -76, -76, -76, -76, -76, -76,
- -76, -76, -76, -76, -76, -76, -76, -76, -76, -76,
- -76, -76, -76, -76, -76, -76, -76, -76, -76, -76,
- -76, -76, -76, -75, -76, -76, -76, -76, -76, -76,
- -76, -76, -76, -76, -76, -76, -76, -76, -67, -76,
- -76, -68, -76, -48, -76, -76, -76, -50, -76, -47,
- -76, -76, -76, -76, -76, -76, -76, -76, 0
+ -77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -75, -77, -77, -77, -77, -77, -77,
+ -77, -77, -77, -77, -76, -77, -77, -67, -77, -52,
+ -77, -77, -77, -55, -77, -50, -77, -77, -77, -77,
+ -77, -77, -77, -77, 0
};
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
@@ -727,10 +717,10 @@ static const yytype_uint8 yytable[] =
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 41, 42, 43, 4, 13, 44, 17,
45, 14, 91, 77, 5, 80, 84, 85, 86, 87,
- 133, 88, 89, 90, 6, 115, 92, 116, 95, 99,
- 106, 109, 110, 111, 112, 113, 139, 119, 45, 117,
- 120, 123, 124, 132, 140, 126, 128, 137, 134, 130,
- 136, 0, 135, 0, 0, 114
+ 131, 88, 89, 90, 6, 135, 92, 98, 95, 99,
+ 109, 106, 110, 111, 112, 113, 115, 116, 45, 119,
+ 120, 117, 121, 136, 132, 134, 130, 0, 122, 133,
+ 124, 126, 128, 0, 0, 114
};
static const yytype_int16 yycheck[] =
@@ -739,10 +729,10 @@ static const yytype_int16 yycheck[] =
14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
24, 25, 26, 27, 28, 29, 3, 33, 32, 37,
34, 33, 31, 36, 11, 36, 33, 33, 33, 33,
- 115, 33, 33, 33, 21, 30, 35, 30, 36, 36,
- 36, 33, 33, 33, 33, 33, 123, 30, 34, 33,
- 30, 30, 37, 30, 132, 37, 37, 33, 116, 37,
- 120, -1, 119, -1, -1, 75
+ 115, 33, 33, 33, 21, 121, 35, 33, 36, 36,
+ 33, 36, 33, 33, 33, 33, 30, 30, 34, 30,
+ 30, 33, 30, 130, 116, 120, 30, -1, 37, 119,
+ 37, 37, 37, -1, -1, 75
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
@@ -755,15 +745,14 @@ static const yytype_uint8 yystos[] =
16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, 29, 32, 34, 42, 47, 49, 53,
56, 59, 62, 65, 66, 67, 68, 69, 72, 75,
- 76, 77, 82, 83, 84, 87, 90, 93, 96, 99,
- 100, 101, 102, 103, 104, 105, 106, 36, 70, 71,
- 36, 91, 92, 73, 33, 33, 33, 33, 33, 33,
- 33, 31, 35, 97, 98, 36, 94, 95, 78, 36,
- 85, 86, 63, 54, 57, 60, 36, 88, 89, 33,
- 33, 33, 33, 33, 106, 30, 30, 33, 74, 30,
- 30, 79, 80, 30, 37, 64, 37, 55, 37, 58,
- 37, 61, 30, 71, 91, 97, 95, 33, 81, 86,
- 89
+ 76, 77, 78, 79, 80, 83, 86, 89, 92, 95,
+ 96, 97, 98, 99, 100, 101, 102, 36, 70, 71,
+ 36, 87, 88, 73, 33, 33, 33, 33, 33, 33,
+ 33, 31, 35, 93, 94, 36, 90, 91, 33, 36,
+ 81, 82, 63, 54, 57, 60, 36, 84, 85, 33,
+ 33, 33, 33, 33, 102, 30, 30, 33, 74, 30,
+ 30, 30, 37, 64, 37, 55, 37, 58, 37, 61,
+ 30, 71, 87, 93, 91, 82, 85
};
#define yyerrok (yyerrstatus = 0)
@@ -1578,49 +1567,49 @@ yyreduce:
switch (yyn)
{
case 2:
-#line 69 "levcomp.ypp"
+#line 67 "levcomp.ypp"
{ }
break;
case 3:
-#line 72 "levcomp.ypp"
+#line 70 "levcomp.ypp"
{}
break;
case 4:
-#line 73 "levcomp.ypp"
+#line 71 "levcomp.ypp"
{}
break;
case 5:
-#line 76 "levcomp.ypp"
+#line 74 "levcomp.ypp"
{}
break;
case 6:
-#line 77 "levcomp.ypp"
+#line 75 "levcomp.ypp"
{}
break;
case 7:
-#line 81 "levcomp.ypp"
+#line 79 "levcomp.ypp"
{
yyerror("Unexpected character sequence.");
}
break;
case 8:
-#line 86 "levcomp.ypp"
+#line 84 "levcomp.ypp"
{}
break;
case 9:
-#line 87 "levcomp.ypp"
+#line 85 "levcomp.ypp"
{}
break;
case 10:
-#line 91 "levcomp.ypp"
+#line 89 "levcomp.ypp"
{
dgn_reset_default_depth();
std::string err = dgn_set_default_depth((yyvsp[(2) - (2)].text));
@@ -1631,7 +1620,7 @@ yyreduce:
break;
case 11:
-#line 101 "levcomp.ypp"
+#line 99 "levcomp.ypp"
{
lc_map.set_file(lc_desfile);
@@ -1654,27 +1643,27 @@ yyreduce:
break;
case 12:
-#line 122 "levcomp.ypp"
+#line 120 "levcomp.ypp"
{ }
break;
case 13:
-#line 123 "levcomp.ypp"
+#line 121 "levcomp.ypp"
{ }
break;
case 14:
-#line 126 "levcomp.ypp"
+#line 124 "levcomp.ypp"
{ }
break;
case 15:
-#line 127 "levcomp.ypp"
+#line 125 "levcomp.ypp"
{ }
break;
case 16:
-#line 131 "levcomp.ypp"
+#line 129 "levcomp.ypp"
{
lc_map.init();
lc_map.name = (yyvsp[(2) - (2)].text);
@@ -1699,127 +1688,127 @@ yyreduce:
break;
case 42:
-#line 179 "levcomp.ypp"
+#line 177 "levcomp.ypp"
{}
break;
case 43:
-#line 182 "levcomp.ypp"
+#line 180 "levcomp.ypp"
{ }
break;
case 44:
-#line 184 "levcomp.ypp"
+#line 182 "levcomp.ypp"
{ }
break;
case 45:
-#line 185 "levcomp.ypp"
+#line 183 "levcomp.ypp"
{ }
break;
case 46:
-#line 189 "levcomp.ypp"
+#line 187 "levcomp.ypp"
{
lc_global_prelude.add(yylineno, (yyvsp[(1) - (1)].text));
}
break;
case 47:
-#line 193 "levcomp.ypp"
+#line 191 "levcomp.ypp"
{ }
break;
case 48:
-#line 195 "levcomp.ypp"
+#line 193 "levcomp.ypp"
{ }
break;
case 49:
-#line 196 "levcomp.ypp"
+#line 194 "levcomp.ypp"
{ }
break;
case 50:
-#line 200 "levcomp.ypp"
+#line 198 "levcomp.ypp"
{
lc_map.main.add(yylineno, (yyvsp[(1) - (1)].text));
}
break;
case 51:
-#line 204 "levcomp.ypp"
+#line 202 "levcomp.ypp"
{ }
break;
case 52:
-#line 206 "levcomp.ypp"
+#line 204 "levcomp.ypp"
{ }
break;
case 53:
-#line 207 "levcomp.ypp"
+#line 205 "levcomp.ypp"
{ }
break;
case 54:
-#line 211 "levcomp.ypp"
+#line 209 "levcomp.ypp"
{
lc_map.validate.add(yylineno, (yyvsp[(1) - (1)].text));
}
break;
case 55:
-#line 215 "levcomp.ypp"
+#line 213 "levcomp.ypp"
{ }
break;
case 56:
-#line 217 "levcomp.ypp"
+#line 215 "levcomp.ypp"
{ }
break;
case 57:
-#line 218 "levcomp.ypp"
+#line 216 "levcomp.ypp"
{ }
break;
case 58:
-#line 222 "levcomp.ypp"
+#line 220 "levcomp.ypp"
{
lc_map.veto.add(yylineno, (yyvsp[(1) - (1)].text));
}
break;
case 59:
-#line 226 "levcomp.ypp"
+#line 224 "levcomp.ypp"
{ }
break;
case 60:
-#line 228 "levcomp.ypp"
+#line 226 "levcomp.ypp"
{ }
break;
case 61:
-#line 229 "levcomp.ypp"
+#line 227 "levcomp.ypp"
{ }
break;
case 62:
-#line 233 "levcomp.ypp"
+#line 231 "levcomp.ypp"
{
lc_map.prelude.add(yylineno, (yyvsp[(1) - (1)].text));
}
break;
case 63:
-#line 237 "levcomp.ypp"
+#line 235 "levcomp.ypp"
{ }
break;
case 64:
-#line 239 "levcomp.ypp"
+#line 237 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -1829,12 +1818,12 @@ yyreduce:
break;
case 65:
-#line 246 "levcomp.ypp"
+#line 244 "levcomp.ypp"
{ }
break;
case 66:
-#line 248 "levcomp.ypp"
+#line 246 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -1844,12 +1833,12 @@ yyreduce:
break;
case 67:
-#line 255 "levcomp.ypp"
+#line 253 "levcomp.ypp"
{ }
break;
case 68:
-#line 257 "levcomp.ypp"
+#line 255 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -1859,12 +1848,12 @@ yyreduce:
break;
case 69:
-#line 264 "levcomp.ypp"
+#line 262 "levcomp.ypp"
{ }
break;
case 70:
-#line 266 "levcomp.ypp"
+#line 264 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -1874,12 +1863,12 @@ yyreduce:
break;
case 71:
-#line 273 "levcomp.ypp"
+#line 271 "levcomp.ypp"
{}
break;
case 74:
-#line 281 "levcomp.ypp"
+#line 279 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -1889,12 +1878,12 @@ yyreduce:
break;
case 75:
-#line 288 "levcomp.ypp"
+#line 286 "levcomp.ypp"
{}
break;
case 78:
-#line 296 "levcomp.ypp"
+#line 294 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -1904,7 +1893,7 @@ yyreduce:
break;
case 79:
-#line 305 "levcomp.ypp"
+#line 303 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -1914,7 +1903,7 @@ yyreduce:
break;
case 80:
-#line 314 "levcomp.ypp"
+#line 312 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -1924,45 +1913,51 @@ yyreduce:
break;
case 81:
-#line 323 "levcomp.ypp"
+#line 321 "levcomp.ypp"
{
- lc_map.main.add(yylineno, "marker(");
- start_marker_segment = true;
- }
- break;
+ std::string key, arg;
+ int sep(0);
- case 82:
-#line 328 "levcomp.ypp"
- {
- lc_map.main.add(yylineno, ")");
- }
- break;
+ const std::string err =
+ mapdef_split_key_item((yyvsp[(2) - (2)].text), &key, &sep, &arg);
- case 86:
-#line 340 "levcomp.ypp"
- {
- lc_map.main.add(
- yylineno,
- make_stringf(
- "%s\"%s\"",
- start_marker_segment? "" : " .. ",
- quote_lua_string((yyvsp[(1) - (1)].text)).c_str()));
- start_marker_segment = false;
+ if (!err.empty())
+ yyerror(err.c_str());
+
+ // Special treatment for Lua markers.
+ if (arg.find("lua:") == 0)
+ {
+ arg = arg.substr(4);
+ lc_map.main.add(
+ yylineno,
+ make_stringf("lua_marker(\"%s\", function () "
+ " return %s "
+ "end)",
+ quote_lua_string(key).c_str(),
+ arg.c_str()));
+ }
+ else
+ {
+ lc_map.main.add(
+ yylineno,
+ make_stringf("marker(\"%s\")",
+ quote_lua_string((yyvsp[(2) - (2)].text)).c_str()));
+ }
}
break;
- case 87:
-#line 351 "levcomp.ypp"
+ case 82:
+#line 353 "levcomp.ypp"
{ }
break;
- case 88:
-#line 354 "levcomp.ypp"
+ case 83:
+#line 356 "levcomp.ypp"
{ }
break;
- case 89:
-#line 356 "levcomp.ypp"
+ case 84:
+#line 358 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -1971,13 +1966,13 @@ yyreduce:
}
break;
- case 90:
-#line 363 "levcomp.ypp"
+ case 85:
+#line 365 "levcomp.ypp"
{ }
break;
- case 91:
-#line 365 "levcomp.ypp"
+ case 86:
+#line 367 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -1986,18 +1981,18 @@ yyreduce:
}
break;
- case 92:
-#line 372 "levcomp.ypp"
+ case 87:
+#line 374 "levcomp.ypp"
{ }
break;
- case 93:
-#line 373 "levcomp.ypp"
+ case 88:
+#line 375 "levcomp.ypp"
{ }
break;
- case 94:
-#line 377 "levcomp.ypp"
+ case 89:
+#line 379 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -2006,23 +2001,23 @@ yyreduce:
}
break;
- case 95:
-#line 385 "levcomp.ypp"
+ case 90:
+#line 387 "levcomp.ypp"
{ }
break;
- case 96:
-#line 388 "levcomp.ypp"
+ case 91:
+#line 390 "levcomp.ypp"
{ }
break;
- case 97:
-#line 389 "levcomp.ypp"
+ case 92:
+#line 391 "levcomp.ypp"
{ }
break;
- case 98:
-#line 393 "levcomp.ypp"
+ case 93:
+#line 395 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -2031,13 +2026,13 @@ yyreduce:
}
break;
- case 99:
-#line 401 "levcomp.ypp"
+ case 94:
+#line 403 "levcomp.ypp"
{ }
break;
- case 102:
-#line 409 "levcomp.ypp"
+ case 97:
+#line 411 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -2046,18 +2041,18 @@ yyreduce:
}
break;
- case 103:
-#line 417 "levcomp.ypp"
+ case 98:
+#line 419 "levcomp.ypp"
{}
break;
- case 104:
-#line 418 "levcomp.ypp"
+ case 99:
+#line 420 "levcomp.ypp"
{}
break;
- case 107:
-#line 426 "levcomp.ypp"
+ case 102:
+#line 428 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -2066,18 +2061,18 @@ yyreduce:
}
break;
- case 108:
-#line 433 "levcomp.ypp"
+ case 103:
+#line 435 "levcomp.ypp"
{}
break;
- case 109:
-#line 434 "levcomp.ypp"
+ case 104:
+#line 436 "levcomp.ypp"
{}
break;
- case 112:
-#line 442 "levcomp.ypp"
+ case 107:
+#line 444 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -2086,8 +2081,8 @@ yyreduce:
}
break;
- case 113:
-#line 451 "levcomp.ypp"
+ case 108:
+#line 453 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -2096,13 +2091,13 @@ yyreduce:
}
break;
- case 114:
-#line 459 "levcomp.ypp"
+ case 109:
+#line 461 "levcomp.ypp"
{}
break;
- case 115:
-#line 461 "levcomp.ypp"
+ case 110:
+#line 463 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -2111,8 +2106,8 @@ yyreduce:
}
break;
- case 116:
-#line 470 "levcomp.ypp"
+ case 111:
+#line 472 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -2120,13 +2115,13 @@ yyreduce:
}
break;
- case 117:
-#line 477 "levcomp.ypp"
+ case 112:
+#line 479 "levcomp.ypp"
{}
break;
- case 118:
-#line 479 "levcomp.ypp"
+ case 113:
+#line 481 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -2135,8 +2130,8 @@ yyreduce:
}
break;
- case 119:
-#line 488 "levcomp.ypp"
+ case 114:
+#line 490 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -2145,8 +2140,8 @@ yyreduce:
}
break;
- case 123:
-#line 504 "levcomp.ypp"
+ case 118:
+#line 506 "levcomp.ypp"
{
lc_map.main.add(
yylineno,
@@ -2157,7 +2152,7 @@ yyreduce:
/* Line 1267 of yacc.c. */
-#line 2161 "levcomp.tab.c"
+#line 2156 "levcomp.tab.c"
default: break;
}
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
@@ -2371,6 +2366,6 @@ yyreturn:
}
-#line 512 "levcomp.ypp"
+#line 514 "levcomp.ypp"