From: Fletcher T. Penney
Date: Tue, 12 Sep 2017 19:46:28 +0000 (-0400)
Subject: ADDED: Add support for tables without header; test for table with multiple header...
X-Git-Tag: 6.2.2^2~10
X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a21a54f0f14b2cc0c1c825bbb5fdcbb52d0e3e5b;p=multimarkdown
ADDED: Add support for tables without header; test for table with multiple header rows
---
diff --git a/Sources/libMultiMarkdown/parser.c b/Sources/libMultiMarkdown/parser.c
index 40cd95a..cc5a01a 100644
--- a/Sources/libMultiMarkdown/parser.c
+++ b/Sources/libMultiMarkdown/parser.c
@@ -107,16 +107,16 @@ typedef union {
#define ParseARG_FETCH mmd_engine * engine = yypParser->engine
#define ParseARG_STORE yypParser->engine = engine
#define YYFALLBACK 1
-#define YYNSTATE 46
-#define YYNRULE 155
-#define YY_MAX_SHIFT 45
-#define YY_MIN_SHIFTREDUCE 157
-#define YY_MAX_SHIFTREDUCE 311
-#define YY_MIN_REDUCE 312
-#define YY_MAX_REDUCE 466
-#define YY_ERROR_ACTION 467
-#define YY_ACCEPT_ACTION 468
-#define YY_NO_ACTION 469
+#define YYNSTATE 47
+#define YYNRULE 156
+#define YY_MAX_SHIFT 46
+#define YY_MIN_SHIFTREDUCE 158
+#define YY_MAX_SHIFTREDUCE 313
+#define YY_MIN_REDUCE 314
+#define YY_MAX_REDUCE 469
+#define YY_ERROR_ACTION 470
+#define YY_ACCEPT_ACTION 471
+#define YY_NO_ACTION 472
/************* End control #defines *******************************************/
/* Define the yytestcase() macro to be a no-op if is not already defined
@@ -190,39 +190,39 @@ typedef union {
*********** Begin parsing tables **********************************************/
#define YY_ACTTAB_COUNT (321)
static const YYACTIONTYPE yy_action[] = {
- /* 0 */ 468, 1, 159, 37, 170, 171, 172, 173, 174, 175,
- /* 10 */ 44, 177, 29, 179, 32, 41, 40, 30, 14, 186,
- /* 20 */ 187, 188, 43, 244, 13, 13, 32, 43, 239, 240,
- /* 30 */ 247, 38, 38, 27, 268, 26, 25, 216, 28, 212,
- /* 40 */ 41, 40, 209, 8, 221, 42, 261, 15, 15, 312,
- /* 50 */ 166, 306, 310, 45, 5, 16, 254, 255, 306, 310,
- /* 60 */ 260, 285, 160, 161, 162, 163, 164, 165, 259, 7,
- /* 70 */ 6, 17, 4, 3, 2, 18, 168, 5, 300, 223,
- /* 80 */ 270, 273, 276, 271, 274, 277, 304, 268, 291, 166,
- /* 90 */ 39, 39, 45, 236, 16, 254, 255, 306, 310, 19,
- /* 100 */ 285, 160, 161, 162, 163, 164, 165, 259, 7, 6,
- /* 110 */ 17, 4, 3, 2, 18, 168, 5, 300, 250, 270,
- /* 120 */ 273, 276, 271, 274, 277, 304, 268, 291, 158, 37,
- /* 130 */ 170, 171, 172, 173, 174, 175, 44, 177, 29, 179,
- /* 140 */ 32, 41, 40, 30, 14, 186, 187, 188, 306, 310,
- /* 150 */ 251, 268, 32, 224, 254, 255, 250, 38, 38, 27,
- /* 160 */ 189, 26, 25, 184, 28, 302, 41, 40, 281, 8,
- /* 170 */ 195, 42, 278, 15, 15, 33, 33, 245, 280, 282,
- /* 180 */ 281, 34, 34, 5, 278, 205, 35, 35, 251, 301,
- /* 190 */ 280, 282, 12, 43, 12, 13, 13, 202, 217, 219,
- /* 200 */ 215, 218, 220, 6, 284, 279, 283, 36, 36, 31,
- /* 210 */ 213, 210, 211, 214, 31, 281, 284, 279, 283, 278,
- /* 220 */ 31, 9, 9, 20, 20, 280, 282, 198, 198, 190,
- /* 230 */ 243, 242, 9, 9, 20, 20, 231, 7, 197, 197,
- /* 240 */ 226, 243, 31, 254, 255, 206, 207, 208, 205, 237,
- /* 250 */ 31, 284, 279, 283, 9, 9, 20, 20, 31, 314,
- /* 260 */ 196, 196, 9, 9, 20, 20, 314, 31, 203, 203,
- /* 270 */ 10, 10, 22, 22, 225, 232, 31, 314, 314, 11,
- /* 280 */ 11, 23, 23, 295, 227, 31, 314, 292, 314, 189,
- /* 290 */ 21, 21, 288, 294, 296, 314, 286, 314, 189, 24,
- /* 300 */ 24, 314, 287, 289, 314, 314, 314, 314, 314, 314,
- /* 310 */ 314, 314, 314, 314, 314, 314, 314, 314, 314, 222,
- /* 320 */ 293,
+ /* 0 */ 471, 1, 160, 37, 171, 172, 173, 174, 175, 176,
+ /* 10 */ 45, 178, 29, 180, 32, 41, 40, 30, 14, 187,
+ /* 20 */ 188, 189, 44, 246, 13, 13, 32, 44, 240, 241,
+ /* 30 */ 249, 38, 38, 27, 270, 26, 25, 217, 28, 213,
+ /* 40 */ 41, 40, 210, 8, 222, 43, 263, 15, 15, 314,
+ /* 50 */ 167, 308, 312, 46, 5, 16, 256, 257, 308, 42,
+ /* 60 */ 262, 287, 161, 162, 163, 164, 165, 166, 261, 7,
+ /* 70 */ 6, 17, 4, 3, 2, 18, 169, 5, 302, 224,
+ /* 80 */ 272, 275, 278, 273, 276, 279, 306, 270, 293, 167,
+ /* 90 */ 39, 39, 46, 237, 16, 256, 257, 308, 42, 19,
+ /* 100 */ 287, 161, 162, 163, 164, 165, 166, 261, 7, 6,
+ /* 110 */ 17, 4, 3, 2, 18, 169, 5, 302, 252, 272,
+ /* 120 */ 275, 278, 273, 276, 279, 306, 270, 293, 159, 37,
+ /* 130 */ 171, 172, 173, 174, 175, 176, 45, 178, 29, 180,
+ /* 140 */ 32, 41, 40, 30, 14, 187, 188, 189, 308, 312,
+ /* 150 */ 253, 270, 32, 225, 256, 257, 252, 38, 38, 27,
+ /* 160 */ 190, 26, 25, 185, 28, 304, 41, 40, 283, 8,
+ /* 170 */ 196, 43, 280, 15, 15, 33, 33, 247, 282, 284,
+ /* 180 */ 283, 34, 34, 5, 280, 206, 35, 35, 253, 303,
+ /* 190 */ 282, 284, 12, 44, 12, 13, 13, 203, 218, 220,
+ /* 200 */ 216, 219, 221, 6, 286, 281, 285, 36, 36, 31,
+ /* 210 */ 214, 211, 212, 215, 31, 283, 286, 281, 285, 280,
+ /* 220 */ 31, 9, 9, 20, 20, 282, 284, 199, 199, 191,
+ /* 230 */ 468, 468, 9, 9, 20, 20, 245, 243, 198, 198,
+ /* 240 */ 7, 232, 31, 256, 257, 207, 208, 209, 245, 227,
+ /* 250 */ 31, 286, 281, 285, 9, 9, 20, 20, 31, 206,
+ /* 260 */ 197, 197, 9, 9, 20, 20, 238, 31, 204, 204,
+ /* 270 */ 10, 10, 22, 22, 226, 233, 31, 316, 316, 11,
+ /* 280 */ 11, 23, 23, 297, 228, 31, 316, 294, 316, 190,
+ /* 290 */ 21, 21, 290, 296, 298, 316, 288, 316, 190, 24,
+ /* 300 */ 24, 316, 289, 291, 316, 316, 316, 316, 316, 316,
+ /* 310 */ 316, 316, 316, 316, 316, 316, 316, 316, 316, 223,
+ /* 320 */ 295,
};
static const YYCODETYPE yy_lookahead[] = {
/* 0 */ 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
@@ -248,10 +248,10 @@ static const YYCODETYPE yy_lookahead[] = {
/* 200 */ 33, 34, 35, 21, 37, 38, 39, 63, 64, 51,
/* 210 */ 31, 32, 33, 34, 51, 1, 37, 38, 39, 5,
/* 220 */ 51, 63, 64, 65, 66, 11, 12, 69, 70, 66,
- /* 230 */ 9, 10, 63, 64, 65, 66, 82, 20, 69, 70,
- /* 240 */ 81, 9, 51, 7, 8, 31, 32, 33, 38, 29,
- /* 250 */ 51, 37, 38, 39, 63, 64, 65, 66, 51, 90,
- /* 260 */ 69, 70, 63, 64, 65, 66, 90, 51, 69, 70,
+ /* 230 */ 2, 3, 63, 64, 65, 66, 9, 10, 69, 70,
+ /* 240 */ 20, 82, 51, 7, 8, 31, 32, 33, 9, 81,
+ /* 250 */ 51, 37, 38, 39, 63, 64, 65, 66, 51, 38,
+ /* 260 */ 69, 70, 63, 64, 65, 66, 29, 51, 69, 70,
/* 270 */ 63, 64, 65, 66, 38, 68, 51, 90, 90, 63,
/* 280 */ 64, 65, 66, 1, 68, 51, 90, 5, 90, 64,
/* 290 */ 65, 66, 1, 11, 12, 90, 5, 90, 64, 65,
@@ -260,7 +260,7 @@ static const YYCODETYPE yy_lookahead[] = {
/* 320 */ 38,
};
#define YY_SHIFT_USE_DFLT (321)
-#define YY_SHIFT_COUNT (45)
+#define YY_SHIFT_COUNT (46)
#define YY_SHIFT_MIN (-4)
#define YY_SHIFT_MAX (291)
static const short yy_shift_ofst[] = {
@@ -268,7 +268,7 @@ static const short yy_shift_ofst[] = {
/* 10 */ 113, 113, 42, 139, 26, 42, 151, 151, 151, 151,
/* 20 */ -4, -4, -4, -4, -4, 167, 179, 214, 282, 291,
/* 30 */ 160, 147, 236, 151, 151, 151, 151, 41, 155, 155,
- /* 40 */ 182, 217, 221, 232, 210, 220,
+ /* 40 */ 182, 220, 228, 227, 239, 221, 237,
};
#define YY_REDUCE_USE_DFLT (-65)
#define YY_REDUCE_COUNT (41)
@@ -279,14 +279,14 @@ static const short yy_reduce_ofst[] = {
/* 10 */ 234, 234, -64, -59, 18, -59, 112, 118, 123, 144,
/* 20 */ 163, 163, 163, 163, 163, -38, -36, -33, -1, -34,
/* 30 */ 10, 32, 86, 96, 96, 96, 96, 99, 124, 124,
- /* 40 */ 154, 159,
+ /* 40 */ 159, 168,
};
static const YYACTIONTYPE yy_default[] = {
- /* 0 */ 467, 467, 419, 418, 417, 359, 390, 385, 460, 411,
- /* 10 */ 388, 383, 396, 401, 340, 403, 458, 421, 420, 347,
- /* 20 */ 413, 349, 389, 384, 348, 430, 427, 424, 445, 333,
- /* 30 */ 338, 408, 335, 393, 355, 354, 346, 324, 466, 356,
- /* 40 */ 337, 336, 464, 464, 331, 322,
+ /* 0 */ 470, 470, 422, 421, 420, 361, 392, 387, 463, 414,
+ /* 10 */ 390, 385, 398, 404, 342, 406, 461, 424, 423, 349,
+ /* 20 */ 416, 351, 391, 386, 350, 433, 430, 427, 448, 335,
+ /* 30 */ 340, 411, 337, 395, 357, 356, 348, 326, 469, 358,
+ /* 40 */ 339, 338, 400, 467, 467, 333, 324,
};
/********** End of lemon-generated parsing tables *****************************/
@@ -544,75 +544,76 @@ static const char *const yyRuleName[] = {
/* 83 */ "setext_2 ::= para LINE_SETEXT_2",
/* 84 */ "table ::= table_header table_body",
/* 85 */ "table_header ::= header_rows LINE_TABLE_SEPARATOR",
- /* 86 */ "header_rows ::= header_rows LINE_TABLE",
- /* 87 */ "table_body ::= table_body table_section",
- /* 88 */ "table_section ::= all_rows LINE_EMPTY",
- /* 89 */ "table_section ::= all_rows",
- /* 90 */ "all_rows ::= all_rows row",
- /* 91 */ "para ::= all_rows",
- /* 92 */ "chunk ::= chunk_line",
- /* 93 */ "chunk_line ::= LINE_CONTINUATION",
- /* 94 */ "chunk_line ::= LINE_STOP_COMMENT",
- /* 95 */ "nested_chunks ::= nested_chunk",
- /* 96 */ "nested_chunk ::= empty",
- /* 97 */ "indented_line ::= LINE_INDENTED_TAB",
- /* 98 */ "indented_line ::= LINE_INDENTED_SPACE",
- /* 99 */ "opt_ext_chunk ::= chunk",
- /* 100 */ "tail ::= opt_ext_chunk",
- /* 101 */ "tail ::= nested_chunks",
- /* 102 */ "blockquote ::= LINE_BLOCKQUOTE",
- /* 103 */ "quote_line ::= LINE_BLOCKQUOTE",
- /* 104 */ "quote_line ::= LINE_CONTINUATION",
- /* 105 */ "def_citation ::= LINE_DEF_CITATION",
- /* 106 */ "def_footnote ::= LINE_DEF_FOOTNOTE",
- /* 107 */ "def_glossary ::= LINE_DEF_GLOSSARY",
- /* 108 */ "def_link ::= LINE_DEF_LINK",
- /* 109 */ "def_abbreviation ::= LINE_DEF_ABBREVIATION",
- /* 110 */ "defs ::= def",
- /* 111 */ "empty ::= LINE_EMPTY",
- /* 112 */ "fenced_block ::= fenced_3",
- /* 113 */ "fenced_3 ::= LINE_FENCE_BACKTICK_3",
- /* 114 */ "fenced_3 ::= LINE_FENCE_BACKTICK_START_3",
- /* 115 */ "fenced_block ::= fenced_4",
- /* 116 */ "fenced_4 ::= LINE_FENCE_BACKTICK_4",
- /* 117 */ "fenced_4 ::= LINE_FENCE_BACKTICK_START_4",
- /* 118 */ "fenced_block ::= fenced_5",
- /* 119 */ "fenced_5 ::= LINE_FENCE_BACKTICK_5",
- /* 120 */ "fenced_5 ::= LINE_FENCE_BACKTICK_START_5",
- /* 121 */ "fenced_line ::= LINE_CONTINUATION",
- /* 122 */ "fenced_line ::= LINE_EMPTY",
- /* 123 */ "fenced_line ::= LINE_FALLBACK",
- /* 124 */ "fenced_line ::= LINE_HR",
- /* 125 */ "fenced_line ::= LINE_HTML",
- /* 126 */ "fenced_line ::= LINE_START_COMMENT",
- /* 127 */ "fenced_line ::= LINE_STOP_COMMENT",
- /* 128 */ "html_block ::= LINE_HTML",
- /* 129 */ "html_line ::= LINE_CONTINUATION",
- /* 130 */ "html_line ::= LINE_FALLBACK",
- /* 131 */ "html_line ::= LINE_HR",
- /* 132 */ "html_line ::= LINE_HTML",
- /* 133 */ "html_com_block ::= html_comment",
- /* 134 */ "html_comment ::= LINE_START_COMMENT",
- /* 135 */ "comment_line ::= LINE_CONTINUATION",
- /* 136 */ "comment_line ::= LINE_EMPTY",
- /* 137 */ "comment_line ::= LINE_FALLBACK",
- /* 138 */ "comment_line ::= LINE_HR",
- /* 139 */ "comment_line ::= LINE_HTML",
- /* 140 */ "indented_code ::= indented_line",
- /* 141 */ "list_bullet ::= item_bullet",
- /* 142 */ "list_enum ::= item_enum",
- /* 143 */ "meta_block ::= LINE_META",
- /* 144 */ "meta_line ::= LINE_META",
- /* 145 */ "meta_line ::= LINE_CONTINUATION",
- /* 146 */ "para ::= LINE_PLAIN",
- /* 147 */ "para ::= LINE_STOP_COMMENT",
- /* 148 */ "table ::= table_header",
- /* 149 */ "header_rows ::= LINE_TABLE",
- /* 150 */ "table_body ::= table_section",
- /* 151 */ "all_rows ::= row",
- /* 152 */ "row ::= header_rows",
- /* 153 */ "row ::= LINE_TABLE_SEPARATOR",
- /* 154 */ "para ::= defs",
+ /* 86 */ "table_header ::= LINE_TABLE_SEPARATOR",
+ /* 87 */ "header_rows ::= header_rows LINE_TABLE",
+ /* 88 */ "table_body ::= table_body table_section",
+ /* 89 */ "table_section ::= all_rows LINE_EMPTY",
+ /* 90 */ "table_section ::= all_rows",
+ /* 91 */ "all_rows ::= all_rows row",
+ /* 92 */ "para ::= all_rows",
+ /* 93 */ "chunk ::= chunk_line",
+ /* 94 */ "chunk_line ::= LINE_CONTINUATION",
+ /* 95 */ "chunk_line ::= LINE_STOP_COMMENT",
+ /* 96 */ "nested_chunks ::= nested_chunk",
+ /* 97 */ "nested_chunk ::= empty",
+ /* 98 */ "indented_line ::= LINE_INDENTED_TAB",
+ /* 99 */ "indented_line ::= LINE_INDENTED_SPACE",
+ /* 100 */ "opt_ext_chunk ::= chunk",
+ /* 101 */ "tail ::= opt_ext_chunk",
+ /* 102 */ "tail ::= nested_chunks",
+ /* 103 */ "blockquote ::= LINE_BLOCKQUOTE",
+ /* 104 */ "quote_line ::= LINE_BLOCKQUOTE",
+ /* 105 */ "quote_line ::= LINE_CONTINUATION",
+ /* 106 */ "def_citation ::= LINE_DEF_CITATION",
+ /* 107 */ "def_footnote ::= LINE_DEF_FOOTNOTE",
+ /* 108 */ "def_glossary ::= LINE_DEF_GLOSSARY",
+ /* 109 */ "def_link ::= LINE_DEF_LINK",
+ /* 110 */ "def_abbreviation ::= LINE_DEF_ABBREVIATION",
+ /* 111 */ "defs ::= def",
+ /* 112 */ "empty ::= LINE_EMPTY",
+ /* 113 */ "fenced_block ::= fenced_3",
+ /* 114 */ "fenced_3 ::= LINE_FENCE_BACKTICK_3",
+ /* 115 */ "fenced_3 ::= LINE_FENCE_BACKTICK_START_3",
+ /* 116 */ "fenced_block ::= fenced_4",
+ /* 117 */ "fenced_4 ::= LINE_FENCE_BACKTICK_4",
+ /* 118 */ "fenced_4 ::= LINE_FENCE_BACKTICK_START_4",
+ /* 119 */ "fenced_block ::= fenced_5",
+ /* 120 */ "fenced_5 ::= LINE_FENCE_BACKTICK_5",
+ /* 121 */ "fenced_5 ::= LINE_FENCE_BACKTICK_START_5",
+ /* 122 */ "fenced_line ::= LINE_CONTINUATION",
+ /* 123 */ "fenced_line ::= LINE_EMPTY",
+ /* 124 */ "fenced_line ::= LINE_FALLBACK",
+ /* 125 */ "fenced_line ::= LINE_HR",
+ /* 126 */ "fenced_line ::= LINE_HTML",
+ /* 127 */ "fenced_line ::= LINE_START_COMMENT",
+ /* 128 */ "fenced_line ::= LINE_STOP_COMMENT",
+ /* 129 */ "html_block ::= LINE_HTML",
+ /* 130 */ "html_line ::= LINE_CONTINUATION",
+ /* 131 */ "html_line ::= LINE_FALLBACK",
+ /* 132 */ "html_line ::= LINE_HR",
+ /* 133 */ "html_line ::= LINE_HTML",
+ /* 134 */ "html_com_block ::= html_comment",
+ /* 135 */ "html_comment ::= LINE_START_COMMENT",
+ /* 136 */ "comment_line ::= LINE_CONTINUATION",
+ /* 137 */ "comment_line ::= LINE_EMPTY",
+ /* 138 */ "comment_line ::= LINE_FALLBACK",
+ /* 139 */ "comment_line ::= LINE_HR",
+ /* 140 */ "comment_line ::= LINE_HTML",
+ /* 141 */ "indented_code ::= indented_line",
+ /* 142 */ "list_bullet ::= item_bullet",
+ /* 143 */ "list_enum ::= item_enum",
+ /* 144 */ "meta_block ::= LINE_META",
+ /* 145 */ "meta_line ::= LINE_META",
+ /* 146 */ "meta_line ::= LINE_CONTINUATION",
+ /* 147 */ "para ::= LINE_PLAIN",
+ /* 148 */ "para ::= LINE_STOP_COMMENT",
+ /* 149 */ "table ::= table_header",
+ /* 150 */ "header_rows ::= LINE_TABLE",
+ /* 151 */ "table_body ::= table_section",
+ /* 152 */ "all_rows ::= row",
+ /* 153 */ "row ::= header_rows",
+ /* 154 */ "row ::= LINE_TABLE_SEPARATOR",
+ /* 155 */ "para ::= defs",
};
#endif /* NDEBUG */
@@ -1047,6 +1048,7 @@ static const struct {
{ 61, 2 },
{ 62, 2 },
{ 84, 2 },
+ { 84, 1 },
{ 86, 2 },
{ 85, 2 },
{ 87, 2 },
@@ -1349,9 +1351,9 @@ static void yy_reduce(
case 82: /* setext_1 ::= para LINE_SETEXT_1 */ yytestcase(yyruleno==82);
case 83: /* setext_2 ::= para LINE_SETEXT_2 */ yytestcase(yyruleno==83);
case 84: /* table ::= table_header table_body */ yytestcase(yyruleno==84);
- case 86: /* header_rows ::= header_rows LINE_TABLE */ yytestcase(yyruleno==86);
- case 87: /* table_body ::= table_body table_section */ yytestcase(yyruleno==87);
- case 90: /* all_rows ::= all_rows row */ yytestcase(yyruleno==90);
+ case 87: /* header_rows ::= header_rows LINE_TABLE */ yytestcase(yyruleno==87);
+ case 88: /* table_body ::= table_body table_section */ yytestcase(yyruleno==88);
+ case 91: /* all_rows ::= all_rows row */ yytestcase(yyruleno==91);
{ yylhsminor.yy0 = yymsp[-1].minor.yy0; token_chain_append(yymsp[-1].minor.yy0, yymsp[0].minor.yy0); }
yymsp[-1].minor.yy0 = yylhsminor.yy0;
break;
@@ -1405,82 +1407,86 @@ static void yy_reduce(
{ yylhsminor.yy0 = token_new_parent(yymsp[-1].minor.yy0, BLOCK_TABLE_HEADER); token_chain_append(yymsp[-1].minor.yy0, yymsp[0].minor.yy0); }
yymsp[-1].minor.yy0 = yylhsminor.yy0;
break;
- case 88: /* table_section ::= all_rows LINE_EMPTY */
+ case 86: /* table_header ::= LINE_TABLE_SEPARATOR */
+{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_TABLE_HEADER); }
+ yymsp[0].minor.yy0 = yylhsminor.yy0;
+ break;
+ case 89: /* table_section ::= all_rows LINE_EMPTY */
{ yylhsminor.yy0 = token_new_parent(yymsp[-1].minor.yy0, BLOCK_TABLE_SECTION); token_chain_append(yymsp[-1].minor.yy0, yymsp[0].minor.yy0); }
yymsp[-1].minor.yy0 = yylhsminor.yy0;
break;
- case 89: /* table_section ::= all_rows */
+ case 90: /* table_section ::= all_rows */
{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_TABLE_SECTION); }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
- case 91: /* para ::= all_rows */
+ case 92: /* para ::= all_rows */
{ yylhsminor.yy0 = yymsp[0].minor.yy0; }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
default:
- /* (92) chunk ::= chunk_line (OPTIMIZED OUT) */ assert(yyruleno!=92);
- /* (93) chunk_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==93);
- /* (94) chunk_line ::= LINE_STOP_COMMENT */ yytestcase(yyruleno==94);
- /* (95) nested_chunks ::= nested_chunk (OPTIMIZED OUT) */ assert(yyruleno!=95);
- /* (96) nested_chunk ::= empty */ yytestcase(yyruleno==96);
- /* (97) indented_line ::= LINE_INDENTED_TAB */ yytestcase(yyruleno==97);
- /* (98) indented_line ::= LINE_INDENTED_SPACE */ yytestcase(yyruleno==98);
- /* (99) opt_ext_chunk ::= chunk */ yytestcase(yyruleno==99);
- /* (100) tail ::= opt_ext_chunk (OPTIMIZED OUT) */ assert(yyruleno!=100);
- /* (101) tail ::= nested_chunks */ yytestcase(yyruleno==101);
- /* (102) blockquote ::= LINE_BLOCKQUOTE */ yytestcase(yyruleno==102);
- /* (103) quote_line ::= LINE_BLOCKQUOTE */ yytestcase(yyruleno==103);
- /* (104) quote_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==104);
- /* (105) def_citation ::= LINE_DEF_CITATION */ yytestcase(yyruleno==105);
- /* (106) def_footnote ::= LINE_DEF_FOOTNOTE */ yytestcase(yyruleno==106);
- /* (107) def_glossary ::= LINE_DEF_GLOSSARY */ yytestcase(yyruleno==107);
- /* (108) def_link ::= LINE_DEF_LINK */ yytestcase(yyruleno==108);
- /* (109) def_abbreviation ::= LINE_DEF_ABBREVIATION */ yytestcase(yyruleno==109);
- /* (110) defs ::= def (OPTIMIZED OUT) */ assert(yyruleno!=110);
- /* (111) empty ::= LINE_EMPTY */ yytestcase(yyruleno==111);
- /* (112) fenced_block ::= fenced_3 */ yytestcase(yyruleno==112);
- /* (113) fenced_3 ::= LINE_FENCE_BACKTICK_3 */ yytestcase(yyruleno==113);
- /* (114) fenced_3 ::= LINE_FENCE_BACKTICK_START_3 */ yytestcase(yyruleno==114);
- /* (115) fenced_block ::= fenced_4 */ yytestcase(yyruleno==115);
- /* (116) fenced_4 ::= LINE_FENCE_BACKTICK_4 */ yytestcase(yyruleno==116);
- /* (117) fenced_4 ::= LINE_FENCE_BACKTICK_START_4 */ yytestcase(yyruleno==117);
- /* (118) fenced_block ::= fenced_5 */ yytestcase(yyruleno==118);
- /* (119) fenced_5 ::= LINE_FENCE_BACKTICK_5 */ yytestcase(yyruleno==119);
- /* (120) fenced_5 ::= LINE_FENCE_BACKTICK_START_5 */ yytestcase(yyruleno==120);
- /* (121) fenced_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==121);
- /* (122) fenced_line ::= LINE_EMPTY */ yytestcase(yyruleno==122);
- /* (123) fenced_line ::= LINE_FALLBACK */ yytestcase(yyruleno==123);
- /* (124) fenced_line ::= LINE_HR */ yytestcase(yyruleno==124);
- /* (125) fenced_line ::= LINE_HTML */ yytestcase(yyruleno==125);
- /* (126) fenced_line ::= LINE_START_COMMENT */ yytestcase(yyruleno==126);
- /* (127) fenced_line ::= LINE_STOP_COMMENT */ yytestcase(yyruleno==127);
- /* (128) html_block ::= LINE_HTML */ yytestcase(yyruleno==128);
- /* (129) html_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==129);
- /* (130) html_line ::= LINE_FALLBACK */ yytestcase(yyruleno==130);
- /* (131) html_line ::= LINE_HR */ yytestcase(yyruleno==131);
- /* (132) html_line ::= LINE_HTML */ yytestcase(yyruleno==132);
- /* (133) html_com_block ::= html_comment */ yytestcase(yyruleno==133);
- /* (134) html_comment ::= LINE_START_COMMENT */ yytestcase(yyruleno==134);
- /* (135) comment_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==135);
- /* (136) comment_line ::= LINE_EMPTY */ yytestcase(yyruleno==136);
- /* (137) comment_line ::= LINE_FALLBACK */ yytestcase(yyruleno==137);
- /* (138) comment_line ::= LINE_HR */ yytestcase(yyruleno==138);
- /* (139) comment_line ::= LINE_HTML */ yytestcase(yyruleno==139);
- /* (140) indented_code ::= indented_line (OPTIMIZED OUT) */ assert(yyruleno!=140);
- /* (141) list_bullet ::= item_bullet (OPTIMIZED OUT) */ assert(yyruleno!=141);
- /* (142) list_enum ::= item_enum (OPTIMIZED OUT) */ assert(yyruleno!=142);
- /* (143) meta_block ::= LINE_META */ yytestcase(yyruleno==143);
- /* (144) meta_line ::= LINE_META */ yytestcase(yyruleno==144);
- /* (145) meta_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==145);
- /* (146) para ::= LINE_PLAIN */ yytestcase(yyruleno==146);
- /* (147) para ::= LINE_STOP_COMMENT */ yytestcase(yyruleno==147);
- /* (148) table ::= table_header */ yytestcase(yyruleno==148);
- /* (149) header_rows ::= LINE_TABLE */ yytestcase(yyruleno==149);
- /* (150) table_body ::= table_section (OPTIMIZED OUT) */ assert(yyruleno!=150);
- /* (151) all_rows ::= row (OPTIMIZED OUT) */ assert(yyruleno!=151);
- /* (152) row ::= header_rows */ yytestcase(yyruleno==152);
- /* (153) row ::= LINE_TABLE_SEPARATOR */ yytestcase(yyruleno==153);
- /* (154) para ::= defs */ yytestcase(yyruleno==154);
+ /* (93) chunk ::= chunk_line (OPTIMIZED OUT) */ assert(yyruleno!=93);
+ /* (94) chunk_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==94);
+ /* (95) chunk_line ::= LINE_STOP_COMMENT */ yytestcase(yyruleno==95);
+ /* (96) nested_chunks ::= nested_chunk (OPTIMIZED OUT) */ assert(yyruleno!=96);
+ /* (97) nested_chunk ::= empty */ yytestcase(yyruleno==97);
+ /* (98) indented_line ::= LINE_INDENTED_TAB */ yytestcase(yyruleno==98);
+ /* (99) indented_line ::= LINE_INDENTED_SPACE */ yytestcase(yyruleno==99);
+ /* (100) opt_ext_chunk ::= chunk */ yytestcase(yyruleno==100);
+ /* (101) tail ::= opt_ext_chunk (OPTIMIZED OUT) */ assert(yyruleno!=101);
+ /* (102) tail ::= nested_chunks */ yytestcase(yyruleno==102);
+ /* (103) blockquote ::= LINE_BLOCKQUOTE */ yytestcase(yyruleno==103);
+ /* (104) quote_line ::= LINE_BLOCKQUOTE */ yytestcase(yyruleno==104);
+ /* (105) quote_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==105);
+ /* (106) def_citation ::= LINE_DEF_CITATION */ yytestcase(yyruleno==106);
+ /* (107) def_footnote ::= LINE_DEF_FOOTNOTE */ yytestcase(yyruleno==107);
+ /* (108) def_glossary ::= LINE_DEF_GLOSSARY */ yytestcase(yyruleno==108);
+ /* (109) def_link ::= LINE_DEF_LINK */ yytestcase(yyruleno==109);
+ /* (110) def_abbreviation ::= LINE_DEF_ABBREVIATION */ yytestcase(yyruleno==110);
+ /* (111) defs ::= def (OPTIMIZED OUT) */ assert(yyruleno!=111);
+ /* (112) empty ::= LINE_EMPTY */ yytestcase(yyruleno==112);
+ /* (113) fenced_block ::= fenced_3 */ yytestcase(yyruleno==113);
+ /* (114) fenced_3 ::= LINE_FENCE_BACKTICK_3 */ yytestcase(yyruleno==114);
+ /* (115) fenced_3 ::= LINE_FENCE_BACKTICK_START_3 */ yytestcase(yyruleno==115);
+ /* (116) fenced_block ::= fenced_4 */ yytestcase(yyruleno==116);
+ /* (117) fenced_4 ::= LINE_FENCE_BACKTICK_4 */ yytestcase(yyruleno==117);
+ /* (118) fenced_4 ::= LINE_FENCE_BACKTICK_START_4 */ yytestcase(yyruleno==118);
+ /* (119) fenced_block ::= fenced_5 */ yytestcase(yyruleno==119);
+ /* (120) fenced_5 ::= LINE_FENCE_BACKTICK_5 */ yytestcase(yyruleno==120);
+ /* (121) fenced_5 ::= LINE_FENCE_BACKTICK_START_5 */ yytestcase(yyruleno==121);
+ /* (122) fenced_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==122);
+ /* (123) fenced_line ::= LINE_EMPTY */ yytestcase(yyruleno==123);
+ /* (124) fenced_line ::= LINE_FALLBACK */ yytestcase(yyruleno==124);
+ /* (125) fenced_line ::= LINE_HR */ yytestcase(yyruleno==125);
+ /* (126) fenced_line ::= LINE_HTML */ yytestcase(yyruleno==126);
+ /* (127) fenced_line ::= LINE_START_COMMENT */ yytestcase(yyruleno==127);
+ /* (128) fenced_line ::= LINE_STOP_COMMENT */ yytestcase(yyruleno==128);
+ /* (129) html_block ::= LINE_HTML */ yytestcase(yyruleno==129);
+ /* (130) html_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==130);
+ /* (131) html_line ::= LINE_FALLBACK */ yytestcase(yyruleno==131);
+ /* (132) html_line ::= LINE_HR */ yytestcase(yyruleno==132);
+ /* (133) html_line ::= LINE_HTML */ yytestcase(yyruleno==133);
+ /* (134) html_com_block ::= html_comment */ yytestcase(yyruleno==134);
+ /* (135) html_comment ::= LINE_START_COMMENT */ yytestcase(yyruleno==135);
+ /* (136) comment_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==136);
+ /* (137) comment_line ::= LINE_EMPTY */ yytestcase(yyruleno==137);
+ /* (138) comment_line ::= LINE_FALLBACK */ yytestcase(yyruleno==138);
+ /* (139) comment_line ::= LINE_HR */ yytestcase(yyruleno==139);
+ /* (140) comment_line ::= LINE_HTML */ yytestcase(yyruleno==140);
+ /* (141) indented_code ::= indented_line (OPTIMIZED OUT) */ assert(yyruleno!=141);
+ /* (142) list_bullet ::= item_bullet (OPTIMIZED OUT) */ assert(yyruleno!=142);
+ /* (143) list_enum ::= item_enum (OPTIMIZED OUT) */ assert(yyruleno!=143);
+ /* (144) meta_block ::= LINE_META */ yytestcase(yyruleno==144);
+ /* (145) meta_line ::= LINE_META */ yytestcase(yyruleno==145);
+ /* (146) meta_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==146);
+ /* (147) para ::= LINE_PLAIN */ yytestcase(yyruleno==147);
+ /* (148) para ::= LINE_STOP_COMMENT */ yytestcase(yyruleno==148);
+ /* (149) table ::= table_header */ yytestcase(yyruleno==149);
+ /* (150) header_rows ::= LINE_TABLE */ yytestcase(yyruleno==150);
+ /* (151) table_body ::= table_section (OPTIMIZED OUT) */ assert(yyruleno!=151);
+ /* (152) all_rows ::= row (OPTIMIZED OUT) */ assert(yyruleno!=152);
+ /* (153) row ::= header_rows */ yytestcase(yyruleno==153);
+ /* (154) row ::= LINE_TABLE_SEPARATOR */ yytestcase(yyruleno==154);
+ /* (155) para ::= defs */ yytestcase(yyruleno==155);
break;
/********** End reduce actions ************************************************/
};
diff --git a/Sources/libMultiMarkdown/parser.out b/Sources/libMultiMarkdown/parser.out
index 5105cff..14df9e8 100644
--- a/Sources/libMultiMarkdown/parser.out
+++ b/Sources/libMultiMarkdown/parser.out
@@ -108,6 +108,7 @@ State 0:
table ::= * table_header table_body
table ::= * table_header
table_header ::= * header_rows LINE_TABLE_SEPARATOR
+ table_header ::= * LINE_TABLE_SEPARATOR
header_rows ::= * header_rows LINE_TABLE
header_rows ::= * LINE_TABLE
all_rows ::= * all_rows row
@@ -118,20 +119,20 @@ State 0:
para ::= * defs
LINE_HR shift-reduce 9 block ::= LINE_HR
- LINE_YAML shift 45
+ LINE_YAML shift 46
LINE_PLAIN shift 16
- LINE_INDENTED_TAB shift-reduce 97 indented_line ::= LINE_INDENTED_TAB
- LINE_INDENTED_SPACE shift-reduce 98 indented_line ::= LINE_INDENTED_SPACE
- LINE_TABLE shift-reduce 149 header_rows ::= LINE_TABLE
- LINE_TABLE_SEPARATOR shift-reduce 153 row ::= LINE_TABLE_SEPARATOR
- LINE_HTML shift-reduce 128 html_block ::= LINE_HTML
+ LINE_INDENTED_TAB shift-reduce 98 indented_line ::= LINE_INDENTED_TAB
+ LINE_INDENTED_SPACE shift-reduce 99 indented_line ::= LINE_INDENTED_SPACE
+ LINE_TABLE shift-reduce 150 header_rows ::= LINE_TABLE
+ LINE_TABLE_SEPARATOR shift 42
+ LINE_HTML shift-reduce 129 html_block ::= LINE_HTML
LINE_ATX_1 shift-reduce 3 block ::= LINE_ATX_1
LINE_ATX_2 shift-reduce 4 block ::= LINE_ATX_2
LINE_ATX_3 shift-reduce 5 block ::= LINE_ATX_3
LINE_ATX_4 shift-reduce 6 block ::= LINE_ATX_4
LINE_ATX_5 shift-reduce 7 block ::= LINE_ATX_5
LINE_ATX_6 shift-reduce 8 block ::= LINE_ATX_6
- LINE_BLOCKQUOTE shift-reduce 102 blockquote ::= LINE_BLOCKQUOTE
+ LINE_BLOCKQUOTE shift-reduce 103 blockquote ::= LINE_BLOCKQUOTE
LINE_LIST_BULLETED shift 7
LINE_LIST_ENUMERATED shift 6
LINE_DEF_ABBREVIATION shift 17
@@ -141,16 +142,16 @@ State 0:
LINE_DEF_LINK shift 18
LINE_TOC shift-reduce 11 block ::= LINE_TOC
LINE_DEFINITION shift 5
- LINE_META shift-reduce 143 meta_block ::= LINE_META
- LINE_FENCE_BACKTICK_3 shift-reduce 113 fenced_3 ::= LINE_FENCE_BACKTICK_3
- LINE_FENCE_BACKTICK_4 shift-reduce 116 fenced_4 ::= LINE_FENCE_BACKTICK_4
- LINE_FENCE_BACKTICK_5 shift-reduce 119 fenced_5 ::= LINE_FENCE_BACKTICK_5
- LINE_FENCE_BACKTICK_START_3 shift-reduce 114 fenced_3 ::= LINE_FENCE_BACKTICK_START_3
- LINE_FENCE_BACKTICK_START_4 shift-reduce 117 fenced_4 ::= LINE_FENCE_BACKTICK_START_4
- LINE_FENCE_BACKTICK_START_5 shift-reduce 120 fenced_5 ::= LINE_FENCE_BACKTICK_START_5
- LINE_STOP_COMMENT shift-reduce 147 para ::= LINE_STOP_COMMENT
- LINE_EMPTY shift-reduce 111 empty ::= LINE_EMPTY
- LINE_START_COMMENT shift-reduce 134 html_comment ::= LINE_START_COMMENT
+ LINE_META shift-reduce 144 meta_block ::= LINE_META
+ LINE_FENCE_BACKTICK_3 shift-reduce 114 fenced_3 ::= LINE_FENCE_BACKTICK_3
+ LINE_FENCE_BACKTICK_4 shift-reduce 117 fenced_4 ::= LINE_FENCE_BACKTICK_4
+ LINE_FENCE_BACKTICK_5 shift-reduce 120 fenced_5 ::= LINE_FENCE_BACKTICK_5
+ LINE_FENCE_BACKTICK_START_3 shift-reduce 115 fenced_3 ::= LINE_FENCE_BACKTICK_START_3
+ LINE_FENCE_BACKTICK_START_4 shift-reduce 118 fenced_4 ::= LINE_FENCE_BACKTICK_START_4
+ LINE_FENCE_BACKTICK_START_5 shift-reduce 121 fenced_5 ::= LINE_FENCE_BACKTICK_START_5
+ LINE_STOP_COMMENT shift-reduce 148 para ::= LINE_STOP_COMMENT
+ LINE_EMPTY shift-reduce 112 empty ::= LINE_EMPTY
+ LINE_START_COMMENT shift-reduce 135 html_comment ::= LINE_START_COMMENT
doc accept
blocks shift 1
block shift-reduce 2 blocks ::= block
@@ -161,7 +162,7 @@ State 0:
def_glossary shift-reduce 16 block ::= def_glossary
def_link shift-reduce 17 block ::= def_link
definition_block shift-reduce 18 block ::= definition_block
- empty shift 44
+ empty shift 45
fenced_block shift-reduce 20 block ::= fenced_block
html_block shift 29
html_com_block shift-reduce 22 block ::= html_com_block
@@ -183,7 +184,7 @@ State 0:
item_bullet shift 41 /* because item_bullet==list_bullet */
item_enum shift 40 /* because item_enum==list_enum */
table_header shift 8
- header_rows shift 42
+ header_rows shift 43
all_rows shift 15
row shift 15 /* because row==all_rows */
@@ -296,6 +297,7 @@ State 1:
table ::= * table_header table_body
table ::= * table_header
table_header ::= * header_rows LINE_TABLE_SEPARATOR
+ table_header ::= * LINE_TABLE_SEPARATOR
header_rows ::= * header_rows LINE_TABLE
header_rows ::= * LINE_TABLE
all_rows ::= * all_rows row
@@ -307,20 +309,20 @@ State 1:
$ reduce 0 doc ::= blocks
LINE_HR shift-reduce 9 block ::= LINE_HR
- LINE_YAML shift 45
+ LINE_YAML shift 46
LINE_PLAIN shift 16
- LINE_INDENTED_TAB shift-reduce 97 indented_line ::= LINE_INDENTED_TAB
- LINE_INDENTED_SPACE shift-reduce 98 indented_line ::= LINE_INDENTED_SPACE
- LINE_TABLE shift-reduce 149 header_rows ::= LINE_TABLE
- LINE_TABLE_SEPARATOR shift-reduce 153 row ::= LINE_TABLE_SEPARATOR
- LINE_HTML shift-reduce 128 html_block ::= LINE_HTML
+ LINE_INDENTED_TAB shift-reduce 98 indented_line ::= LINE_INDENTED_TAB
+ LINE_INDENTED_SPACE shift-reduce 99 indented_line ::= LINE_INDENTED_SPACE
+ LINE_TABLE shift-reduce 150 header_rows ::= LINE_TABLE
+ LINE_TABLE_SEPARATOR shift 42
+ LINE_HTML shift-reduce 129 html_block ::= LINE_HTML
LINE_ATX_1 shift-reduce 3 block ::= LINE_ATX_1
LINE_ATX_2 shift-reduce 4 block ::= LINE_ATX_2
LINE_ATX_3 shift-reduce 5 block ::= LINE_ATX_3
LINE_ATX_4 shift-reduce 6 block ::= LINE_ATX_4
LINE_ATX_5 shift-reduce 7 block ::= LINE_ATX_5
LINE_ATX_6 shift-reduce 8 block ::= LINE_ATX_6
- LINE_BLOCKQUOTE shift-reduce 102 blockquote ::= LINE_BLOCKQUOTE
+ LINE_BLOCKQUOTE shift-reduce 103 blockquote ::= LINE_BLOCKQUOTE
LINE_LIST_BULLETED shift 7
LINE_LIST_ENUMERATED shift 6
LINE_DEF_ABBREVIATION shift 17
@@ -330,16 +332,16 @@ State 1:
LINE_DEF_LINK shift 18
LINE_TOC shift-reduce 11 block ::= LINE_TOC
LINE_DEFINITION shift 5
- LINE_META shift-reduce 143 meta_block ::= LINE_META
- LINE_FENCE_BACKTICK_3 shift-reduce 113 fenced_3 ::= LINE_FENCE_BACKTICK_3
- LINE_FENCE_BACKTICK_4 shift-reduce 116 fenced_4 ::= LINE_FENCE_BACKTICK_4
- LINE_FENCE_BACKTICK_5 shift-reduce 119 fenced_5 ::= LINE_FENCE_BACKTICK_5
- LINE_FENCE_BACKTICK_START_3 shift-reduce 114 fenced_3 ::= LINE_FENCE_BACKTICK_START_3
- LINE_FENCE_BACKTICK_START_4 shift-reduce 117 fenced_4 ::= LINE_FENCE_BACKTICK_START_4
- LINE_FENCE_BACKTICK_START_5 shift-reduce 120 fenced_5 ::= LINE_FENCE_BACKTICK_START_5
- LINE_STOP_COMMENT shift-reduce 147 para ::= LINE_STOP_COMMENT
- LINE_EMPTY shift-reduce 111 empty ::= LINE_EMPTY
- LINE_START_COMMENT shift-reduce 134 html_comment ::= LINE_START_COMMENT
+ LINE_META shift-reduce 144 meta_block ::= LINE_META
+ LINE_FENCE_BACKTICK_3 shift-reduce 114 fenced_3 ::= LINE_FENCE_BACKTICK_3
+ LINE_FENCE_BACKTICK_4 shift-reduce 117 fenced_4 ::= LINE_FENCE_BACKTICK_4
+ LINE_FENCE_BACKTICK_5 shift-reduce 120 fenced_5 ::= LINE_FENCE_BACKTICK_5
+ LINE_FENCE_BACKTICK_START_3 shift-reduce 115 fenced_3 ::= LINE_FENCE_BACKTICK_START_3
+ LINE_FENCE_BACKTICK_START_4 shift-reduce 118 fenced_4 ::= LINE_FENCE_BACKTICK_START_4
+ LINE_FENCE_BACKTICK_START_5 shift-reduce 121 fenced_5 ::= LINE_FENCE_BACKTICK_START_5
+ LINE_STOP_COMMENT shift-reduce 148 para ::= LINE_STOP_COMMENT
+ LINE_EMPTY shift-reduce 112 empty ::= LINE_EMPTY
+ LINE_START_COMMENT shift-reduce 135 html_comment ::= LINE_START_COMMENT
block shift-reduce 1 blocks ::= blocks block
blockquote shift 37
def_abbreviation shift-reduce 13 block ::= def_abbreviation
@@ -348,7 +350,7 @@ State 1:
def_glossary shift-reduce 16 block ::= def_glossary
def_link shift-reduce 17 block ::= def_link
definition_block shift-reduce 18 block ::= definition_block
- empty shift 44
+ empty shift 45
fenced_block shift-reduce 20 block ::= fenced_block
html_block shift 29
html_com_block shift-reduce 22 block ::= html_com_block
@@ -370,7 +372,7 @@ State 1:
item_bullet shift 41 /* because item_bullet==list_bullet */
item_enum shift 40 /* because item_enum==list_enum */
table_header shift 8
- header_rows shift 42
+ header_rows shift 43
all_rows shift 15
row shift 15 /* because row==all_rows */
@@ -389,15 +391,15 @@ State 2:
tail ::= * opt_ext_chunk
tail ::= * nested_chunks
def_glossary ::= LINE_DEF_GLOSSARY * tail
- (107) def_glossary ::= LINE_DEF_GLOSSARY *
+ (108) def_glossary ::= LINE_DEF_GLOSSARY *
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- LINE_CONTINUATION shift-reduce 93 chunk_line ::= LINE_CONTINUATION
- LINE_STOP_COMMENT shift-reduce 94 chunk_line ::= LINE_STOP_COMMENT
- LINE_STOP_COMMENT reduce 107 ** Parsing conflict **
- LINE_EMPTY shift-reduce 111 empty ::= LINE_EMPTY
- LINE_EMPTY reduce 107 ** Parsing conflict **
+ LINE_CONTINUATION shift-reduce 94 chunk_line ::= LINE_CONTINUATION
+ LINE_STOP_COMMENT shift-reduce 95 chunk_line ::= LINE_STOP_COMMENT
+ LINE_STOP_COMMENT reduce 108 ** Parsing conflict **
+ LINE_EMPTY shift-reduce 112 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 108 ** Parsing conflict **
empty shift 31
chunk shift 9
chunk_line shift 9 /* because chunk_line==chunk */
@@ -405,7 +407,7 @@ State 2:
nested_chunk shift 20 /* because nested_chunk==nested_chunks */
opt_ext_chunk shift-reduce 41 def_glossary ::= LINE_DEF_GLOSSARY tail /* because opt_ext_chunk==tail */
tail shift-reduce 41 def_glossary ::= LINE_DEF_GLOSSARY tail
- {default} reduce 107 def_glossary ::= LINE_DEF_GLOSSARY
+ {default} reduce 108 def_glossary ::= LINE_DEF_GLOSSARY
State 3:
chunk ::= * chunk chunk_line
@@ -422,15 +424,15 @@ State 3:
tail ::= * opt_ext_chunk
tail ::= * nested_chunks
def_footnote ::= LINE_DEF_FOOTNOTE * tail
- (106) def_footnote ::= LINE_DEF_FOOTNOTE *
+ (107) def_footnote ::= LINE_DEF_FOOTNOTE *
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- LINE_CONTINUATION shift-reduce 93 chunk_line ::= LINE_CONTINUATION
- LINE_STOP_COMMENT shift-reduce 94 chunk_line ::= LINE_STOP_COMMENT
- LINE_STOP_COMMENT reduce 106 ** Parsing conflict **
- LINE_EMPTY shift-reduce 111 empty ::= LINE_EMPTY
- LINE_EMPTY reduce 106 ** Parsing conflict **
+ LINE_CONTINUATION shift-reduce 94 chunk_line ::= LINE_CONTINUATION
+ LINE_STOP_COMMENT shift-reduce 95 chunk_line ::= LINE_STOP_COMMENT
+ LINE_STOP_COMMENT reduce 107 ** Parsing conflict **
+ LINE_EMPTY shift-reduce 112 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 107 ** Parsing conflict **
empty shift 31
chunk shift 9
chunk_line shift 9 /* because chunk_line==chunk */
@@ -438,7 +440,7 @@ State 3:
nested_chunk shift 20 /* because nested_chunk==nested_chunks */
opt_ext_chunk shift-reduce 40 def_footnote ::= LINE_DEF_FOOTNOTE tail /* because opt_ext_chunk==tail */
tail shift-reduce 40 def_footnote ::= LINE_DEF_FOOTNOTE tail
- {default} reduce 106 def_footnote ::= LINE_DEF_FOOTNOTE
+ {default} reduce 107 def_footnote ::= LINE_DEF_FOOTNOTE
State 4:
chunk ::= * chunk chunk_line
@@ -455,15 +457,15 @@ State 4:
tail ::= * opt_ext_chunk
tail ::= * nested_chunks
def_citation ::= LINE_DEF_CITATION * tail
- (105) def_citation ::= LINE_DEF_CITATION *
+ (106) def_citation ::= LINE_DEF_CITATION *
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- LINE_CONTINUATION shift-reduce 93 chunk_line ::= LINE_CONTINUATION
- LINE_STOP_COMMENT shift-reduce 94 chunk_line ::= LINE_STOP_COMMENT
- LINE_STOP_COMMENT reduce 105 ** Parsing conflict **
- LINE_EMPTY shift-reduce 111 empty ::= LINE_EMPTY
- LINE_EMPTY reduce 105 ** Parsing conflict **
+ LINE_CONTINUATION shift-reduce 94 chunk_line ::= LINE_CONTINUATION
+ LINE_STOP_COMMENT shift-reduce 95 chunk_line ::= LINE_STOP_COMMENT
+ LINE_STOP_COMMENT reduce 106 ** Parsing conflict **
+ LINE_EMPTY shift-reduce 112 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 106 ** Parsing conflict **
empty shift 31
chunk shift 9
chunk_line shift 9 /* because chunk_line==chunk */
@@ -471,7 +473,7 @@ State 4:
nested_chunk shift 20 /* because nested_chunk==nested_chunks */
opt_ext_chunk shift-reduce 39 def_citation ::= LINE_DEF_CITATION tail /* because opt_ext_chunk==tail */
tail shift-reduce 39 def_citation ::= LINE_DEF_CITATION tail
- {default} reduce 105 def_citation ::= LINE_DEF_CITATION
+ {default} reduce 106 def_citation ::= LINE_DEF_CITATION
State 5:
chunk ::= * chunk chunk_line
@@ -492,10 +494,10 @@ State 5:
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- LINE_CONTINUATION shift-reduce 93 chunk_line ::= LINE_CONTINUATION
- LINE_STOP_COMMENT shift-reduce 94 chunk_line ::= LINE_STOP_COMMENT
+ LINE_CONTINUATION shift-reduce 94 chunk_line ::= LINE_CONTINUATION
+ LINE_STOP_COMMENT shift-reduce 95 chunk_line ::= LINE_STOP_COMMENT
LINE_STOP_COMMENT reduce 47 ** Parsing conflict **
- LINE_EMPTY shift-reduce 111 empty ::= LINE_EMPTY
+ LINE_EMPTY shift-reduce 112 empty ::= LINE_EMPTY
LINE_EMPTY reduce 47 ** Parsing conflict **
empty shift 31
chunk shift 9
@@ -524,10 +526,10 @@ State 6:
item_enum ::= LINE_LIST_ENUMERATED * nested_chunks
(78) item_enum ::= LINE_LIST_ENUMERATED *
- LINE_CONTINUATION shift-reduce 93 chunk_line ::= LINE_CONTINUATION
- LINE_STOP_COMMENT shift-reduce 94 chunk_line ::= LINE_STOP_COMMENT
+ LINE_CONTINUATION shift-reduce 94 chunk_line ::= LINE_CONTINUATION
+ LINE_STOP_COMMENT shift-reduce 95 chunk_line ::= LINE_STOP_COMMENT
LINE_STOP_COMMENT reduce 78 ** Parsing conflict **
- LINE_EMPTY shift-reduce 111 empty ::= LINE_EMPTY
+ LINE_EMPTY shift-reduce 112 empty ::= LINE_EMPTY
LINE_EMPTY reduce 78 ** Parsing conflict **
empty shift 31
chunk shift 10
@@ -555,10 +557,10 @@ State 7:
item_bullet ::= LINE_LIST_BULLETED * nested_chunks
(73) item_bullet ::= LINE_LIST_BULLETED *
- LINE_CONTINUATION shift-reduce 93 chunk_line ::= LINE_CONTINUATION
- LINE_STOP_COMMENT shift-reduce 94 chunk_line ::= LINE_STOP_COMMENT
+ LINE_CONTINUATION shift-reduce 94 chunk_line ::= LINE_CONTINUATION
+ LINE_STOP_COMMENT shift-reduce 95 chunk_line ::= LINE_STOP_COMMENT
LINE_STOP_COMMENT reduce 73 ** Parsing conflict **
- LINE_EMPTY shift-reduce 111 empty ::= LINE_EMPTY
+ LINE_EMPTY shift-reduce 112 empty ::= LINE_EMPTY
LINE_EMPTY reduce 73 ** Parsing conflict **
empty shift 31
chunk shift 11
@@ -570,7 +572,7 @@ State 7:
State 8:
table ::= table_header * table_body
- (148) table ::= table_header *
+ (149) table ::= table_header *
header_rows ::= * header_rows LINE_TABLE
header_rows ::= * LINE_TABLE
table_body ::= * table_body table_section
@@ -582,16 +584,16 @@ State 8:
row ::= * header_rows
row ::= * LINE_TABLE_SEPARATOR
- LINE_TABLE shift-reduce 149 header_rows ::= LINE_TABLE
- LINE_TABLE reduce 148 ** Parsing conflict **
- LINE_TABLE_SEPARATOR shift-reduce 153 row ::= LINE_TABLE_SEPARATOR
- LINE_TABLE_SEPARATOR reduce 148 ** Parsing conflict **
+ LINE_TABLE shift-reduce 150 header_rows ::= LINE_TABLE
+ LINE_TABLE reduce 149 ** Parsing conflict **
+ LINE_TABLE_SEPARATOR shift-reduce 154 row ::= LINE_TABLE_SEPARATOR
+ LINE_TABLE_SEPARATOR reduce 149 ** Parsing conflict **
table_body shift 12
- header_rows shift 43
+ header_rows shift 44
table_section shift 12 /* because table_section==table_body */
all_rows shift 13
row shift 13 /* because row==all_rows */
- {default} reduce 148 table ::= table_header
+ {default} reduce 149 table ::= table_header
State 9:
chunk ::= chunk * chunk_line
@@ -603,20 +605,20 @@ State 9:
nested_chunk ::= * empty indented_line
nested_chunk ::= * empty
opt_ext_chunk ::= chunk * nested_chunks
- (99) opt_ext_chunk ::= chunk *
+ (100) opt_ext_chunk ::= chunk *
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- LINE_CONTINUATION shift-reduce 93 chunk_line ::= LINE_CONTINUATION
- LINE_STOP_COMMENT shift-reduce 94 chunk_line ::= LINE_STOP_COMMENT
- LINE_STOP_COMMENT reduce 99 ** Parsing conflict **
- LINE_EMPTY shift-reduce 111 empty ::= LINE_EMPTY
- LINE_EMPTY reduce 99 ** Parsing conflict **
+ LINE_CONTINUATION shift-reduce 94 chunk_line ::= LINE_CONTINUATION
+ LINE_STOP_COMMENT shift-reduce 95 chunk_line ::= LINE_STOP_COMMENT
+ LINE_STOP_COMMENT reduce 100 ** Parsing conflict **
+ LINE_EMPTY shift-reduce 112 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 100 ** Parsing conflict **
empty shift 31
chunk_line shift-reduce 32 chunk ::= chunk chunk_line
nested_chunks shift 21
nested_chunk shift 21 /* because nested_chunk==nested_chunks */
- {default} reduce 99 opt_ext_chunk ::= chunk
+ {default} reduce 100 opt_ext_chunk ::= chunk
State 10:
chunk ::= chunk * chunk_line
@@ -632,10 +634,10 @@ State 10:
empty ::= * LINE_EMPTY
(76) item_enum ::= LINE_LIST_ENUMERATED chunk *
- LINE_CONTINUATION shift-reduce 93 chunk_line ::= LINE_CONTINUATION
- LINE_STOP_COMMENT shift-reduce 94 chunk_line ::= LINE_STOP_COMMENT
+ LINE_CONTINUATION shift-reduce 94 chunk_line ::= LINE_CONTINUATION
+ LINE_STOP_COMMENT shift-reduce 95 chunk_line ::= LINE_STOP_COMMENT
LINE_STOP_COMMENT reduce 76 ** Parsing conflict **
- LINE_EMPTY shift-reduce 111 empty ::= LINE_EMPTY
+ LINE_EMPTY shift-reduce 112 empty ::= LINE_EMPTY
LINE_EMPTY reduce 76 ** Parsing conflict **
empty shift 31
chunk_line shift-reduce 32 chunk ::= chunk chunk_line
@@ -657,10 +659,10 @@ State 11:
empty ::= * LINE_EMPTY
(71) item_bullet ::= LINE_LIST_BULLETED chunk *
- LINE_CONTINUATION shift-reduce 93 chunk_line ::= LINE_CONTINUATION
- LINE_STOP_COMMENT shift-reduce 94 chunk_line ::= LINE_STOP_COMMENT
+ LINE_CONTINUATION shift-reduce 94 chunk_line ::= LINE_CONTINUATION
+ LINE_STOP_COMMENT shift-reduce 95 chunk_line ::= LINE_STOP_COMMENT
LINE_STOP_COMMENT reduce 71 ** Parsing conflict **
- LINE_EMPTY shift-reduce 111 empty ::= LINE_EMPTY
+ LINE_EMPTY shift-reduce 112 empty ::= LINE_EMPTY
LINE_EMPTY reduce 71 ** Parsing conflict **
empty shift 31
chunk_line shift-reduce 32 chunk ::= chunk chunk_line
@@ -680,12 +682,12 @@ State 12:
row ::= * header_rows
row ::= * LINE_TABLE_SEPARATOR
- LINE_TABLE shift-reduce 149 header_rows ::= LINE_TABLE
+ LINE_TABLE shift-reduce 150 header_rows ::= LINE_TABLE
LINE_TABLE reduce 84 ** Parsing conflict **
- LINE_TABLE_SEPARATOR shift-reduce 153 row ::= LINE_TABLE_SEPARATOR
+ LINE_TABLE_SEPARATOR shift-reduce 154 row ::= LINE_TABLE_SEPARATOR
LINE_TABLE_SEPARATOR reduce 84 ** Parsing conflict **
- header_rows shift 43
- table_section shift-reduce 87 table_body ::= table_body table_section
+ header_rows shift 44
+ table_section shift-reduce 88 table_body ::= table_body table_section
all_rows shift 13
row shift 13 /* because row==all_rows */
{default} reduce 84 table ::= table_header table_body
@@ -694,20 +696,20 @@ State 13:
header_rows ::= * header_rows LINE_TABLE
header_rows ::= * LINE_TABLE
table_section ::= all_rows * LINE_EMPTY
- (89) table_section ::= all_rows *
+ (90) table_section ::= all_rows *
all_rows ::= all_rows * row
row ::= * header_rows
row ::= * LINE_TABLE_SEPARATOR
- LINE_TABLE shift-reduce 149 header_rows ::= LINE_TABLE
- LINE_TABLE reduce 89 ** Parsing conflict **
- LINE_TABLE_SEPARATOR shift-reduce 153 row ::= LINE_TABLE_SEPARATOR
- LINE_TABLE_SEPARATOR reduce 89 ** Parsing conflict **
- LINE_EMPTY shift-reduce 88 table_section ::= all_rows LINE_EMPTY
- LINE_EMPTY reduce 89 ** Parsing conflict **
- header_rows shift 43
- row shift-reduce 90 all_rows ::= all_rows row
- {default} reduce 89 table_section ::= all_rows
+ LINE_TABLE shift-reduce 150 header_rows ::= LINE_TABLE
+ LINE_TABLE reduce 90 ** Parsing conflict **
+ LINE_TABLE_SEPARATOR shift-reduce 154 row ::= LINE_TABLE_SEPARATOR
+ LINE_TABLE_SEPARATOR reduce 90 ** Parsing conflict **
+ LINE_EMPTY shift-reduce 89 table_section ::= all_rows LINE_EMPTY
+ LINE_EMPTY reduce 90 ** Parsing conflict **
+ header_rows shift 44
+ row shift-reduce 91 all_rows ::= all_rows row
+ {default} reduce 90 table_section ::= all_rows
State 14:
(28) block ::= para *
@@ -733,15 +735,15 @@ State 15:
all_rows ::= all_rows * row
row ::= * header_rows
row ::= * LINE_TABLE_SEPARATOR
- (91) para ::= all_rows *
+ (92) para ::= all_rows *
- LINE_TABLE shift-reduce 149 header_rows ::= LINE_TABLE
- LINE_TABLE reduce 91 ** Parsing conflict **
- LINE_TABLE_SEPARATOR shift-reduce 153 row ::= LINE_TABLE_SEPARATOR
- LINE_TABLE_SEPARATOR reduce 91 ** Parsing conflict **
- header_rows shift 43
- row shift-reduce 90 all_rows ::= all_rows row
- {default} reduce 91 para ::= all_rows
+ LINE_TABLE shift-reduce 150 header_rows ::= LINE_TABLE
+ LINE_TABLE reduce 92 ** Parsing conflict **
+ LINE_TABLE_SEPARATOR shift-reduce 154 row ::= LINE_TABLE_SEPARATOR
+ LINE_TABLE_SEPARATOR reduce 92 ** Parsing conflict **
+ header_rows shift 44
+ row shift-reduce 91 all_rows ::= all_rows row
+ {default} reduce 92 para ::= all_rows
State 16:
chunk ::= * chunk chunk_line
@@ -749,14 +751,14 @@ State 16:
chunk_line ::= * LINE_CONTINUATION
chunk_line ::= * LINE_STOP_COMMENT
para ::= LINE_PLAIN * chunk
- (146) para ::= LINE_PLAIN *
+ (147) para ::= LINE_PLAIN *
- LINE_CONTINUATION shift-reduce 93 chunk_line ::= LINE_CONTINUATION
- LINE_STOP_COMMENT shift-reduce 94 chunk_line ::= LINE_STOP_COMMENT
- LINE_STOP_COMMENT reduce 146 ** Parsing conflict **
+ LINE_CONTINUATION shift-reduce 94 chunk_line ::= LINE_CONTINUATION
+ LINE_STOP_COMMENT shift-reduce 95 chunk_line ::= LINE_STOP_COMMENT
+ LINE_STOP_COMMENT reduce 147 ** Parsing conflict **
chunk shift 33
chunk_line shift 33 /* because chunk_line==chunk */
- {default} reduce 146 para ::= LINE_PLAIN
+ {default} reduce 147 para ::= LINE_PLAIN
State 17:
chunk ::= * chunk chunk_line
@@ -764,14 +766,14 @@ State 17:
chunk_line ::= * LINE_CONTINUATION
chunk_line ::= * LINE_STOP_COMMENT
def_abbreviation ::= LINE_DEF_ABBREVIATION * chunk
- (109) def_abbreviation ::= LINE_DEF_ABBREVIATION *
+ (110) def_abbreviation ::= LINE_DEF_ABBREVIATION *
- LINE_CONTINUATION shift-reduce 93 chunk_line ::= LINE_CONTINUATION
- LINE_STOP_COMMENT shift-reduce 94 chunk_line ::= LINE_STOP_COMMENT
- LINE_STOP_COMMENT reduce 109 ** Parsing conflict **
+ LINE_CONTINUATION shift-reduce 94 chunk_line ::= LINE_CONTINUATION
+ LINE_STOP_COMMENT shift-reduce 95 chunk_line ::= LINE_STOP_COMMENT
+ LINE_STOP_COMMENT reduce 110 ** Parsing conflict **
chunk shift 34
chunk_line shift 34 /* because chunk_line==chunk */
- {default} reduce 109 def_abbreviation ::= LINE_DEF_ABBREVIATION
+ {default} reduce 110 def_abbreviation ::= LINE_DEF_ABBREVIATION
State 18:
chunk ::= * chunk chunk_line
@@ -779,14 +781,14 @@ State 18:
chunk_line ::= * LINE_CONTINUATION
chunk_line ::= * LINE_STOP_COMMENT
def_link ::= LINE_DEF_LINK * chunk
- (108) def_link ::= LINE_DEF_LINK *
+ (109) def_link ::= LINE_DEF_LINK *
- LINE_CONTINUATION shift-reduce 93 chunk_line ::= LINE_CONTINUATION
- LINE_STOP_COMMENT shift-reduce 94 chunk_line ::= LINE_STOP_COMMENT
- LINE_STOP_COMMENT reduce 108 ** Parsing conflict **
+ LINE_CONTINUATION shift-reduce 94 chunk_line ::= LINE_CONTINUATION
+ LINE_STOP_COMMENT shift-reduce 95 chunk_line ::= LINE_STOP_COMMENT
+ LINE_STOP_COMMENT reduce 109 ** Parsing conflict **
chunk shift 35
chunk_line shift 35 /* because chunk_line==chunk */
- {default} reduce 108 def_link ::= LINE_DEF_LINK
+ {default} reduce 109 def_link ::= LINE_DEF_LINK
State 19:
chunk ::= * chunk chunk_line
@@ -796,8 +798,8 @@ State 19:
nested_chunk ::= empty indented_line * chunk
(35) nested_chunk ::= empty indented_line *
- LINE_CONTINUATION shift-reduce 93 chunk_line ::= LINE_CONTINUATION
- LINE_STOP_COMMENT shift-reduce 94 chunk_line ::= LINE_STOP_COMMENT
+ LINE_CONTINUATION shift-reduce 94 chunk_line ::= LINE_CONTINUATION
+ LINE_STOP_COMMENT shift-reduce 95 chunk_line ::= LINE_STOP_COMMENT
LINE_STOP_COMMENT reduce 35 ** Parsing conflict **
chunk shift 36
chunk_line shift 36 /* because chunk_line==chunk */
@@ -808,15 +810,15 @@ State 20:
nested_chunk ::= * empty indented_line chunk
nested_chunk ::= * empty indented_line
nested_chunk ::= * empty
- (101) tail ::= nested_chunks *
+ (102) tail ::= nested_chunks *
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- LINE_EMPTY shift-reduce 111 empty ::= LINE_EMPTY
- LINE_EMPTY reduce 101 ** Parsing conflict **
+ LINE_EMPTY shift-reduce 112 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 102 ** Parsing conflict **
empty shift 31
nested_chunk shift-reduce 33 nested_chunks ::= nested_chunks nested_chunk
- {default} reduce 101 tail ::= nested_chunks
+ {default} reduce 102 tail ::= nested_chunks
State 21:
nested_chunks ::= nested_chunks * nested_chunk
@@ -827,7 +829,7 @@ State 21:
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- LINE_EMPTY shift-reduce 111 empty ::= LINE_EMPTY
+ LINE_EMPTY shift-reduce 112 empty ::= LINE_EMPTY
LINE_EMPTY reduce 37 ** Parsing conflict **
empty shift 31
nested_chunk shift-reduce 33 nested_chunks ::= nested_chunks nested_chunk
@@ -842,7 +844,7 @@ State 22:
empty ::= * LINE_EMPTY
(77) item_enum ::= LINE_LIST_ENUMERATED nested_chunks *
- LINE_EMPTY shift-reduce 111 empty ::= LINE_EMPTY
+ LINE_EMPTY shift-reduce 112 empty ::= LINE_EMPTY
LINE_EMPTY reduce 77 ** Parsing conflict **
empty shift 31
nested_chunk shift-reduce 33 nested_chunks ::= nested_chunks nested_chunk
@@ -857,7 +859,7 @@ State 23:
empty ::= * LINE_EMPTY
(72) item_bullet ::= LINE_LIST_BULLETED nested_chunks *
- LINE_EMPTY shift-reduce 111 empty ::= LINE_EMPTY
+ LINE_EMPTY shift-reduce 112 empty ::= LINE_EMPTY
LINE_EMPTY reduce 72 ** Parsing conflict **
empty shift 31
nested_chunk shift-reduce 33 nested_chunks ::= nested_chunks nested_chunk
@@ -872,7 +874,7 @@ State 24:
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- LINE_EMPTY shift-reduce 111 empty ::= LINE_EMPTY
+ LINE_EMPTY shift-reduce 112 empty ::= LINE_EMPTY
LINE_EMPTY reduce 36 ** Parsing conflict **
empty shift 31
nested_chunk shift-reduce 33 nested_chunks ::= nested_chunks nested_chunk
@@ -880,7 +882,7 @@ State 24:
State 25:
fenced_block ::= fenced_5 * LINE_FENCE_BACKTICK_5
- (118) fenced_block ::= fenced_5 *
+ (119) fenced_block ::= fenced_5 *
fenced_5 ::= fenced_5 * fenced_line
fenced_5 ::= fenced_5 * LINE_FENCE_BACKTICK_3
fenced_5 ::= fenced_5 * LINE_FENCE_BACKTICK_START_3
@@ -894,35 +896,35 @@ State 25:
fenced_line ::= * LINE_START_COMMENT
fenced_line ::= * LINE_STOP_COMMENT
- LINE_HR shift-reduce 124 fenced_line ::= LINE_HR
- LINE_HR reduce 118 ** Parsing conflict **
- LINE_CONTINUATION shift-reduce 121 fenced_line ::= LINE_CONTINUATION
- LINE_FALLBACK shift-reduce 123 fenced_line ::= LINE_FALLBACK
- LINE_HTML shift-reduce 125 fenced_line ::= LINE_HTML
- LINE_HTML reduce 118 ** Parsing conflict **
+ LINE_HR shift-reduce 125 fenced_line ::= LINE_HR
+ LINE_HR reduce 119 ** Parsing conflict **
+ LINE_CONTINUATION shift-reduce 122 fenced_line ::= LINE_CONTINUATION
+ LINE_FALLBACK shift-reduce 124 fenced_line ::= LINE_FALLBACK
+ LINE_HTML shift-reduce 126 fenced_line ::= LINE_HTML
+ LINE_HTML reduce 119 ** Parsing conflict **
LINE_FENCE_BACKTICK_3 shift-reduce 60 fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_3
- LINE_FENCE_BACKTICK_3 reduce 118 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_3 reduce 119 ** Parsing conflict **
LINE_FENCE_BACKTICK_4 shift-reduce 62 fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_4
- LINE_FENCE_BACKTICK_4 reduce 118 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_4 reduce 119 ** Parsing conflict **
LINE_FENCE_BACKTICK_5 shift-reduce 58 fenced_block ::= fenced_5 LINE_FENCE_BACKTICK_5
- LINE_FENCE_BACKTICK_5 reduce 118 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_5 reduce 119 ** Parsing conflict **
LINE_FENCE_BACKTICK_START_3 shift-reduce 61 fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_START_3
- LINE_FENCE_BACKTICK_START_3 reduce 118 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_START_3 reduce 119 ** Parsing conflict **
LINE_FENCE_BACKTICK_START_4 shift-reduce 63 fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_START_4
- LINE_FENCE_BACKTICK_START_4 reduce 118 ** Parsing conflict **
- LINE_STOP_COMMENT shift-reduce 127 fenced_line ::= LINE_STOP_COMMENT
- LINE_STOP_COMMENT reduce 118 ** Parsing conflict **
- LINE_EMPTY shift-reduce 122 fenced_line ::= LINE_EMPTY
- LINE_EMPTY reduce 118 ** Parsing conflict **
- LINE_START_COMMENT shift-reduce 126 fenced_line ::= LINE_START_COMMENT
- LINE_START_COMMENT reduce 118 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_START_4 reduce 119 ** Parsing conflict **
+ LINE_STOP_COMMENT shift-reduce 128 fenced_line ::= LINE_STOP_COMMENT
+ LINE_STOP_COMMENT reduce 119 ** Parsing conflict **
+ LINE_EMPTY shift-reduce 123 fenced_line ::= LINE_EMPTY
+ LINE_EMPTY reduce 119 ** Parsing conflict **
+ LINE_START_COMMENT shift-reduce 127 fenced_line ::= LINE_START_COMMENT
+ LINE_START_COMMENT reduce 119 ** Parsing conflict **
fenced_line shift-reduce 59 fenced_5 ::= fenced_5 fenced_line
- {default} reduce 118 fenced_block ::= fenced_5
+ {default} reduce 119 fenced_block ::= fenced_5
State 26:
fenced_block ::= fenced_4 * LINE_FENCE_BACKTICK_4
fenced_block ::= fenced_4 * LINE_FENCE_BACKTICK_5
- (115) fenced_block ::= fenced_4 *
+ (116) fenced_block ::= fenced_4 *
fenced_4 ::= fenced_4 * fenced_line
fenced_4 ::= fenced_4 * LINE_FENCE_BACKTICK_3
fenced_4 ::= fenced_4 * LINE_FENCE_BACKTICK_START_3
@@ -934,34 +936,34 @@ State 26:
fenced_line ::= * LINE_START_COMMENT
fenced_line ::= * LINE_STOP_COMMENT
- LINE_HR shift-reduce 124 fenced_line ::= LINE_HR
- LINE_HR reduce 115 ** Parsing conflict **
- LINE_CONTINUATION shift-reduce 121 fenced_line ::= LINE_CONTINUATION
- LINE_FALLBACK shift-reduce 123 fenced_line ::= LINE_FALLBACK
- LINE_HTML shift-reduce 125 fenced_line ::= LINE_HTML
- LINE_HTML reduce 115 ** Parsing conflict **
+ LINE_HR shift-reduce 125 fenced_line ::= LINE_HR
+ LINE_HR reduce 116 ** Parsing conflict **
+ LINE_CONTINUATION shift-reduce 122 fenced_line ::= LINE_CONTINUATION
+ LINE_FALLBACK shift-reduce 124 fenced_line ::= LINE_FALLBACK
+ LINE_HTML shift-reduce 126 fenced_line ::= LINE_HTML
+ LINE_HTML reduce 116 ** Parsing conflict **
LINE_FENCE_BACKTICK_3 shift-reduce 56 fenced_4 ::= fenced_4 LINE_FENCE_BACKTICK_3
- LINE_FENCE_BACKTICK_3 reduce 115 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_3 reduce 116 ** Parsing conflict **
LINE_FENCE_BACKTICK_4 shift-reduce 53 fenced_block ::= fenced_4 LINE_FENCE_BACKTICK_4
- LINE_FENCE_BACKTICK_4 reduce 115 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_4 reduce 116 ** Parsing conflict **
LINE_FENCE_BACKTICK_5 shift-reduce 54 fenced_block ::= fenced_4 LINE_FENCE_BACKTICK_5
- LINE_FENCE_BACKTICK_5 reduce 115 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_5 reduce 116 ** Parsing conflict **
LINE_FENCE_BACKTICK_START_3 shift-reduce 57 fenced_4 ::= fenced_4 LINE_FENCE_BACKTICK_START_3
- LINE_FENCE_BACKTICK_START_3 reduce 115 ** Parsing conflict **
- LINE_STOP_COMMENT shift-reduce 127 fenced_line ::= LINE_STOP_COMMENT
- LINE_STOP_COMMENT reduce 115 ** Parsing conflict **
- LINE_EMPTY shift-reduce 122 fenced_line ::= LINE_EMPTY
- LINE_EMPTY reduce 115 ** Parsing conflict **
- LINE_START_COMMENT shift-reduce 126 fenced_line ::= LINE_START_COMMENT
- LINE_START_COMMENT reduce 115 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_START_3 reduce 116 ** Parsing conflict **
+ LINE_STOP_COMMENT shift-reduce 128 fenced_line ::= LINE_STOP_COMMENT
+ LINE_STOP_COMMENT reduce 116 ** Parsing conflict **
+ LINE_EMPTY shift-reduce 123 fenced_line ::= LINE_EMPTY
+ LINE_EMPTY reduce 116 ** Parsing conflict **
+ LINE_START_COMMENT shift-reduce 127 fenced_line ::= LINE_START_COMMENT
+ LINE_START_COMMENT reduce 116 ** Parsing conflict **
fenced_line shift-reduce 55 fenced_4 ::= fenced_4 fenced_line
- {default} reduce 115 fenced_block ::= fenced_4
+ {default} reduce 116 fenced_block ::= fenced_4
State 27:
fenced_block ::= fenced_3 * LINE_FENCE_BACKTICK_3
fenced_block ::= fenced_3 * LINE_FENCE_BACKTICK_4
fenced_block ::= fenced_3 * LINE_FENCE_BACKTICK_5
- (112) fenced_block ::= fenced_3 *
+ (113) fenced_block ::= fenced_3 *
fenced_3 ::= fenced_3 * fenced_line
fenced_line ::= * LINE_CONTINUATION
fenced_line ::= * LINE_EMPTY
@@ -971,30 +973,30 @@ State 27:
fenced_line ::= * LINE_START_COMMENT
fenced_line ::= * LINE_STOP_COMMENT
- LINE_HR shift-reduce 124 fenced_line ::= LINE_HR
- LINE_HR reduce 112 ** Parsing conflict **
- LINE_CONTINUATION shift-reduce 121 fenced_line ::= LINE_CONTINUATION
- LINE_FALLBACK shift-reduce 123 fenced_line ::= LINE_FALLBACK
- LINE_HTML shift-reduce 125 fenced_line ::= LINE_HTML
- LINE_HTML reduce 112 ** Parsing conflict **
+ LINE_HR shift-reduce 125 fenced_line ::= LINE_HR
+ LINE_HR reduce 113 ** Parsing conflict **
+ LINE_CONTINUATION shift-reduce 122 fenced_line ::= LINE_CONTINUATION
+ LINE_FALLBACK shift-reduce 124 fenced_line ::= LINE_FALLBACK
+ LINE_HTML shift-reduce 126 fenced_line ::= LINE_HTML
+ LINE_HTML reduce 113 ** Parsing conflict **
LINE_FENCE_BACKTICK_3 shift-reduce 49 fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_3
- LINE_FENCE_BACKTICK_3 reduce 112 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_3 reduce 113 ** Parsing conflict **
LINE_FENCE_BACKTICK_4 shift-reduce 50 fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_4
- LINE_FENCE_BACKTICK_4 reduce 112 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_4 reduce 113 ** Parsing conflict **
LINE_FENCE_BACKTICK_5 shift-reduce 51 fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_5
- LINE_FENCE_BACKTICK_5 reduce 112 ** Parsing conflict **
- LINE_STOP_COMMENT shift-reduce 127 fenced_line ::= LINE_STOP_COMMENT
- LINE_STOP_COMMENT reduce 112 ** Parsing conflict **
- LINE_EMPTY shift-reduce 122 fenced_line ::= LINE_EMPTY
- LINE_EMPTY reduce 112 ** Parsing conflict **
- LINE_START_COMMENT shift-reduce 126 fenced_line ::= LINE_START_COMMENT
- LINE_START_COMMENT reduce 112 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_5 reduce 113 ** Parsing conflict **
+ LINE_STOP_COMMENT shift-reduce 128 fenced_line ::= LINE_STOP_COMMENT
+ LINE_STOP_COMMENT reduce 113 ** Parsing conflict **
+ LINE_EMPTY shift-reduce 123 fenced_line ::= LINE_EMPTY
+ LINE_EMPTY reduce 113 ** Parsing conflict **
+ LINE_START_COMMENT shift-reduce 127 fenced_line ::= LINE_START_COMMENT
+ LINE_START_COMMENT reduce 113 ** Parsing conflict **
fenced_line shift-reduce 52 fenced_3 ::= fenced_3 fenced_line
- {default} reduce 112 fenced_block ::= fenced_3
+ {default} reduce 113 fenced_block ::= fenced_3
State 28:
html_com_block ::= html_comment * LINE_STOP_COMMENT
- (133) html_com_block ::= html_comment *
+ (134) html_com_block ::= html_comment *
html_comment ::= html_comment * comment_line
comment_line ::= * LINE_CONTINUATION
comment_line ::= * LINE_EMPTY
@@ -1002,18 +1004,18 @@ State 28:
comment_line ::= * LINE_HR
comment_line ::= * LINE_HTML
- LINE_HR shift-reduce 138 comment_line ::= LINE_HR
- LINE_HR reduce 133 ** Parsing conflict **
- LINE_CONTINUATION shift-reduce 135 comment_line ::= LINE_CONTINUATION
- LINE_FALLBACK shift-reduce 137 comment_line ::= LINE_FALLBACK
- LINE_HTML shift-reduce 139 comment_line ::= LINE_HTML
- LINE_HTML reduce 133 ** Parsing conflict **
+ LINE_HR shift-reduce 139 comment_line ::= LINE_HR
+ LINE_HR reduce 134 ** Parsing conflict **
+ LINE_CONTINUATION shift-reduce 136 comment_line ::= LINE_CONTINUATION
+ LINE_FALLBACK shift-reduce 138 comment_line ::= LINE_FALLBACK
+ LINE_HTML shift-reduce 140 comment_line ::= LINE_HTML
+ LINE_HTML reduce 134 ** Parsing conflict **
LINE_STOP_COMMENT shift-reduce 65 html_com_block ::= html_comment LINE_STOP_COMMENT
- LINE_STOP_COMMENT reduce 133 ** Parsing conflict **
- LINE_EMPTY shift-reduce 136 comment_line ::= LINE_EMPTY
- LINE_EMPTY reduce 133 ** Parsing conflict **
+ LINE_STOP_COMMENT reduce 134 ** Parsing conflict **
+ LINE_EMPTY shift-reduce 137 comment_line ::= LINE_EMPTY
+ LINE_EMPTY reduce 134 ** Parsing conflict **
comment_line shift-reduce 66 html_comment ::= html_comment comment_line
- {default} reduce 133 html_com_block ::= html_comment
+ {default} reduce 134 html_com_block ::= html_comment
State 29:
(21) block ::= html_block *
@@ -1023,11 +1025,11 @@ State 29:
html_line ::= * LINE_HR
html_line ::= * LINE_HTML
- LINE_HR shift-reduce 131 html_line ::= LINE_HR
+ LINE_HR shift-reduce 132 html_line ::= LINE_HR
LINE_HR reduce 21 ** Parsing conflict **
- LINE_CONTINUATION shift-reduce 129 html_line ::= LINE_CONTINUATION
- LINE_FALLBACK shift-reduce 130 html_line ::= LINE_FALLBACK
- LINE_HTML shift-reduce 132 html_line ::= LINE_HTML
+ LINE_CONTINUATION shift-reduce 130 html_line ::= LINE_CONTINUATION
+ LINE_FALLBACK shift-reduce 131 html_line ::= LINE_FALLBACK
+ LINE_HTML shift-reduce 133 html_line ::= LINE_HTML
LINE_HTML reduce 21 ** Parsing conflict **
html_line shift-reduce 64 html_block ::= html_block html_line
{default} reduce 21 block ::= html_block
@@ -1040,8 +1042,8 @@ State 30:
meta_line ::= * LINE_CONTINUATION
LINE_SETEXT_2 shift-reduce 27 block ::= meta_block LINE_SETEXT_2
- LINE_CONTINUATION shift-reduce 145 meta_line ::= LINE_CONTINUATION
- LINE_META shift-reduce 144 meta_line ::= LINE_META
+ LINE_CONTINUATION shift-reduce 146 meta_line ::= LINE_CONTINUATION
+ LINE_META shift-reduce 145 meta_line ::= LINE_META
LINE_META reduce 26 ** Parsing conflict **
meta_line shift-reduce 79 meta_block ::= meta_block meta_line
{default} reduce 26 block ::= meta_block
@@ -1049,19 +1051,19 @@ State 30:
State 31:
nested_chunk ::= empty * indented_line chunk
nested_chunk ::= empty * indented_line
- (96) nested_chunk ::= empty *
+ (97) nested_chunk ::= empty *
indented_line ::= * LINE_INDENTED_TAB
indented_line ::= * LINE_INDENTED_SPACE
empty ::= empty * LINE_EMPTY
- LINE_INDENTED_TAB shift-reduce 97 indented_line ::= LINE_INDENTED_TAB
- LINE_INDENTED_TAB reduce 96 ** Parsing conflict **
- LINE_INDENTED_SPACE shift-reduce 98 indented_line ::= LINE_INDENTED_SPACE
- LINE_INDENTED_SPACE reduce 96 ** Parsing conflict **
+ LINE_INDENTED_TAB shift-reduce 98 indented_line ::= LINE_INDENTED_TAB
+ LINE_INDENTED_TAB reduce 97 ** Parsing conflict **
+ LINE_INDENTED_SPACE shift-reduce 99 indented_line ::= LINE_INDENTED_SPACE
+ LINE_INDENTED_SPACE reduce 97 ** Parsing conflict **
LINE_EMPTY shift-reduce 48 empty ::= empty LINE_EMPTY
- LINE_EMPTY reduce 96 ** Parsing conflict **
+ LINE_EMPTY reduce 97 ** Parsing conflict **
indented_line shift 19
- {default} reduce 96 nested_chunk ::= empty
+ {default} reduce 97 nested_chunk ::= empty
State 32:
(23) block ::= indented_code *
@@ -1070,9 +1072,9 @@ State 32:
indented_code ::= indented_code * indented_line
indented_code ::= indented_code * LINE_EMPTY
- LINE_INDENTED_TAB shift-reduce 97 indented_line ::= LINE_INDENTED_TAB
+ LINE_INDENTED_TAB shift-reduce 98 indented_line ::= LINE_INDENTED_TAB
LINE_INDENTED_TAB reduce 23 ** Parsing conflict **
- LINE_INDENTED_SPACE shift-reduce 98 indented_line ::= LINE_INDENTED_SPACE
+ LINE_INDENTED_SPACE shift-reduce 99 indented_line ::= LINE_INDENTED_SPACE
LINE_INDENTED_SPACE reduce 23 ** Parsing conflict **
LINE_EMPTY shift-reduce 68 indented_code ::= indented_code LINE_EMPTY
LINE_EMPTY reduce 23 ** Parsing conflict **
@@ -1085,8 +1087,8 @@ State 33:
chunk_line ::= * LINE_STOP_COMMENT
(81) para ::= LINE_PLAIN chunk *
- LINE_CONTINUATION shift-reduce 93 chunk_line ::= LINE_CONTINUATION
- LINE_STOP_COMMENT shift-reduce 94 chunk_line ::= LINE_STOP_COMMENT
+ LINE_CONTINUATION shift-reduce 94 chunk_line ::= LINE_CONTINUATION
+ LINE_STOP_COMMENT shift-reduce 95 chunk_line ::= LINE_STOP_COMMENT
LINE_STOP_COMMENT reduce 81 ** Parsing conflict **
chunk_line shift-reduce 32 chunk ::= chunk chunk_line
{default} reduce 81 para ::= LINE_PLAIN chunk
@@ -1097,8 +1099,8 @@ State 34:
chunk_line ::= * LINE_STOP_COMMENT
(43) def_abbreviation ::= LINE_DEF_ABBREVIATION chunk *
- LINE_CONTINUATION shift-reduce 93 chunk_line ::= LINE_CONTINUATION
- LINE_STOP_COMMENT shift-reduce 94 chunk_line ::= LINE_STOP_COMMENT
+ LINE_CONTINUATION shift-reduce 94 chunk_line ::= LINE_CONTINUATION
+ LINE_STOP_COMMENT shift-reduce 95 chunk_line ::= LINE_STOP_COMMENT
LINE_STOP_COMMENT reduce 43 ** Parsing conflict **
chunk_line shift-reduce 32 chunk ::= chunk chunk_line
{default} reduce 43 def_abbreviation ::= LINE_DEF_ABBREVIATION chunk
@@ -1109,8 +1111,8 @@ State 35:
chunk_line ::= * LINE_STOP_COMMENT
(42) def_link ::= LINE_DEF_LINK chunk *
- LINE_CONTINUATION shift-reduce 93 chunk_line ::= LINE_CONTINUATION
- LINE_STOP_COMMENT shift-reduce 94 chunk_line ::= LINE_STOP_COMMENT
+ LINE_CONTINUATION shift-reduce 94 chunk_line ::= LINE_CONTINUATION
+ LINE_STOP_COMMENT shift-reduce 95 chunk_line ::= LINE_STOP_COMMENT
LINE_STOP_COMMENT reduce 42 ** Parsing conflict **
chunk_line shift-reduce 32 chunk ::= chunk chunk_line
{default} reduce 42 def_link ::= LINE_DEF_LINK chunk
@@ -1121,8 +1123,8 @@ State 36:
chunk_line ::= * LINE_STOP_COMMENT
(34) nested_chunk ::= empty indented_line chunk *
- LINE_CONTINUATION shift-reduce 93 chunk_line ::= LINE_CONTINUATION
- LINE_STOP_COMMENT shift-reduce 94 chunk_line ::= LINE_STOP_COMMENT
+ LINE_CONTINUATION shift-reduce 94 chunk_line ::= LINE_CONTINUATION
+ LINE_STOP_COMMENT shift-reduce 95 chunk_line ::= LINE_STOP_COMMENT
LINE_STOP_COMMENT reduce 34 ** Parsing conflict **
chunk_line shift-reduce 32 chunk ::= chunk chunk_line
{default} reduce 34 nested_chunk ::= empty indented_line chunk
@@ -1133,8 +1135,8 @@ State 37:
quote_line ::= * LINE_BLOCKQUOTE
quote_line ::= * LINE_CONTINUATION
- LINE_CONTINUATION shift-reduce 104 quote_line ::= LINE_CONTINUATION
- LINE_BLOCKQUOTE shift-reduce 103 quote_line ::= LINE_BLOCKQUOTE
+ LINE_CONTINUATION shift-reduce 105 quote_line ::= LINE_CONTINUATION
+ LINE_BLOCKQUOTE shift-reduce 104 quote_line ::= LINE_BLOCKQUOTE
LINE_BLOCKQUOTE reduce 12 ** Parsing conflict **
quote_line shift-reduce 38 blockquote ::= blockquote quote_line
{default} reduce 12 block ::= blockquote
@@ -1143,12 +1145,12 @@ State 38:
defs ::= defs * def
def ::= * LINE_DEFINITION tail
def ::= * LINE_DEFINITION
- (154) para ::= defs *
+ (155) para ::= defs *
LINE_DEFINITION shift 5
- LINE_DEFINITION reduce 154 ** Parsing conflict **
+ LINE_DEFINITION reduce 155 ** Parsing conflict **
def shift-reduce 45 defs ::= defs def
- {default} reduce 154 para ::= defs
+ {default} reduce 155 para ::= defs
State 39:
(44) definition_block ::= para defs *
@@ -1188,25 +1190,68 @@ State 41:
{default} reduce 24 block ::= list_bullet
State 42:
+ (86) table_header ::= LINE_TABLE_SEPARATOR *
+ (154) row ::= LINE_TABLE_SEPARATOR *
+
+ $ reduce 154 ** Parsing conflict **
+ LINE_HR reduce 154 ** Parsing conflict **
+ LINE_SETEXT_1 reduce 154 row ::= LINE_TABLE_SEPARATOR
+ LINE_SETEXT_2 reduce 154 row ::= LINE_TABLE_SEPARATOR
+ LINE_YAML reduce 154 ** Parsing conflict **
+ LINE_PLAIN reduce 154 ** Parsing conflict **
+ LINE_INDENTED_TAB reduce 154 ** Parsing conflict **
+ LINE_INDENTED_SPACE reduce 154 ** Parsing conflict **
+ LINE_TABLE reduce 154 ** Parsing conflict **
+ LINE_TABLE_SEPARATOR reduce 154 ** Parsing conflict **
+ LINE_HTML reduce 154 ** Parsing conflict **
+ LINE_ATX_1 reduce 154 ** Parsing conflict **
+ LINE_ATX_2 reduce 154 ** Parsing conflict **
+ LINE_ATX_3 reduce 154 ** Parsing conflict **
+ LINE_ATX_4 reduce 154 ** Parsing conflict **
+ LINE_ATX_5 reduce 154 ** Parsing conflict **
+ LINE_ATX_6 reduce 154 ** Parsing conflict **
+ LINE_BLOCKQUOTE reduce 154 ** Parsing conflict **
+ LINE_LIST_BULLETED reduce 154 ** Parsing conflict **
+ LINE_LIST_ENUMERATED reduce 154 ** Parsing conflict **
+ LINE_DEF_ABBREVIATION reduce 154 ** Parsing conflict **
+ LINE_DEF_CITATION reduce 154 ** Parsing conflict **
+ LINE_DEF_FOOTNOTE reduce 154 ** Parsing conflict **
+ LINE_DEF_GLOSSARY reduce 154 ** Parsing conflict **
+ LINE_DEF_LINK reduce 154 ** Parsing conflict **
+ LINE_TOC reduce 154 ** Parsing conflict **
+ LINE_DEFINITION reduce 154 ** Parsing conflict **
+ LINE_META reduce 154 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_3 reduce 154 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_4 reduce 154 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_5 reduce 154 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_START_3 reduce 154 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_START_4 reduce 154 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_START_5 reduce 154 ** Parsing conflict **
+ LINE_STOP_COMMENT reduce 154 ** Parsing conflict **
+ LINE_EMPTY reduce 154 ** Parsing conflict **
+ LINE_START_COMMENT reduce 154 ** Parsing conflict **
+ {default} reduce 86 table_header ::= LINE_TABLE_SEPARATOR
+
+State 43:
table_header ::= header_rows * LINE_TABLE_SEPARATOR
header_rows ::= header_rows * LINE_TABLE
- (152) row ::= header_rows *
+ (153) row ::= header_rows *
- LINE_TABLE shift-reduce 86 header_rows ::= header_rows LINE_TABLE
- LINE_TABLE reduce 152 ** Parsing conflict **
+ LINE_TABLE shift-reduce 87 header_rows ::= header_rows LINE_TABLE
+ LINE_TABLE reduce 153 ** Parsing conflict **
LINE_TABLE_SEPARATOR shift-reduce 85 table_header ::= header_rows LINE_TABLE_SEPARATOR
- LINE_TABLE_SEPARATOR reduce 152 ** Parsing conflict **
- {default} reduce 152 row ::= header_rows
+ LINE_TABLE_SEPARATOR reduce 153 ** Parsing conflict **
+ {default} reduce 153 row ::= header_rows
-State 43:
+State 44:
header_rows ::= header_rows * LINE_TABLE
- (152) row ::= header_rows *
+ (153) row ::= header_rows *
- LINE_TABLE shift-reduce 86 header_rows ::= header_rows LINE_TABLE
- LINE_TABLE reduce 152 ** Parsing conflict **
- {default} reduce 152 row ::= header_rows
+ LINE_TABLE shift-reduce 87 header_rows ::= header_rows LINE_TABLE
+ LINE_TABLE reduce 153 ** Parsing conflict **
+ {default} reduce 153 row ::= header_rows
-State 44:
+State 45:
(19) block ::= empty *
empty ::= empty * LINE_EMPTY
@@ -1214,7 +1259,7 @@ State 44:
LINE_EMPTY reduce 19 ** Parsing conflict **
{default} reduce 19 block ::= empty
-State 45:
+State 46:
(10) block ::= LINE_YAML *
meta_block ::= LINE_YAML * LINE_META
@@ -1286,7 +1331,7 @@ Symbols:
59: para: LINE_PLAIN LINE_TABLE LINE_TABLE_SEPARATOR LINE_DEFINITION LINE_STOP_COMMENT
60: setext_1: LINE_PLAIN LINE_TABLE LINE_TABLE_SEPARATOR LINE_DEFINITION LINE_STOP_COMMENT
61: setext_2: LINE_PLAIN LINE_TABLE LINE_TABLE_SEPARATOR LINE_DEFINITION LINE_STOP_COMMENT
- 62: table: LINE_TABLE
+ 62: table: LINE_TABLE LINE_TABLE_SEPARATOR
63: chunk: LINE_CONTINUATION LINE_STOP_COMMENT
64: chunk_line: LINE_CONTINUATION LINE_STOP_COMMENT
65: nested_chunks: LINE_EMPTY
@@ -1308,7 +1353,7 @@ Symbols:
81: item_bullet: LINE_LIST_BULLETED
82: item_enum: LINE_LIST_ENUMERATED
83: meta_line: LINE_CONTINUATION LINE_META
- 84: table_header: LINE_TABLE
+ 84: table_header: LINE_TABLE LINE_TABLE_SEPARATOR
85: table_body: LINE_TABLE LINE_TABLE_SEPARATOR
86: header_rows: LINE_TABLE
87: table_section: LINE_TABLE LINE_TABLE_SEPARATOR
diff --git a/Sources/libMultiMarkdown/parser.y b/Sources/libMultiMarkdown/parser.y
index 4210e1d..870c01a 100644
--- a/Sources/libMultiMarkdown/parser.y
+++ b/Sources/libMultiMarkdown/parser.y
@@ -351,6 +351,7 @@ table(A) ::= table_header(B) table_body(C). { A = B; token_chain_append(B, C
table ::= table_header.
table_header(A) ::= header_rows(B) LINE_TABLE_SEPARATOR(C). { A = token_new_parent(B, BLOCK_TABLE_HEADER); token_chain_append(B, C); }
+table_header(A) ::= LINE_TABLE_SEPARATOR(B). { A = token_new_parent(B, BLOCK_TABLE_HEADER); }
header_rows(A) ::= header_rows(B) LINE_TABLE(C). { A = B; token_chain_append(B, C); }
header_rows ::= LINE_TABLE.
diff --git a/tests/MMD6Tests/Tables.fodt b/tests/MMD6Tests/Tables.fodt
index 9f47d06..f103ba5 100644
--- a/tests/MMD6Tests/Tables.fodt
+++ b/tests/MMD6Tests/Tables.fodt
@@ -514,6 +514,56 @@ office:mimetype="application/vnd.oasis.opendocument.text">
| foo | bar |
| — | — |
| foo | bar |
+
+6
+
+
+
+
+
+
+
+
+ foo
+
+
+ bar
+
+
+
+
+Table Update Fields to calculate numbers:caption
+
+
+
+
+
+
+
+
+ bat
+
+
+
+
+ foo
+
+
+ bar
+
+
+
+
+
+ foo
+
+
+ bar
+
+
+
+
+
diff --git a/tests/MMD6Tests/Tables.html b/tests/MMD6Tests/Tables.html
index 0606dd7..a2644ef 100644
--- a/tests/MMD6Tests/Tables.html
+++ b/tests/MMD6Tests/Tables.html
@@ -189,6 +189,50 @@
| — | — |
| foo | bar |
+6
+
+
+caption
+
+
+
+
+
+
+
+
+
+
+ foo |
+ bar |
+
+
+
+
+
+
+
+
+
+
+
+
+ bat |
+
+
+ foo |
+ bar |
+
+
+
+
+
+ foo |
+ bar |
+
+
+
+