char * temp_char2 = NULL;
bool temp_bool = 0;
token * temp_token = NULL;
+ footnote * temp_note = NULL;
switch (t->type) {
case AMPERSAND:
case BLOCK_PARA:
case BLOCK_DEF_CITATION:
case BLOCK_DEF_FOOTNOTE:
+ case BLOCK_DEF_GLOSSARY:
pad(out, 2, scratch);
if (!scratch->list_is_tight)
mmd_export_token_tree_html(out, source, t->child, offset, scratch);
+ if (scratch->citation_being_printed) {
+ scratch->footnote_para_counter--;
+
+ if (scratch->footnote_para_counter == 0) {
+ printf(" <a href=\"#cnref:%d\" title=\"%s\" class=\"reversecitation\"> ↩</a>", scratch->citation_being_printed, LC("return to body"));
+ }
+ }
+
if (scratch->footnote_being_printed) {
scratch->footnote_para_counter--;
}
}
- if (scratch->citation_being_printed) {
+ if (scratch->glossary_being_printed) {
scratch->footnote_para_counter--;
if (scratch->footnote_para_counter == 0) {
- printf(" <a href=\"#cnref:%d\" title=\"%s\" class=\"reversecitation\"> ↩</a>", scratch->citation_being_printed, LC("return to body"));
+ printf(" <a href=\"#gnref:%d\" title=\"%s\" class=\"reverseglossary\"> ↩</a>", scratch->glossary_being_printed, LC("return to body"));
}
}
case BRACKET_FOOTNOTE_LEFT:
print_const("[^");
break;
+ case BRACKET_GLOSSARY_LEFT:
+ print_const("[?");
+ break;
case BRACKET_IMAGE_LEFT:
print_const("![");
break;
mmd_export_token_tree_html(out, source, t->child, offset, scratch);
}
break;
+ case PAIR_BRACKET_GLOSSARY:
+ if (scratch->extensions & EXT_NOTES) {
+ glossary_from_bracket(source, scratch, t, &temp_short);
+
+ if (temp_short == -1) {
+ print_const("[?");
+ mmd_export_token_tree_html(out, source, t->child, offset, scratch);
+ print_const("]");
+ break;
+ }
+
+ temp_note = stack_peek_index(scratch->used_glossaries, temp_short - 1);
+
+ if (temp_short < scratch->used_glossaries->size) {
+ // Re-using previous glossary
+ printf("<a href=\"#gn:%d\" title=\"%s\" class=\"glossary\">",
+ temp_short, LC("see glossary"));
+
+ mmd_print_string_html(out, temp_note->clean_text, false);
+
+ print_const("</a>");
+ } else {
+ // This is a new glossary
+ printf("<a href=\"#gn:%d\" id=\"gnref:%d\" title=\"%s\" class=\"glossary\">",
+ temp_short, temp_short, LC("see glossary"));
+
+ mmd_print_string_html(out, temp_note->clean_text, false);
+
+ print_const("</a>");
+ }
+ } else {
+ // Footnotes disabled
+ mmd_export_token_tree_html(out, source, t->child, offset, scratch);
+ }
+ break;
case PAIR_BRACKET_VARIABLE:
temp_char = text_inside_pair(source, t);
temp_char2 = extract_metadata(scratch, temp_char);
}
+void mmd_export_glossary_list_html(DString * out, const char * source, scratch_pad * scratch) {
+ if (scratch->used_glossaries->size > 0) {
+ footnote * note;
+ token * content;
+
+ pad(out, 2, scratch);
+ print_const("<div class=\"glossary\">\n<hr />\n<ol>");
+ scratch->padded = 0;
+
+ for (int i = 0; i < scratch->used_glossaries->size; ++i)
+ {
+ // Export glossary
+ pad(out, 2, scratch);
+
+ printf("<li id=\"gn:%d\">\n", i + 1);
+ scratch->padded = 6;
+
+ note = stack_peek_index(scratch->used_glossaries, i);
+ content = note->content;
+
+ // Print term
+ mmd_print_string_html(out, note->clean_text, false);
+ print_const(": ");
+
+ // Print contents
+ scratch->footnote_para_counter = 0;
+
+ // We need to know which block is the last one in the footnote
+ while(content) {
+ if (content->type == BLOCK_PARA)
+ scratch->footnote_para_counter++;
+
+ content = content->next;
+ }
+
+ content = note->content;
+ scratch->glossary_being_printed = i + 1;
+
+ mmd_export_token_tree_html(out, source, content, 0, scratch);
+
+ pad(out, 1, scratch);
+ printf("</li>");
+ scratch->padded = 0;
+ }
+
+ pad(out, 2, scratch);
+ print_const("</ol>\n</div>");
+ scratch->padded = 0;
+ scratch->glossary_being_printed = 0;
+ }
+}
+
+
void mmd_export_citation_list_html(DString * out, const char * source, scratch_pad * scratch) {
if (scratch->used_citations->size > 0) {
footnote * note;
void mmd_export_citation_list_html(DString * out, const char * source, scratch_pad * scratch);
void mmd_export_footnote_list_html(DString * out, const char * source, scratch_pad * scratch);
+void mmd_export_glossary_list_html(DString * out, const char * source, scratch_pad * scratch);
void mmd_start_complete_html(DString * out, const char * source, scratch_pad * scratch);
void mmd_end_complete_html(DString * out, const char * source, scratch_pad * scratch);
BLOCK_DEFINITION,
BLOCK_DEF_ABBREVIATION,
BLOCK_DEF_CITATION,
+ BLOCK_DEF_GLOSSARY,
BLOCK_DEF_FOOTNOTE,
BLOCK_DEF_LINK,
BLOCK_EMPTY,
PAIR_BRACKET,
PAIR_BRACKET_ABBREVIATION,
PAIR_BRACKET_FOOTNOTE,
+ PAIR_BRACKET_GLOSSARY,
PAIR_BRACKET_CITATION,
PAIR_BRACKET_IMAGE,
PAIR_BRACKET_VARIABLE,
BRACKET_RIGHT,
BRACKET_ABBREVIATION_LEFT,
BRACKET_FOOTNOTE_LEFT,
+ BRACKET_GLOSSARY_LEFT,
BRACKET_CITATION_LEFT,
BRACKET_IMAGE_LEFT,
BRACKET_VARIABLE_LEFT,
short temp_short;
short temp_short2;
+ short temp_short3;
link * temp_link = NULL;
char * temp_char = NULL;
char * temp_char2 = NULL;
case BRACKET_FOOTNOTE_LEFT:
print_const("[^");
break;
+ case BRACKET_GLOSSARY_LEFT:
+ print_const("[?");
+ break;
case BRACKET_IMAGE_LEFT:
print_const("![");
break;
if (temp_short < scratch->used_footnotes->size) {
// Re-using previous footnote
- printf("\\footnote{reuse");
+ print("\\footnote{reuse");
- printf("}");
+ print("}");
} else {
// This is a new footnote
- printf("\\footnote{");
+ print("\\footnote{");
temp_note = stack_peek_index(scratch->used_footnotes, temp_short - 1);
mmd_export_token_tree_latex(out, source, temp_note->content, scratch);
- printf("}");
+ print("}");
+ }
+ } else {
+ // Footnotes disabled
+ mmd_export_token_tree_latex(out, source, t->child, scratch);
+ }
+ break;
+ case PAIR_BRACKET_GLOSSARY:
+ if (scratch->extensions & EXT_NOTES) {
+ // See whether we create an inline glossary
+ temp_short2 = scratch->inline_glossaries_to_free->size;
+ glossary_from_bracket(source, scratch, t, &temp_short);
+ temp_short3 = scratch->inline_glossaries_to_free->size;
+
+ if (temp_short == -1) {
+ print_const("[?");
+ mmd_export_token_tree_latex(out, source, t->child, scratch);
+ print_const("]");
+ break;
+ }
+
+ if (temp_short2 != temp_short3)
+ temp_bool = true; // This is an inline
+ else
+ temp_bool = false;
+
+ temp_note = stack_peek_index(scratch->used_glossaries, temp_short - 1);
+
+ if (temp_short < scratch->used_glossaries->size) {
+ // Re-using previous glossary
+ print("\\gls{");
+ print(temp_note->label_text);
+ print("}");
+ } else {
+ // This is a new glossary
+
+ if (temp_bool) {
+ // This is an inline glossary entry
+ print_const("\\newglossaryentry{");
+ print(temp_note->label_text);
+
+ print_const("}{name=");
+ print(temp_note->clean_text);
+
+ print_const(", description={");
+
+ // We skip over temp_note->content, since that is the term in use
+ mmd_export_token_tree_latex(out, source, temp_note->content, scratch);
+ print_const("}}");
+ }
+ print_const("\\gls{");
+ print(temp_note->label_text);
+ print_const("}");
}
} else {
// Footnotes disabled
}
+void mmd_define_glossaries_latex(DString * out, const char * source, scratch_pad * scratch) {
+ // Iterate through glossary definitions
+ fn_holder * f, * f_tmp;
+
+ HASH_ITER(hh, scratch->glossary_hash, f, f_tmp) {
+ // Add this glossary definition
+ print_const("\\longnewglossaryentry{");
+ print(f->note->label_text);
+
+ print_const("}{name=");
+ print(f->note->clean_text);
+ print_const("}{");
+
+ mmd_export_token_tree_latex(out, source, f->note->content, scratch);
+ print_const("}\n\n");
+ }
+}
+
+
void mmd_start_complete_latex(DString * out, const char * source, scratch_pad * scratch) {
// Iterate over metadata keys
meta * m;
}
}
+ // Define glossaries in preamble for more flexibility
+ mmd_define_glossaries_latex(out, source, scratch);
+
m = extract_meta_from_stack(scratch, "latexbegin");
if (m) {
printf("\\input{%s}\n", m->value);
-/* Generated by re2c 0.14.3 on Wed Feb 15 19:09:41 2017 */
+/* Generated by re2c 0.14.3 on Thu Mar 2 09:54:28 2017 */
/**
MultiMarkdown 6 -- Lightweight markup processor to produce HTML, LaTeX, and more.
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
switch (yych) {
- case '+': goto yy265;
- case '-': goto yy264;
- case '=': goto yy261;
- case '>': goto yy263;
- case '{': goto yy259;
- case '~': goto yy262;
+ case '+': goto yy267;
+ case '-': goto yy266;
+ case '=': goto yy263;
+ case '>': goto yy265;
+ case '{': goto yy261;
+ case '~': goto yy264;
default: goto yy3;
}
yy3:
yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
switch (yych) {
- case '+': goto yy256;
+ case '+': goto yy258;
default: goto yy5;
}
yy5:
yy6:
++YYCURSOR;
switch ((yych = *YYCURSOR)) {
- case '-': goto yy250;
+ case '-': goto yy252;
default: goto yy7;
}
yy7:
yyaccept = 2;
yych = *(YYMARKER = ++YYCURSOR);
switch (yych) {
- case '<': goto yy247;
+ case '<': goto yy249;
default: goto yy9;
}
yy9:
yyaccept = 3;
yych = *(YYMARKER = ++YYCURSOR);
switch (yych) {
- case '>': goto yy243;
- case '~': goto yy242;
+ case '>': goto yy245;
+ case '~': goto yy244;
default: goto yy11;
}
yy11:
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
switch (yych) {
- case '=': goto yy239;
+ case '=': goto yy241;
default: goto yy13;
}
yy13:
switch ((yych = *YYCURSOR)) {
case '#': goto yy235;
case '%': goto yy233;
- case '^': goto yy237;
+ case '?': goto yy237;
+ case '^': goto yy239;
default: goto yy15;
}
yy15:
case 7: goto yy49;
case 8: goto yy127;
case 9: goto yy215;
- default: goto yy260;
+ default: goto yy262;
}
yy71:
YYCTXMARKER = YYCURSOR + 1;
{ return BRACKET_CITATION_LEFT; }
yy237:
++YYCURSOR;
- { return BRACKET_FOOTNOTE_LEFT; }
+ { return BRACKET_GLOSSARY_LEFT; }
yy239:
+ ++YYCURSOR;
+ { return BRACKET_FOOTNOTE_LEFT; }
+yy241:
yych = *++YYCURSOR;
switch (yych) {
- case '}': goto yy240;
+ case '}': goto yy242;
default: goto yy70;
}
-yy240:
+yy242:
++YYCURSOR;
{ return CRITIC_HI_CLOSE; }
-yy242:
+yy244:
yych = *++YYCURSOR;
switch (yych) {
- case '}': goto yy245;
+ case '}': goto yy247;
default: goto yy70;
}
-yy243:
+yy245:
++YYCURSOR;
{ return CRITIC_SUB_DIV; }
-yy245:
+yy247:
++YYCURSOR;
{ return CRITIC_SUB_CLOSE; }
-yy247:
+yy249:
yych = *++YYCURSOR;
switch (yych) {
- case '}': goto yy248;
+ case '}': goto yy250;
default: goto yy70;
}
-yy248:
+yy250:
++YYCURSOR;
{ return CRITIC_COM_CLOSE; }
-yy250:
+yy252:
++YYCURSOR;
switch ((yych = *YYCURSOR)) {
- case '-': goto yy254;
- case '}': goto yy252;
- default: goto yy251;
+ case '-': goto yy256;
+ case '}': goto yy254;
+ default: goto yy253;
}
-yy251:
+yy253:
{ return DASH_N; }
-yy252:
+yy254:
++YYCURSOR;
{ return CRITIC_DEL_CLOSE; }
-yy254:
+yy256:
++YYCURSOR;
{ return DASH_M; }
-yy256:
+yy258:
yych = *++YYCURSOR;
switch (yych) {
- case '}': goto yy257;
+ case '}': goto yy259;
default: goto yy70;
}
-yy257:
+yy259:
++YYCURSOR;
{ return CRITIC_ADD_CLOSE; }
-yy259:
+yy261:
yyaccept = 10;
yych = *(YYMARKER = ++YYCURSOR);
switch (yych) {
- case 'T': goto yy276;
- default: goto yy260;
+ case 'T': goto yy278;
+ default: goto yy262;
}
-yy260:
+yy262:
{ return BRACE_DOUBLE_LEFT; }
-yy261:
+yy263:
yych = *++YYCURSOR;
switch (yych) {
- case '=': goto yy274;
+ case '=': goto yy276;
default: goto yy70;
}
-yy262:
+yy264:
yych = *++YYCURSOR;
switch (yych) {
- case '~': goto yy272;
+ case '~': goto yy274;
default: goto yy70;
}
-yy263:
+yy265:
yych = *++YYCURSOR;
switch (yych) {
- case '>': goto yy270;
+ case '>': goto yy272;
default: goto yy70;
}
-yy264:
+yy266:
yych = *++YYCURSOR;
switch (yych) {
- case '-': goto yy268;
+ case '-': goto yy270;
default: goto yy70;
}
-yy265:
+yy267:
yych = *++YYCURSOR;
switch (yych) {
- case '+': goto yy266;
+ case '+': goto yy268;
default: goto yy70;
}
-yy266:
+yy268:
++YYCURSOR;
{ return CRITIC_ADD_OPEN; }
-yy268:
+yy270:
++YYCURSOR;
{ return CRITIC_DEL_OPEN; }
-yy270:
+yy272:
++YYCURSOR;
{ return CRITIC_COM_OPEN; }
-yy272:
+yy274:
++YYCURSOR;
{ return CRITIC_SUB_OPEN; }
-yy274:
+yy276:
++YYCURSOR;
{ return CRITIC_HI_OPEN; }
-yy276:
+yy278:
yych = *++YYCURSOR;
switch (yych) {
- case 'O': goto yy277;
+ case 'O': goto yy279;
default: goto yy70;
}
-yy277:
+yy279:
yych = *++YYCURSOR;
switch (yych) {
- case 'C': goto yy278;
+ case 'C': goto yy280;
default: goto yy70;
}
-yy278:
+yy280:
yych = *++YYCURSOR;
switch (yych) {
- case '}': goto yy279;
+ case '}': goto yy281;
default: goto yy70;
}
-yy279:
+yy281:
yych = *++YYCURSOR;
switch (yych) {
- case '}': goto yy280;
+ case '}': goto yy282;
default: goto yy70;
}
-yy280:
+yy282:
++YYCURSOR;
{ return TOC; }
}
"![" { return BRACKET_IMAGE_LEFT; }
"[^" { return BRACKET_FOOTNOTE_LEFT; }
+ "[?" { return BRACKET_GLOSSARY_LEFT; }
"[#" { return BRACKET_CITATION_LEFT; }
"[%" { return BRACKET_VARIABLE_LEFT; }
e->citation_stack = stack_new(0);
e->definition_stack = stack_new(0);
e->footnote_stack = stack_new(0);
+ e->glossary_stack = stack_new(0);
e->header_stack = stack_new(0);
e->link_stack = stack_new(0);
e->metadata_stack = stack_new(0);
if (extensions & EXT_NOTES) {
token_pair_engine_add_pairing(e->pairings2, BRACKET_CITATION_LEFT, BRACKET_RIGHT, PAIR_BRACKET_CITATION, PAIRING_ALLOW_EMPTY | PAIRING_PRUNE_MATCH);
token_pair_engine_add_pairing(e->pairings2, BRACKET_FOOTNOTE_LEFT, BRACKET_RIGHT, PAIR_BRACKET_FOOTNOTE, PAIRING_ALLOW_EMPTY | PAIRING_PRUNE_MATCH);
+ token_pair_engine_add_pairing(e->pairings2, BRACKET_GLOSSARY_LEFT, BRACKET_RIGHT, PAIR_BRACKET_GLOSSARY, PAIRING_ALLOW_EMPTY | PAIRING_PRUNE_MATCH);
} else {
token_pair_engine_add_pairing(e->pairings2, BRACKET_CITATION_LEFT, BRACKET_RIGHT, PAIR_BRACKET, PAIRING_ALLOW_EMPTY | PAIRING_PRUNE_MATCH);
token_pair_engine_add_pairing(e->pairings2, BRACKET_FOOTNOTE_LEFT, BRACKET_RIGHT, PAIR_BRACKET, PAIRING_ALLOW_EMPTY | PAIRING_PRUNE_MATCH);
+ token_pair_engine_add_pairing(e->pairings2, BRACKET_GLOSSARY_LEFT, BRACKET_RIGHT, PAIR_BRACKET, PAIRING_ALLOW_EMPTY | PAIRING_PRUNE_MATCH);
}
- token_pair_engine_add_pairing(e->pairings2, BRACKET_VARIABLE_LEFT, BRACKET_RIGHT, PAIR_BRACKET_VARIABLE, PAIRING_ALLOW_EMPTY | PAIRING_PRUNE_MATCH);
token_pair_engine_add_pairing(e->pairings2, BRACKET_ABBREVIATION_LEFT, BRACKET_RIGHT, PAIR_BRACKET_ABBREVIATION, PAIRING_ALLOW_EMPTY | PAIRING_PRUNE_MATCH);
+ token_pair_engine_add_pairing(e->pairings2, BRACKET_VARIABLE_LEFT, BRACKET_RIGHT, PAIR_BRACKET_VARIABLE, PAIRING_ALLOW_EMPTY | PAIRING_PRUNE_MATCH);
token_pair_engine_add_pairing(e->pairings2, BRACKET_IMAGE_LEFT, BRACKET_RIGHT, PAIR_BRACKET_IMAGE, PAIRING_ALLOW_EMPTY | PAIRING_PRUNE_MATCH);
token_pair_engine_add_pairing(e->pairings2, PAREN_LEFT, PAREN_RIGHT, PAIR_PAREN, PAIRING_ALLOW_EMPTY | PAIRING_PRUNE_MATCH);
}
stack_free(e->citation_stack);
+ // Footnotes need to be freed
+ while (e->footnote_stack->size) {
+ footnote_free(stack_pop(e->footnote_stack));
+ }
+ stack_free(e->footnote_stack);
+
+ // Glossaries need to be freed
+ while (e->glossary_stack->size) {
+ footnote_free(stack_pop(e->glossary_stack));
+ }
+ stack_free(e->glossary_stack);
+
+
// Links need to be freed
while (e->link_stack->size) {
link_free(stack_pop(e->link_stack));
}
stack_free(e->link_stack);
- // Footnotes need to be freed
- while (e->footnote_stack->size) {
- footnote_free(stack_pop(e->footnote_stack));
- }
- stack_free(e->footnote_stack);
// Metadata needs to be freed
while (e->metadata_stack->size) {
line->type = (scan_len) ? LINE_DEF_LINK : LINE_PLAIN;
}
break;
+ case BRACKET_GLOSSARY_LEFT:
+ if (e->extensions & EXT_NOTES) {
+ scan_len = scan_ref_glossary(&source[line->start]);
+ line->type = (scan_len) ? LINE_DEF_GLOSSARY : LINE_PLAIN;
+ } else {
+ scan_len = scan_ref_link_no_attributes(&source[line->start]);
+ line->type = (scan_len) ? LINE_DEF_LINK : LINE_PLAIN;
+ }
+ break;
case PIPE:
// If PIPE is first, save checking later and assign LINE_TABLE now
if (!(e->extensions & EXT_COMPATIBILITY)) {
case BLOCK_DEF_ABBREVIATION:
case BLOCK_DEF_CITATION:
case BLOCK_DEF_FOOTNOTE:
+ case BLOCK_DEF_GLOSSARY:
case BLOCK_DEF_LINK:
case BLOCK_H1:
case BLOCK_H2:
case LINE_DEF_ABBREVIATION:
case LINE_DEF_CITATION:
case LINE_DEF_FOOTNOTE:
+ case LINE_DEF_GLOSSARY:
case LINE_DEF_LINK:
case LINE_EMPTY:
case LINE_LIST_BULLETED:
stack * abbreviation_stack;
stack * citation_stack;
stack * definition_stack;
- stack * header_stack;
stack * footnote_stack;
+ stack * glossary_stack;
+ stack * header_stack;
stack * link_stack;
stack * metadata_stack;
#endif
/************* Begin control #defines *****************************************/
#define YYCODETYPE unsigned char
-#define YYNOCODE 83
+#define YYNOCODE 85
#define YYACTIONTYPE unsigned short int
#define ParseTOKENTYPE token *
typedef union {
#define ParseARG_FETCH mmd_engine * engine = yypParser->engine
#define ParseARG_STORE yypParser->engine = engine
#define YYFALLBACK 1
-#define YYNSTATE 41
-#define YYNRULE 131
-#define YY_MAX_SHIFT 40
-#define YY_MIN_SHIFTREDUCE 133
-#define YY_MAX_SHIFTREDUCE 263
-#define YY_MIN_REDUCE 264
-#define YY_MAX_REDUCE 394
-#define YY_ERROR_ACTION 395
-#define YY_ACCEPT_ACTION 396
-#define YY_NO_ACTION 397
+#define YYNSTATE 42
+#define YYNRULE 134
+#define YY_MAX_SHIFT 41
+#define YY_MIN_SHIFTREDUCE 136
+#define YY_MAX_SHIFTREDUCE 269
+#define YY_MIN_REDUCE 270
+#define YY_MAX_REDUCE 403
+#define YY_ERROR_ACTION 404
+#define YY_ACCEPT_ACTION 405
+#define YY_NO_ACTION 406
/************* End control #defines *******************************************/
/* Define the yytestcase() macro to be a no-op if is not already defined
** yy_default[] Default action for each state.
**
*********** Begin parsing tables **********************************************/
-#define YY_ACTTAB_COUNT (258)
+#define YY_ACTTAB_COUNT (278)
static const YYACTIONTYPE yy_action[] = {
- /* 0 */ 396, 1, 135, 30, 145, 146, 147, 148, 149, 40,
- /* 10 */ 151, 29, 27, 37, 35, 28, 13, 158, 159, 160,
- /* 20 */ 39, 211, 12, 12, 27, 233, 220, 221, 262, 32,
- /* 30 */ 32, 25, 258, 24, 23, 217, 37, 35, 262, 7,
- /* 40 */ 186, 38, 258, 14, 14, 264, 142, 175, 182, 15,
- /* 50 */ 262, 212, 220, 221, 258, 247, 136, 137, 138, 139,
- /* 60 */ 140, 141, 225, 6, 5, 3, 2, 16, 34, 34,
- /* 70 */ 143, 231, 4, 233, 235, 238, 241, 236, 239, 242,
- /* 80 */ 253, 142, 220, 221, 15, 262, 179, 220, 221, 258,
- /* 90 */ 247, 136, 137, 138, 139, 140, 141, 225, 6, 5,
- /* 100 */ 3, 2, 16, 193, 21, 143, 231, 4, 233, 235,
- /* 110 */ 238, 241, 236, 239, 242, 253, 134, 30, 145, 146,
- /* 120 */ 147, 148, 149, 40, 151, 29, 27, 37, 35, 28,
- /* 130 */ 13, 158, 159, 160, 217, 245, 246, 39, 27, 243,
- /* 140 */ 214, 31, 31, 32, 32, 25, 192, 24, 23, 204,
- /* 150 */ 37, 35, 167, 7, 191, 38, 233, 14, 14, 33,
- /* 160 */ 33, 244, 187, 189, 185, 188, 190, 245, 246, 26,
- /* 170 */ 26, 243, 8, 39, 8, 12, 12, 36, 36, 161,
- /* 180 */ 9, 9, 17, 17, 162, 248, 169, 169, 227, 249,
- /* 190 */ 26, 255, 172, 244, 183, 180, 181, 184, 26, 226,
- /* 200 */ 4, 9, 9, 17, 17, 5, 199, 168, 168, 9,
- /* 210 */ 9, 17, 17, 245, 246, 173, 173, 243, 26, 6,
- /* 220 */ 254, 209, 194, 26, 210, 210, 206, 207, 175, 10,
- /* 230 */ 10, 19, 19, 26, 200, 161, 18, 18, 266, 244,
- /* 240 */ 176, 177, 178, 26, 11, 11, 20, 20, 266, 195,
- /* 250 */ 266, 4, 266, 266, 266, 161, 22, 22,
+ /* 0 */ 405, 1, 138, 31, 148, 149, 150, 151, 152, 153,
+ /* 10 */ 41, 155, 30, 28, 38, 36, 29, 14, 162, 163,
+ /* 20 */ 164, 40, 216, 13, 13, 28, 239, 225, 226, 268,
+ /* 30 */ 33, 33, 26, 264, 25, 24, 40, 38, 36, 219,
+ /* 40 */ 8, 222, 39, 191, 15, 15, 270, 145, 268, 180,
+ /* 50 */ 16, 268, 264, 225, 226, 264, 253, 139, 140, 141,
+ /* 60 */ 142, 143, 144, 230, 7, 6, 237, 4, 3, 2,
+ /* 70 */ 17, 27, 217, 146, 5, 239, 241, 244, 247, 242,
+ /* 80 */ 245, 248, 259, 145, 222, 166, 16, 268, 187, 225,
+ /* 90 */ 226, 264, 253, 139, 140, 141, 142, 143, 144, 230,
+ /* 100 */ 7, 6, 237, 4, 3, 2, 17, 239, 261, 146,
+ /* 110 */ 5, 239, 241, 244, 247, 242, 245, 248, 259, 137,
+ /* 120 */ 31, 148, 149, 150, 151, 152, 153, 41, 155, 30,
+ /* 130 */ 28, 38, 36, 29, 14, 162, 163, 164, 260, 251,
+ /* 140 */ 252, 184, 28, 249, 35, 35, 254, 33, 33, 26,
+ /* 150 */ 255, 25, 24, 22, 38, 36, 214, 8, 197, 39,
+ /* 160 */ 215, 15, 15, 209, 211, 212, 250, 192, 194, 190,
+ /* 170 */ 193, 195, 251, 252, 27, 196, 249, 9, 40, 9,
+ /* 180 */ 13, 13, 32, 32, 171, 10, 10, 18, 18, 165,
+ /* 190 */ 5, 174, 174, 34, 34, 232, 27, 37, 37, 250,
+ /* 200 */ 188, 185, 186, 189, 27, 5, 231, 10, 10, 18,
+ /* 210 */ 18, 177, 6, 173, 173, 10, 10, 18, 18, 27,
+ /* 220 */ 204, 172, 172, 7, 251, 252, 27, 199, 249, 27,
+ /* 230 */ 10, 10, 18, 18, 27, 215, 178, 178, 165, 19,
+ /* 240 */ 19, 165, 23, 23, 180, 11, 11, 20, 20, 27,
+ /* 250 */ 205, 250, 181, 182, 183, 225, 226, 272, 272, 272,
+ /* 260 */ 12, 12, 21, 21, 272, 200, 272, 272, 272, 272,
+ /* 270 */ 272, 272, 272, 272, 272, 272, 272, 198,
};
static const YYCODETYPE yy_lookahead[] = {
- /* 0 */ 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
- /* 10 */ 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
- /* 20 */ 78, 79, 80, 81, 61, 28, 7, 8, 5, 66,
- /* 30 */ 67, 68, 9, 70, 71, 6, 73, 74, 5, 76,
- /* 40 */ 69, 78, 9, 80, 81, 0, 1, 28, 69, 4,
- /* 50 */ 5, 28, 7, 8, 9, 10, 11, 12, 13, 14,
- /* 60 */ 15, 16, 17, 18, 19, 20, 21, 22, 66, 67,
- /* 70 */ 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
- /* 80 */ 35, 1, 7, 8, 4, 5, 69, 7, 8, 9,
- /* 90 */ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
- /* 100 */ 20, 21, 22, 28, 61, 25, 26, 27, 28, 29,
- /* 110 */ 30, 31, 32, 33, 34, 35, 39, 40, 41, 42,
- /* 120 */ 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
- /* 130 */ 53, 54, 55, 56, 6, 2, 3, 78, 61, 6,
- /* 140 */ 81, 57, 58, 66, 67, 68, 61, 70, 71, 75,
- /* 150 */ 73, 74, 65, 76, 72, 78, 28, 80, 81, 57,
- /* 160 */ 58, 28, 29, 30, 31, 32, 33, 2, 3, 46,
- /* 170 */ 46, 6, 77, 78, 79, 80, 81, 57, 58, 58,
- /* 180 */ 57, 58, 59, 60, 60, 6, 63, 64, 6, 10,
- /* 190 */ 46, 6, 67, 28, 29, 30, 31, 32, 46, 17,
- /* 200 */ 27, 57, 58, 59, 60, 19, 74, 63, 64, 57,
- /* 210 */ 58, 59, 60, 2, 3, 63, 64, 6, 46, 18,
- /* 220 */ 35, 5, 73, 46, 9, 9, 2, 3, 28, 57,
- /* 230 */ 58, 59, 60, 46, 62, 58, 59, 60, 82, 28,
- /* 240 */ 29, 30, 31, 46, 57, 58, 59, 60, 82, 62,
- /* 250 */ 82, 27, 82, 82, 82, 58, 59, 60,
+ /* 0 */ 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
+ /* 10 */ 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
+ /* 20 */ 58, 80, 81, 82, 83, 63, 29, 7, 8, 5,
+ /* 30 */ 68, 69, 70, 9, 72, 73, 80, 75, 76, 83,
+ /* 40 */ 78, 6, 80, 71, 82, 83, 0, 1, 5, 29,
+ /* 50 */ 4, 5, 9, 7, 8, 9, 10, 11, 12, 13,
+ /* 60 */ 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
+ /* 70 */ 24, 48, 29, 27, 28, 29, 30, 31, 32, 33,
+ /* 80 */ 34, 35, 36, 1, 6, 62, 4, 5, 71, 7,
+ /* 90 */ 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
+ /* 100 */ 18, 19, 20, 21, 22, 23, 24, 29, 6, 27,
+ /* 110 */ 28, 29, 30, 31, 32, 33, 34, 35, 36, 40,
+ /* 120 */ 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
+ /* 130 */ 51, 52, 53, 54, 55, 56, 57, 58, 36, 2,
+ /* 140 */ 3, 71, 63, 6, 68, 69, 6, 68, 69, 70,
+ /* 150 */ 10, 72, 73, 63, 75, 76, 5, 78, 63, 80,
+ /* 160 */ 9, 82, 83, 77, 2, 3, 29, 30, 31, 32,
+ /* 170 */ 33, 34, 2, 3, 48, 74, 6, 79, 80, 81,
+ /* 180 */ 82, 83, 59, 60, 67, 59, 60, 61, 62, 60,
+ /* 190 */ 28, 65, 66, 59, 60, 6, 48, 59, 60, 29,
+ /* 200 */ 30, 31, 32, 33, 48, 28, 17, 59, 60, 61,
+ /* 210 */ 62, 69, 19, 65, 66, 59, 60, 61, 62, 48,
+ /* 220 */ 76, 65, 66, 18, 2, 3, 48, 75, 6, 48,
+ /* 230 */ 59, 60, 61, 62, 48, 9, 65, 66, 60, 61,
+ /* 240 */ 62, 60, 61, 62, 29, 59, 60, 61, 62, 48,
+ /* 250 */ 64, 29, 30, 31, 32, 7, 8, 84, 84, 84,
+ /* 260 */ 59, 60, 61, 62, 84, 64, 84, 84, 84, 84,
+ /* 270 */ 84, 84, 84, 84, 84, 84, 84, 29,
};
-#define YY_SHIFT_USE_DFLT (258)
-#define YY_SHIFT_COUNT (40)
+#define YY_SHIFT_USE_DFLT (278)
+#define YY_SHIFT_COUNT (41)
#define YY_SHIFT_MIN (-3)
-#define YY_SHIFT_MAX (224)
+#define YY_SHIFT_MAX (248)
static const short yy_shift_ofst[] = {
- /* 0 */ 80, 45, 128, 128, 128, 128, 128, 33, 33, 128,
- /* 10 */ 128, 128, 23, 224, 33, 29, 29, -3, -3, -3,
- /* 20 */ -3, 29, -3, 133, 165, 211, 19, 75, 185, 179,
- /* 30 */ 182, 29, 173, 29, 173, 186, 29, 201, 216, 215,
- /* 40 */ 200,
+ /* 0 */ 82, 46, 78, 78, 78, 78, 78, 78, 24, 24,
+ /* 10 */ 78, 78, 78, 43, 162, 24, 35, 35, -3, -3,
+ /* 20 */ -3, -3, 35, -3, 137, 170, 222, 20, 248, 102,
+ /* 30 */ 140, 189, 35, 177, 35, 177, 193, 35, 205, 151,
+ /* 40 */ 226, 215,
};
-#define YY_REDUCE_USE_DFLT (-59)
-#define YY_REDUCE_COUNT (37)
-#define YY_REDUCE_MIN (-58)
-#define YY_REDUCE_MAX (197)
+#define YY_REDUCE_USE_DFLT (-60)
+#define YY_REDUCE_COUNT (38)
+#define YY_REDUCE_MIN (-59)
+#define YY_REDUCE_MAX (201)
static const short yy_reduce_ofst[] = {
- /* 0 */ -37, 77, 123, 144, 152, 172, 187, 95, -58, 177,
- /* 10 */ 197, 197, 59, 2, 59, 84, 102, 124, 124, 124,
- /* 20 */ 124, 120, 124, -29, -21, 17, 43, 85, 74, 82,
- /* 30 */ 87, 121, 125, 121, 125, 132, 121, 149,
+ /* 0 */ -38, 79, 126, 148, 156, 171, 186, 201, 98, -59,
+ /* 10 */ 178, 181, 181, -44, 76, -44, 123, 134, 23, 23,
+ /* 20 */ 23, 23, 138, 23, -28, 17, 70, 90, 95, 86,
+ /* 30 */ 101, 117, 129, 142, 129, 142, 144, 129, 152,
};
static const YYACTIONTYPE yy_default[] = {
- /* 0 */ 395, 395, 360, 359, 305, 334, 329, 388, 339, 353,
- /* 10 */ 332, 327, 344, 288, 346, 387, 361, 355, 297, 333,
- /* 20 */ 328, 295, 296, 371, 368, 365, 350, 284, 287, 283,
- /* 30 */ 275, 336, 394, 301, 302, 286, 294, 285, 392, 392,
- /* 40 */ 281,
+ /* 0 */ 404, 404, 369, 368, 367, 313, 342, 337, 397, 347,
+ /* 10 */ 361, 340, 335, 352, 295, 354, 396, 370, 363, 304,
+ /* 20 */ 341, 336, 302, 303, 380, 377, 374, 358, 291, 294,
+ /* 30 */ 290, 281, 344, 403, 309, 310, 293, 301, 292, 401,
+ /* 40 */ 401, 288,
};
/********** End of lemon-generated parsing tables *****************************/
10, /* LINE_BLOCKQUOTE => LINE_HTML */
10, /* LINE_LIST_BULLETED => LINE_HTML */
10, /* LINE_LIST_ENUMERATED => LINE_HTML */
+ 10, /* LINE_DEF_ABBREVIATION => LINE_HTML */
10, /* LINE_DEF_CITATION => LINE_HTML */
10, /* LINE_DEF_FOOTNOTE => LINE_HTML */
+ 10, /* LINE_DEF_GLOSSARY => LINE_HTML */
10, /* LINE_DEF_LINK => LINE_HTML */
10, /* LINE_FENCE_BACKTICK => LINE_HTML */
10, /* LINE_FENCE_BACKTICK_START => LINE_HTML */
"LINE_INDENTED_SPACE", "LINE_TABLE", "LINE_HTML", "LINE_ATX_1",
"LINE_ATX_2", "LINE_ATX_3", "LINE_ATX_4", "LINE_ATX_5",
"LINE_ATX_6", "LINE_BLOCKQUOTE", "LINE_LIST_BULLETED", "LINE_LIST_ENUMERATED",
- "LINE_DEF_CITATION", "LINE_DEF_FOOTNOTE", "LINE_DEF_LINK", "LINE_FENCE_BACKTICK",
- "LINE_FENCE_BACKTICK_START", "LINE_TOC", "LINE_DEF_ABBREVIATION", "LINE_DEFINITION",
- "LINE_EMPTY", "LINE_FENCE_BACKTICK_3", "LINE_FENCE_BACKTICK_4", "LINE_FENCE_BACKTICK_5",
- "LINE_FENCE_BACKTICK_START_3", "LINE_FENCE_BACKTICK_START_4", "LINE_FENCE_BACKTICK_START_5", "LINE_META",
- "error", "doc", "blocks", "block",
- "blockquote", "def_abbreviation", "def_citation", "def_footnote",
- "def_link", "definition_block", "empty", "fenced_block",
- "html_block", "indented_code", "list_bullet", "list_enum",
- "meta_block", "para", "setext_1", "setext_2",
- "table", "chunk", "chunk_line", "nested_chunks",
- "nested_chunk", "indented_line", "ext_chunk", "opt_ext_chunk",
- "tail", "quote_line", "defs", "def",
- "fenced_3", "fenced_line", "fenced_4", "fenced_5",
- "html_line", "item_bullet", "item_enum", "meta_line",
- "table_header", "table_body", "header_rows", "table_section",
- "all_rows", "row",
+ "LINE_DEF_ABBREVIATION", "LINE_DEF_CITATION", "LINE_DEF_FOOTNOTE", "LINE_DEF_GLOSSARY",
+ "LINE_DEF_LINK", "LINE_FENCE_BACKTICK", "LINE_FENCE_BACKTICK_START", "LINE_TOC",
+ "LINE_DEFINITION", "LINE_EMPTY", "LINE_FENCE_BACKTICK_3", "LINE_FENCE_BACKTICK_4",
+ "LINE_FENCE_BACKTICK_5", "LINE_FENCE_BACKTICK_START_3", "LINE_FENCE_BACKTICK_START_4", "LINE_FENCE_BACKTICK_START_5",
+ "LINE_META", "error", "doc", "blocks",
+ "block", "blockquote", "def_abbreviation", "def_citation",
+ "def_footnote", "def_glossary", "def_link", "definition_block",
+ "empty", "fenced_block", "html_block", "indented_code",
+ "list_bullet", "list_enum", "meta_block", "para",
+ "setext_1", "setext_2", "table", "chunk",
+ "chunk_line", "nested_chunks", "nested_chunk", "indented_line",
+ "ext_chunk", "opt_ext_chunk", "tail", "quote_line",
+ "defs", "def", "fenced_3", "fenced_line",
+ "fenced_4", "fenced_5", "html_line", "item_bullet",
+ "item_enum", "meta_line", "table_header", "table_body",
+ "header_rows", "table_section", "all_rows", "row",
};
#endif /* NDEBUG */
/* 12 */ "block ::= def_abbreviation",
/* 13 */ "block ::= def_citation",
/* 14 */ "block ::= def_footnote",
- /* 15 */ "block ::= def_link",
- /* 16 */ "block ::= definition_block",
- /* 17 */ "block ::= empty",
- /* 18 */ "block ::= fenced_block",
- /* 19 */ "block ::= html_block",
- /* 20 */ "block ::= indented_code",
- /* 21 */ "block ::= list_bullet",
- /* 22 */ "block ::= list_enum",
- /* 23 */ "block ::= meta_block",
- /* 24 */ "block ::= para",
- /* 25 */ "block ::= setext_1",
- /* 26 */ "block ::= setext_2",
- /* 27 */ "block ::= table",
- /* 28 */ "chunk ::= chunk chunk_line",
- /* 29 */ "nested_chunks ::= nested_chunks nested_chunk",
- /* 30 */ "nested_chunk ::= empty indented_line chunk",
- /* 31 */ "nested_chunk ::= empty indented_line",
- /* 32 */ "ext_chunk ::= chunk nested_chunks",
- /* 33 */ "opt_ext_chunk ::= chunk nested_chunks",
- /* 34 */ "blockquote ::= blockquote quote_line",
- /* 35 */ "def_citation ::= LINE_DEF_CITATION tail",
- /* 36 */ "def_footnote ::= LINE_DEF_FOOTNOTE tail",
- /* 37 */ "def_link ::= LINE_DEF_LINK chunk",
- /* 38 */ "definition_block ::= para defs",
- /* 39 */ "defs ::= defs def",
- /* 40 */ "def ::= LINE_DEFINITION tail",
- /* 41 */ "def ::= LINE_DEFINITION",
- /* 42 */ "empty ::= empty LINE_EMPTY",
- /* 43 */ "fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_3",
- /* 44 */ "fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_4",
- /* 45 */ "fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_5",
- /* 46 */ "fenced_3 ::= fenced_3 fenced_line",
- /* 47 */ "fenced_block ::= fenced_4 LINE_FENCE_BACKTICK_4",
- /* 48 */ "fenced_block ::= fenced_4 LINE_FENCE_BACKTICK_5",
- /* 49 */ "fenced_4 ::= fenced_4 fenced_line",
- /* 50 */ "fenced_4 ::= fenced_4 LINE_FENCE_BACKTICK_3",
- /* 51 */ "fenced_4 ::= fenced_4 LINE_FENCE_BACKTICK_START_3",
- /* 52 */ "fenced_block ::= fenced_5 LINE_FENCE_BACKTICK_5",
- /* 53 */ "fenced_5 ::= fenced_5 fenced_line",
- /* 54 */ "fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_3",
- /* 55 */ "fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_START_3",
- /* 56 */ "fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_4",
- /* 57 */ "fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_START_4",
- /* 58 */ "html_block ::= html_block html_line",
- /* 59 */ "indented_code ::= indented_code indented_line",
- /* 60 */ "indented_code ::= indented_code LINE_EMPTY",
- /* 61 */ "list_bullet ::= list_bullet item_bullet",
- /* 62 */ "item_bullet ::= LINE_LIST_BULLETED ext_chunk",
- /* 63 */ "item_bullet ::= LINE_LIST_BULLETED chunk",
- /* 64 */ "item_bullet ::= LINE_LIST_BULLETED nested_chunks",
- /* 65 */ "item_bullet ::= LINE_LIST_BULLETED",
- /* 66 */ "list_enum ::= list_enum item_enum",
- /* 67 */ "item_enum ::= LINE_LIST_ENUMERATED ext_chunk",
- /* 68 */ "item_enum ::= LINE_LIST_ENUMERATED chunk",
- /* 69 */ "item_enum ::= LINE_LIST_ENUMERATED nested_chunks",
- /* 70 */ "item_enum ::= LINE_LIST_ENUMERATED",
- /* 71 */ "meta_block ::= meta_block meta_line",
- /* 72 */ "para ::= LINE_PLAIN chunk",
- /* 73 */ "setext_1 ::= para LINE_SETEXT_1",
- /* 74 */ "setext_2 ::= para LINE_SETEXT_2",
- /* 75 */ "table ::= table_header table_body",
- /* 76 */ "table_header ::= header_rows LINE_TABLE_SEPARATOR",
- /* 77 */ "header_rows ::= header_rows LINE_TABLE",
- /* 78 */ "table_body ::= table_body table_section",
- /* 79 */ "table_section ::= all_rows LINE_EMPTY",
- /* 80 */ "table_section ::= all_rows",
- /* 81 */ "all_rows ::= all_rows row",
- /* 82 */ "para ::= all_rows",
- /* 83 */ "chunk ::= chunk_line",
- /* 84 */ "chunk_line ::= LINE_CONTINUATION",
- /* 85 */ "nested_chunks ::= nested_chunk",
- /* 86 */ "nested_chunk ::= empty",
- /* 87 */ "indented_line ::= LINE_INDENTED_TAB",
- /* 88 */ "indented_line ::= LINE_INDENTED_SPACE",
- /* 89 */ "opt_ext_chunk ::= chunk",
- /* 90 */ "tail ::= opt_ext_chunk",
- /* 91 */ "tail ::= nested_chunks",
- /* 92 */ "blockquote ::= LINE_BLOCKQUOTE",
- /* 93 */ "quote_line ::= LINE_BLOCKQUOTE",
- /* 94 */ "quote_line ::= LINE_CONTINUATION",
- /* 95 */ "def_citation ::= LINE_DEF_CITATION",
- /* 96 */ "def_footnote ::= LINE_DEF_FOOTNOTE",
- /* 97 */ "def_link ::= LINE_DEF_LINK",
- /* 98 */ "def_abbreviation ::= LINE_DEF_ABBREVIATION",
- /* 99 */ "defs ::= def",
- /* 100 */ "empty ::= LINE_EMPTY",
- /* 101 */ "fenced_block ::= fenced_3",
- /* 102 */ "fenced_3 ::= LINE_FENCE_BACKTICK_3",
- /* 103 */ "fenced_3 ::= LINE_FENCE_BACKTICK_START_3",
- /* 104 */ "fenced_block ::= fenced_4",
- /* 105 */ "fenced_4 ::= LINE_FENCE_BACKTICK_4",
- /* 106 */ "fenced_4 ::= LINE_FENCE_BACKTICK_START_4",
- /* 107 */ "fenced_block ::= fenced_5",
- /* 108 */ "fenced_5 ::= LINE_FENCE_BACKTICK_5",
- /* 109 */ "fenced_5 ::= LINE_FENCE_BACKTICK_START_5",
- /* 110 */ "fenced_line ::= LINE_CONTINUATION",
- /* 111 */ "fenced_line ::= LINE_EMPTY",
- /* 112 */ "fenced_line ::= LINE_SETEXT_1",
- /* 113 */ "fenced_line ::= LINE_SETEXT_2",
- /* 114 */ "html_block ::= LINE_HTML",
- /* 115 */ "html_line ::= LINE_CONTINUATION",
- /* 116 */ "html_line ::= LINE_HTML",
- /* 117 */ "indented_code ::= indented_line",
- /* 118 */ "list_bullet ::= item_bullet",
- /* 119 */ "list_enum ::= item_enum",
- /* 120 */ "meta_block ::= LINE_META",
- /* 121 */ "meta_line ::= LINE_META",
- /* 122 */ "meta_line ::= LINE_CONTINUATION",
- /* 123 */ "para ::= LINE_PLAIN",
- /* 124 */ "table ::= table_header",
- /* 125 */ "header_rows ::= LINE_TABLE",
- /* 126 */ "table_body ::= table_section",
- /* 127 */ "all_rows ::= row",
- /* 128 */ "row ::= header_rows",
- /* 129 */ "row ::= LINE_TABLE_SEPARATOR",
- /* 130 */ "para ::= defs",
+ /* 15 */ "block ::= def_glossary",
+ /* 16 */ "block ::= def_link",
+ /* 17 */ "block ::= definition_block",
+ /* 18 */ "block ::= empty",
+ /* 19 */ "block ::= fenced_block",
+ /* 20 */ "block ::= html_block",
+ /* 21 */ "block ::= indented_code",
+ /* 22 */ "block ::= list_bullet",
+ /* 23 */ "block ::= list_enum",
+ /* 24 */ "block ::= meta_block",
+ /* 25 */ "block ::= para",
+ /* 26 */ "block ::= setext_1",
+ /* 27 */ "block ::= setext_2",
+ /* 28 */ "block ::= table",
+ /* 29 */ "chunk ::= chunk chunk_line",
+ /* 30 */ "nested_chunks ::= nested_chunks nested_chunk",
+ /* 31 */ "nested_chunk ::= empty indented_line chunk",
+ /* 32 */ "nested_chunk ::= empty indented_line",
+ /* 33 */ "ext_chunk ::= chunk nested_chunks",
+ /* 34 */ "opt_ext_chunk ::= chunk nested_chunks",
+ /* 35 */ "blockquote ::= blockquote quote_line",
+ /* 36 */ "def_citation ::= LINE_DEF_CITATION tail",
+ /* 37 */ "def_footnote ::= LINE_DEF_FOOTNOTE tail",
+ /* 38 */ "def_glossary ::= LINE_DEF_GLOSSARY tail",
+ /* 39 */ "def_link ::= LINE_DEF_LINK chunk",
+ /* 40 */ "definition_block ::= para defs",
+ /* 41 */ "defs ::= defs def",
+ /* 42 */ "def ::= LINE_DEFINITION tail",
+ /* 43 */ "def ::= LINE_DEFINITION",
+ /* 44 */ "empty ::= empty LINE_EMPTY",
+ /* 45 */ "fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_3",
+ /* 46 */ "fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_4",
+ /* 47 */ "fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_5",
+ /* 48 */ "fenced_3 ::= fenced_3 fenced_line",
+ /* 49 */ "fenced_block ::= fenced_4 LINE_FENCE_BACKTICK_4",
+ /* 50 */ "fenced_block ::= fenced_4 LINE_FENCE_BACKTICK_5",
+ /* 51 */ "fenced_4 ::= fenced_4 fenced_line",
+ /* 52 */ "fenced_4 ::= fenced_4 LINE_FENCE_BACKTICK_3",
+ /* 53 */ "fenced_4 ::= fenced_4 LINE_FENCE_BACKTICK_START_3",
+ /* 54 */ "fenced_block ::= fenced_5 LINE_FENCE_BACKTICK_5",
+ /* 55 */ "fenced_5 ::= fenced_5 fenced_line",
+ /* 56 */ "fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_3",
+ /* 57 */ "fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_START_3",
+ /* 58 */ "fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_4",
+ /* 59 */ "fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_START_4",
+ /* 60 */ "html_block ::= html_block html_line",
+ /* 61 */ "indented_code ::= indented_code indented_line",
+ /* 62 */ "indented_code ::= indented_code LINE_EMPTY",
+ /* 63 */ "list_bullet ::= list_bullet item_bullet",
+ /* 64 */ "item_bullet ::= LINE_LIST_BULLETED ext_chunk",
+ /* 65 */ "item_bullet ::= LINE_LIST_BULLETED chunk",
+ /* 66 */ "item_bullet ::= LINE_LIST_BULLETED nested_chunks",
+ /* 67 */ "item_bullet ::= LINE_LIST_BULLETED",
+ /* 68 */ "list_enum ::= list_enum item_enum",
+ /* 69 */ "item_enum ::= LINE_LIST_ENUMERATED ext_chunk",
+ /* 70 */ "item_enum ::= LINE_LIST_ENUMERATED chunk",
+ /* 71 */ "item_enum ::= LINE_LIST_ENUMERATED nested_chunks",
+ /* 72 */ "item_enum ::= LINE_LIST_ENUMERATED",
+ /* 73 */ "meta_block ::= meta_block meta_line",
+ /* 74 */ "para ::= LINE_PLAIN chunk",
+ /* 75 */ "setext_1 ::= para LINE_SETEXT_1",
+ /* 76 */ "setext_2 ::= para LINE_SETEXT_2",
+ /* 77 */ "table ::= table_header table_body",
+ /* 78 */ "table_header ::= header_rows LINE_TABLE_SEPARATOR",
+ /* 79 */ "header_rows ::= header_rows LINE_TABLE",
+ /* 80 */ "table_body ::= table_body table_section",
+ /* 81 */ "table_section ::= all_rows LINE_EMPTY",
+ /* 82 */ "table_section ::= all_rows",
+ /* 83 */ "all_rows ::= all_rows row",
+ /* 84 */ "para ::= all_rows",
+ /* 85 */ "chunk ::= chunk_line",
+ /* 86 */ "chunk_line ::= LINE_CONTINUATION",
+ /* 87 */ "nested_chunks ::= nested_chunk",
+ /* 88 */ "nested_chunk ::= empty",
+ /* 89 */ "indented_line ::= LINE_INDENTED_TAB",
+ /* 90 */ "indented_line ::= LINE_INDENTED_SPACE",
+ /* 91 */ "opt_ext_chunk ::= chunk",
+ /* 92 */ "tail ::= opt_ext_chunk",
+ /* 93 */ "tail ::= nested_chunks",
+ /* 94 */ "blockquote ::= LINE_BLOCKQUOTE",
+ /* 95 */ "quote_line ::= LINE_BLOCKQUOTE",
+ /* 96 */ "quote_line ::= LINE_CONTINUATION",
+ /* 97 */ "def_citation ::= LINE_DEF_CITATION",
+ /* 98 */ "def_footnote ::= LINE_DEF_FOOTNOTE",
+ /* 99 */ "def_glossary ::= LINE_DEF_GLOSSARY",
+ /* 100 */ "def_link ::= LINE_DEF_LINK",
+ /* 101 */ "def_abbreviation ::= LINE_DEF_ABBREVIATION",
+ /* 102 */ "defs ::= def",
+ /* 103 */ "empty ::= LINE_EMPTY",
+ /* 104 */ "fenced_block ::= fenced_3",
+ /* 105 */ "fenced_3 ::= LINE_FENCE_BACKTICK_3",
+ /* 106 */ "fenced_3 ::= LINE_FENCE_BACKTICK_START_3",
+ /* 107 */ "fenced_block ::= fenced_4",
+ /* 108 */ "fenced_4 ::= LINE_FENCE_BACKTICK_4",
+ /* 109 */ "fenced_4 ::= LINE_FENCE_BACKTICK_START_4",
+ /* 110 */ "fenced_block ::= fenced_5",
+ /* 111 */ "fenced_5 ::= LINE_FENCE_BACKTICK_5",
+ /* 112 */ "fenced_5 ::= LINE_FENCE_BACKTICK_START_5",
+ /* 113 */ "fenced_line ::= LINE_CONTINUATION",
+ /* 114 */ "fenced_line ::= LINE_EMPTY",
+ /* 115 */ "fenced_line ::= LINE_SETEXT_1",
+ /* 116 */ "fenced_line ::= LINE_SETEXT_2",
+ /* 117 */ "html_block ::= LINE_HTML",
+ /* 118 */ "html_line ::= LINE_CONTINUATION",
+ /* 119 */ "html_line ::= LINE_HTML",
+ /* 120 */ "indented_code ::= indented_line",
+ /* 121 */ "list_bullet ::= item_bullet",
+ /* 122 */ "list_enum ::= item_enum",
+ /* 123 */ "meta_block ::= LINE_META",
+ /* 124 */ "meta_line ::= LINE_META",
+ /* 125 */ "meta_line ::= LINE_CONTINUATION",
+ /* 126 */ "para ::= LINE_PLAIN",
+ /* 127 */ "table ::= table_header",
+ /* 128 */ "header_rows ::= LINE_TABLE",
+ /* 129 */ "table_body ::= table_section",
+ /* 130 */ "all_rows ::= row",
+ /* 131 */ "row ::= header_rows",
+ /* 132 */ "row ::= LINE_TABLE_SEPARATOR",
+ /* 133 */ "para ::= defs",
};
#endif /* NDEBUG */
YYCODETYPE lhs; /* Symbol on the left-hand side of the rule */
unsigned char nrhs; /* Number of right-hand side symbols in the rule */
} yyRuleInfo[] = {
- { 37, 1 },
- { 38, 2 },
{ 38, 1 },
+ { 39, 2 },
{ 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 39, 1 },
- { 57, 2 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
+ { 40, 1 },
{ 59, 2 },
- { 60, 3 },
- { 60, 2 },
+ { 61, 2 },
+ { 62, 3 },
{ 62, 2 },
- { 63, 2 },
- { 40, 2 },
- { 42, 2 },
+ { 64, 2 },
+ { 65, 2 },
+ { 41, 2 },
{ 43, 2 },
{ 44, 2 },
{ 45, 2 },
- { 66, 2 },
- { 67, 2 },
- { 67, 1 },
{ 46, 2 },
{ 47, 2 },
- { 47, 2 },
- { 47, 2 },
{ 68, 2 },
- { 47, 2 },
- { 47, 2 },
- { 70, 2 },
- { 70, 2 },
- { 70, 2 },
- { 47, 2 },
- { 71, 2 },
- { 71, 2 },
- { 71, 2 },
- { 71, 2 },
- { 71, 2 },
+ { 69, 2 },
+ { 69, 1 },
{ 48, 2 },
{ 49, 2 },
{ 49, 2 },
- { 50, 2 },
+ { 49, 2 },
+ { 70, 2 },
+ { 49, 2 },
+ { 49, 2 },
+ { 72, 2 },
+ { 72, 2 },
+ { 72, 2 },
+ { 49, 2 },
{ 73, 2 },
{ 73, 2 },
{ 73, 2 },
- { 73, 1 },
+ { 73, 2 },
+ { 73, 2 },
+ { 50, 2 },
+ { 51, 2 },
{ 51, 2 },
- { 74, 2 },
- { 74, 2 },
- { 74, 2 },
- { 74, 1 },
{ 52, 2 },
+ { 75, 2 },
+ { 75, 2 },
+ { 75, 2 },
+ { 75, 1 },
{ 53, 2 },
+ { 76, 2 },
+ { 76, 2 },
+ { 76, 2 },
+ { 76, 1 },
{ 54, 2 },
{ 55, 2 },
{ 56, 2 },
- { 76, 2 },
+ { 57, 2 },
+ { 58, 2 },
{ 78, 2 },
- { 77, 2 },
- { 79, 2 },
- { 79, 1 },
{ 80, 2 },
- { 53, 1 },
- { 57, 1 },
- { 58, 1 },
+ { 79, 2 },
+ { 81, 2 },
+ { 81, 1 },
+ { 82, 2 },
+ { 55, 1 },
{ 59, 1 },
{ 60, 1 },
{ 61, 1 },
- { 61, 1 },
+ { 62, 1 },
+ { 63, 1 },
{ 63, 1 },
- { 64, 1 },
- { 64, 1 },
- { 40, 1 },
- { 65, 1 },
{ 65, 1 },
- { 42, 1 },
+ { 66, 1 },
+ { 66, 1 },
+ { 41, 1 },
+ { 67, 1 },
+ { 67, 1 },
{ 43, 1 },
{ 44, 1 },
- { 41, 1 },
- { 66, 1 },
+ { 45, 1 },
{ 46, 1 },
- { 47, 1 },
- { 68, 1 },
+ { 42, 1 },
{ 68, 1 },
- { 47, 1 },
+ { 48, 1 },
+ { 49, 1 },
{ 70, 1 },
{ 70, 1 },
- { 47, 1 },
- { 71, 1 },
- { 71, 1 },
- { 69, 1 },
- { 69, 1 },
- { 69, 1 },
- { 69, 1 },
- { 48, 1 },
+ { 49, 1 },
{ 72, 1 },
{ 72, 1 },
{ 49, 1 },
+ { 73, 1 },
+ { 73, 1 },
+ { 71, 1 },
+ { 71, 1 },
+ { 71, 1 },
+ { 71, 1 },
{ 50, 1 },
+ { 74, 1 },
+ { 74, 1 },
{ 51, 1 },
{ 52, 1 },
- { 75, 1 },
- { 75, 1 },
{ 53, 1 },
- { 56, 1 },
- { 78, 1 },
+ { 54, 1 },
+ { 77, 1 },
{ 77, 1 },
+ { 55, 1 },
+ { 58, 1 },
{ 80, 1 },
- { 81, 1 },
- { 81, 1 },
- { 53, 1 },
+ { 79, 1 },
+ { 82, 1 },
+ { 83, 1 },
+ { 83, 1 },
+ { 55, 1 },
};
static void yy_accept(yyParser*); /* Forward Declaration */
{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_DEF_FOOTNOTE); stack_push(engine->definition_stack, yylhsminor.yy0); recursive_parse_indent(engine, yylhsminor.yy0); }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
- case 15: /* block ::= def_link */
+ case 15: /* block ::= def_glossary */
+{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_DEF_GLOSSARY); stack_push(engine->definition_stack, yylhsminor.yy0); recursive_parse_indent(engine, yylhsminor.yy0); }
+ yymsp[0].minor.yy0 = yylhsminor.yy0;
+ break;
+ case 16: /* block ::= def_link */
{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_DEF_LINK); stack_push(engine->definition_stack, yylhsminor.yy0); }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
- case 16: /* block ::= definition_block */
+ case 17: /* block ::= definition_block */
{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_DEFLIST); }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
- case 17: /* block ::= empty */
+ case 18: /* block ::= empty */
{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_EMPTY); }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
- case 18: /* block ::= fenced_block */
+ case 19: /* block ::= fenced_block */
{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_CODE_FENCED); yymsp[0].minor.yy0->child->type = CODE_FENCE; }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
- case 19: /* block ::= html_block */
+ case 20: /* block ::= html_block */
{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_HTML); }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
- case 20: /* block ::= indented_code */
+ case 21: /* block ::= indented_code */
{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_CODE_INDENTED); }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
- case 21: /* block ::= list_bullet */
+ case 22: /* block ::= list_bullet */
{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_LIST_BULLETED); is_list_loose(yylhsminor.yy0); }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
- case 22: /* block ::= list_enum */
+ case 23: /* block ::= list_enum */
{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_LIST_ENUMERATED); is_list_loose(yylhsminor.yy0); }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
- case 23: /* block ::= meta_block */
+ case 24: /* block ::= meta_block */
{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_META); }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
- case 24: /* block ::= para */
+ case 25: /* block ::= para */
{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_PARA); is_para_html(engine, yylhsminor.yy0); }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
- case 25: /* block ::= setext_1 */
+ case 26: /* block ::= setext_1 */
{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_SETEXT_1); if (!(engine->extensions & EXT_NO_LABELS)) stack_push(engine->header_stack, yylhsminor.yy0); }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
- case 26: /* block ::= setext_2 */
+ case 27: /* block ::= setext_2 */
{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_SETEXT_2); if (!(engine->extensions & EXT_NO_LABELS)) stack_push(engine->header_stack, yylhsminor.yy0); }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
- case 27: /* block ::= table */
+ case 28: /* block ::= table */
{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_TABLE); }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
- case 28: /* chunk ::= chunk chunk_line */
- case 29: /* nested_chunks ::= nested_chunks nested_chunk */ yytestcase(yyruleno==29);
- case 32: /* ext_chunk ::= chunk nested_chunks */ yytestcase(yyruleno==32);
- case 33: /* opt_ext_chunk ::= chunk nested_chunks */ yytestcase(yyruleno==33);
- case 34: /* blockquote ::= blockquote quote_line */ yytestcase(yyruleno==34);
- case 35: /* def_citation ::= LINE_DEF_CITATION tail */ yytestcase(yyruleno==35);
- case 36: /* def_footnote ::= LINE_DEF_FOOTNOTE tail */ yytestcase(yyruleno==36);
- case 37: /* def_link ::= LINE_DEF_LINK chunk */ yytestcase(yyruleno==37);
- case 39: /* defs ::= defs def */ yytestcase(yyruleno==39);
- case 42: /* empty ::= empty LINE_EMPTY */ yytestcase(yyruleno==42);
- case 46: /* fenced_3 ::= fenced_3 fenced_line */ yytestcase(yyruleno==46);
- case 49: /* fenced_4 ::= fenced_4 fenced_line */ yytestcase(yyruleno==49);
- case 50: /* fenced_4 ::= fenced_4 LINE_FENCE_BACKTICK_3 */ yytestcase(yyruleno==50);
- case 51: /* fenced_4 ::= fenced_4 LINE_FENCE_BACKTICK_START_3 */ yytestcase(yyruleno==51);
- case 53: /* fenced_5 ::= fenced_5 fenced_line */ yytestcase(yyruleno==53);
- case 54: /* fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_3 */ yytestcase(yyruleno==54);
- case 55: /* fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_START_3 */ yytestcase(yyruleno==55);
- case 56: /* fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_4 */ yytestcase(yyruleno==56);
- case 57: /* fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_START_4 */ yytestcase(yyruleno==57);
- case 58: /* html_block ::= html_block html_line */ yytestcase(yyruleno==58);
- case 59: /* indented_code ::= indented_code indented_line */ yytestcase(yyruleno==59);
- case 60: /* indented_code ::= indented_code LINE_EMPTY */ yytestcase(yyruleno==60);
- case 61: /* list_bullet ::= list_bullet item_bullet */ yytestcase(yyruleno==61);
- case 66: /* list_enum ::= list_enum item_enum */ yytestcase(yyruleno==66);
- case 71: /* meta_block ::= meta_block meta_line */ yytestcase(yyruleno==71);
- case 72: /* para ::= LINE_PLAIN chunk */ yytestcase(yyruleno==72);
- case 73: /* setext_1 ::= para LINE_SETEXT_1 */ yytestcase(yyruleno==73);
- case 74: /* setext_2 ::= para LINE_SETEXT_2 */ yytestcase(yyruleno==74);
- case 75: /* table ::= table_header table_body */ yytestcase(yyruleno==75);
- case 77: /* header_rows ::= header_rows LINE_TABLE */ yytestcase(yyruleno==77);
- case 78: /* table_body ::= table_body table_section */ yytestcase(yyruleno==78);
- case 81: /* all_rows ::= all_rows row */ yytestcase(yyruleno==81);
+ case 29: /* chunk ::= chunk chunk_line */
+ case 30: /* nested_chunks ::= nested_chunks nested_chunk */ yytestcase(yyruleno==30);
+ case 33: /* ext_chunk ::= chunk nested_chunks */ yytestcase(yyruleno==33);
+ case 34: /* opt_ext_chunk ::= chunk nested_chunks */ yytestcase(yyruleno==34);
+ case 35: /* blockquote ::= blockquote quote_line */ yytestcase(yyruleno==35);
+ case 36: /* def_citation ::= LINE_DEF_CITATION tail */ yytestcase(yyruleno==36);
+ case 37: /* def_footnote ::= LINE_DEF_FOOTNOTE tail */ yytestcase(yyruleno==37);
+ case 38: /* def_glossary ::= LINE_DEF_GLOSSARY tail */ yytestcase(yyruleno==38);
+ case 39: /* def_link ::= LINE_DEF_LINK chunk */ yytestcase(yyruleno==39);
+ case 41: /* defs ::= defs def */ yytestcase(yyruleno==41);
+ case 44: /* empty ::= empty LINE_EMPTY */ yytestcase(yyruleno==44);
+ case 48: /* fenced_3 ::= fenced_3 fenced_line */ yytestcase(yyruleno==48);
+ case 51: /* fenced_4 ::= fenced_4 fenced_line */ yytestcase(yyruleno==51);
+ case 52: /* fenced_4 ::= fenced_4 LINE_FENCE_BACKTICK_3 */ yytestcase(yyruleno==52);
+ case 53: /* fenced_4 ::= fenced_4 LINE_FENCE_BACKTICK_START_3 */ yytestcase(yyruleno==53);
+ case 55: /* fenced_5 ::= fenced_5 fenced_line */ yytestcase(yyruleno==55);
+ case 56: /* fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_3 */ yytestcase(yyruleno==56);
+ case 57: /* fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_START_3 */ yytestcase(yyruleno==57);
+ case 58: /* fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_4 */ yytestcase(yyruleno==58);
+ case 59: /* fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_START_4 */ yytestcase(yyruleno==59);
+ case 60: /* html_block ::= html_block html_line */ yytestcase(yyruleno==60);
+ case 61: /* indented_code ::= indented_code indented_line */ yytestcase(yyruleno==61);
+ case 62: /* indented_code ::= indented_code LINE_EMPTY */ yytestcase(yyruleno==62);
+ case 63: /* list_bullet ::= list_bullet item_bullet */ yytestcase(yyruleno==63);
+ case 68: /* list_enum ::= list_enum item_enum */ yytestcase(yyruleno==68);
+ case 73: /* meta_block ::= meta_block meta_line */ yytestcase(yyruleno==73);
+ case 74: /* para ::= LINE_PLAIN chunk */ yytestcase(yyruleno==74);
+ case 75: /* setext_1 ::= para LINE_SETEXT_1 */ yytestcase(yyruleno==75);
+ case 76: /* setext_2 ::= para LINE_SETEXT_2 */ yytestcase(yyruleno==76);
+ case 77: /* table ::= table_header table_body */ yytestcase(yyruleno==77);
+ case 79: /* header_rows ::= header_rows LINE_TABLE */ yytestcase(yyruleno==79);
+ case 80: /* table_body ::= table_body table_section */ yytestcase(yyruleno==80);
+ case 83: /* all_rows ::= all_rows row */ yytestcase(yyruleno==83);
{ yylhsminor.yy0 = yymsp[-1].minor.yy0; token_chain_append(yymsp[-1].minor.yy0, yymsp[0].minor.yy0); }
yymsp[-1].minor.yy0 = yylhsminor.yy0;
break;
- case 30: /* nested_chunk ::= empty indented_line chunk */
+ case 31: /* nested_chunk ::= empty indented_line chunk */
{ yylhsminor.yy0 = yymsp[-2].minor.yy0; token_chain_append(yymsp[-2].minor.yy0, yymsp[-1].minor.yy0); token_chain_append(yymsp[-2].minor.yy0, yymsp[0].minor.yy0); yymsp[-1].minor.yy0->type = LINE_CONTINUATION; }
yymsp[-2].minor.yy0 = yylhsminor.yy0;
break;
- case 31: /* nested_chunk ::= empty indented_line */
+ case 32: /* nested_chunk ::= empty indented_line */
{ yylhsminor.yy0 = yymsp[-1].minor.yy0; token_chain_append(yymsp[-1].minor.yy0, yymsp[0].minor.yy0); yymsp[0].minor.yy0->type = LINE_CONTINUATION; }
yymsp[-1].minor.yy0 = yylhsminor.yy0;
break;
- case 38: /* definition_block ::= para defs */
+ case 40: /* definition_block ::= para defs */
{ yylhsminor.yy0 = yymsp[-1].minor.yy0; token_chain_append(yymsp[-1].minor.yy0, yymsp[0].minor.yy0); yymsp[-1].minor.yy0->type = BLOCK_TERM; }
yymsp[-1].minor.yy0 = yylhsminor.yy0;
break;
- case 40: /* def ::= LINE_DEFINITION tail */
+ case 42: /* def ::= LINE_DEFINITION tail */
{ yylhsminor.yy0 = token_new_parent(yymsp[-1].minor.yy0, BLOCK_DEFINITION); token_chain_append(yymsp[-1].minor.yy0, yymsp[0].minor.yy0); recursive_parse_indent(engine, yylhsminor.yy0); }
yymsp[-1].minor.yy0 = yylhsminor.yy0;
break;
- case 41: /* def ::= LINE_DEFINITION */
+ case 43: /* def ::= LINE_DEFINITION */
{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_DEFINITION); }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
- case 43: /* fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_3 */
- case 44: /* fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_4 */ yytestcase(yyruleno==44);
- case 45: /* fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_5 */ yytestcase(yyruleno==45);
- case 47: /* fenced_block ::= fenced_4 LINE_FENCE_BACKTICK_4 */ yytestcase(yyruleno==47);
- case 48: /* fenced_block ::= fenced_4 LINE_FENCE_BACKTICK_5 */ yytestcase(yyruleno==48);
- case 52: /* fenced_block ::= fenced_5 LINE_FENCE_BACKTICK_5 */ yytestcase(yyruleno==52);
+ case 45: /* fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_3 */
+ case 46: /* fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_4 */ yytestcase(yyruleno==46);
+ case 47: /* fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_5 */ yytestcase(yyruleno==47);
+ case 49: /* fenced_block ::= fenced_4 LINE_FENCE_BACKTICK_4 */ yytestcase(yyruleno==49);
+ case 50: /* fenced_block ::= fenced_4 LINE_FENCE_BACKTICK_5 */ yytestcase(yyruleno==50);
+ case 54: /* fenced_block ::= fenced_5 LINE_FENCE_BACKTICK_5 */ yytestcase(yyruleno==54);
{ yylhsminor.yy0 = yymsp[-1].minor.yy0; token_chain_append(yymsp[-1].minor.yy0, yymsp[0].minor.yy0); yymsp[0].minor.yy0->child->type = CODE_FENCE; }
yymsp[-1].minor.yy0 = yylhsminor.yy0;
break;
- case 62: /* item_bullet ::= LINE_LIST_BULLETED ext_chunk */
- case 64: /* item_bullet ::= LINE_LIST_BULLETED nested_chunks */ yytestcase(yyruleno==64);
- case 67: /* item_enum ::= LINE_LIST_ENUMERATED ext_chunk */ yytestcase(yyruleno==67);
- case 69: /* item_enum ::= LINE_LIST_ENUMERATED nested_chunks */ yytestcase(yyruleno==69);
+ case 64: /* item_bullet ::= LINE_LIST_BULLETED ext_chunk */
+ case 66: /* item_bullet ::= LINE_LIST_BULLETED nested_chunks */ yytestcase(yyruleno==66);
+ case 69: /* item_enum ::= LINE_LIST_ENUMERATED ext_chunk */ yytestcase(yyruleno==69);
+ case 71: /* item_enum ::= LINE_LIST_ENUMERATED nested_chunks */ yytestcase(yyruleno==71);
{ yylhsminor.yy0 = token_new_parent(yymsp[-1].minor.yy0, BLOCK_LIST_ITEM); token_chain_append(yymsp[-1].minor.yy0, yymsp[0].minor.yy0); recursive_parse_list_item(engine, yylhsminor.yy0); }
yymsp[-1].minor.yy0 = yylhsminor.yy0;
break;
- case 63: /* item_bullet ::= LINE_LIST_BULLETED chunk */
- case 68: /* item_enum ::= LINE_LIST_ENUMERATED chunk */ yytestcase(yyruleno==68);
+ case 65: /* item_bullet ::= LINE_LIST_BULLETED chunk */
+ case 70: /* item_enum ::= LINE_LIST_ENUMERATED chunk */ yytestcase(yyruleno==70);
{ yylhsminor.yy0 = token_new_parent(yymsp[-1].minor.yy0, BLOCK_LIST_ITEM_TIGHT); token_chain_append(yymsp[-1].minor.yy0, yymsp[0].minor.yy0); recursive_parse_list_item(engine, yylhsminor.yy0); }
yymsp[-1].minor.yy0 = yylhsminor.yy0;
break;
- case 65: /* item_bullet ::= LINE_LIST_BULLETED */
- case 70: /* item_enum ::= LINE_LIST_ENUMERATED */ yytestcase(yyruleno==70);
+ case 67: /* item_bullet ::= LINE_LIST_BULLETED */
+ case 72: /* item_enum ::= LINE_LIST_ENUMERATED */ yytestcase(yyruleno==72);
{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_LIST_ITEM_TIGHT); }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
- case 76: /* table_header ::= header_rows LINE_TABLE_SEPARATOR */
+ case 78: /* table_header ::= header_rows LINE_TABLE_SEPARATOR */
{ 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 79: /* table_section ::= all_rows LINE_EMPTY */
+ case 81: /* 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 80: /* table_section ::= all_rows */
+ case 82: /* table_section ::= all_rows */
{ yylhsminor.yy0 = token_new_parent(yymsp[0].minor.yy0, BLOCK_TABLE_SECTION); }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
- case 82: /* para ::= all_rows */
+ case 84: /* para ::= all_rows */
{ yylhsminor.yy0 = yymsp[0].minor.yy0; }
yymsp[0].minor.yy0 = yylhsminor.yy0;
break;
default:
- /* (83) chunk ::= chunk_line (OPTIMIZED OUT) */ assert(yyruleno!=83);
- /* (84) chunk_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==84);
- /* (85) nested_chunks ::= nested_chunk (OPTIMIZED OUT) */ assert(yyruleno!=85);
- /* (86) nested_chunk ::= empty */ yytestcase(yyruleno==86);
- /* (87) indented_line ::= LINE_INDENTED_TAB */ yytestcase(yyruleno==87);
- /* (88) indented_line ::= LINE_INDENTED_SPACE */ yytestcase(yyruleno==88);
- /* (89) opt_ext_chunk ::= chunk */ yytestcase(yyruleno==89);
- /* (90) tail ::= opt_ext_chunk (OPTIMIZED OUT) */ assert(yyruleno!=90);
- /* (91) tail ::= nested_chunks */ yytestcase(yyruleno==91);
- /* (92) blockquote ::= LINE_BLOCKQUOTE */ yytestcase(yyruleno==92);
- /* (93) quote_line ::= LINE_BLOCKQUOTE */ yytestcase(yyruleno==93);
- /* (94) quote_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==94);
- /* (95) def_citation ::= LINE_DEF_CITATION */ yytestcase(yyruleno==95);
- /* (96) def_footnote ::= LINE_DEF_FOOTNOTE */ yytestcase(yyruleno==96);
- /* (97) def_link ::= LINE_DEF_LINK */ yytestcase(yyruleno==97);
- /* (98) def_abbreviation ::= LINE_DEF_ABBREVIATION */ yytestcase(yyruleno==98);
- /* (99) defs ::= def (OPTIMIZED OUT) */ assert(yyruleno!=99);
- /* (100) empty ::= LINE_EMPTY */ yytestcase(yyruleno==100);
- /* (101) fenced_block ::= fenced_3 */ yytestcase(yyruleno==101);
- /* (102) fenced_3 ::= LINE_FENCE_BACKTICK_3 */ yytestcase(yyruleno==102);
- /* (103) fenced_3 ::= LINE_FENCE_BACKTICK_START_3 */ yytestcase(yyruleno==103);
- /* (104) fenced_block ::= fenced_4 */ yytestcase(yyruleno==104);
- /* (105) fenced_4 ::= LINE_FENCE_BACKTICK_4 */ yytestcase(yyruleno==105);
- /* (106) fenced_4 ::= LINE_FENCE_BACKTICK_START_4 */ yytestcase(yyruleno==106);
- /* (107) fenced_block ::= fenced_5 */ yytestcase(yyruleno==107);
- /* (108) fenced_5 ::= LINE_FENCE_BACKTICK_5 */ yytestcase(yyruleno==108);
- /* (109) fenced_5 ::= LINE_FENCE_BACKTICK_START_5 */ yytestcase(yyruleno==109);
- /* (110) fenced_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==110);
- /* (111) fenced_line ::= LINE_EMPTY */ yytestcase(yyruleno==111);
- /* (112) fenced_line ::= LINE_SETEXT_1 */ yytestcase(yyruleno==112);
- /* (113) fenced_line ::= LINE_SETEXT_2 */ yytestcase(yyruleno==113);
- /* (114) html_block ::= LINE_HTML */ yytestcase(yyruleno==114);
- /* (115) html_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==115);
- /* (116) html_line ::= LINE_HTML */ yytestcase(yyruleno==116);
- /* (117) indented_code ::= indented_line (OPTIMIZED OUT) */ assert(yyruleno!=117);
- /* (118) list_bullet ::= item_bullet (OPTIMIZED OUT) */ assert(yyruleno!=118);
- /* (119) list_enum ::= item_enum (OPTIMIZED OUT) */ assert(yyruleno!=119);
- /* (120) meta_block ::= LINE_META */ yytestcase(yyruleno==120);
- /* (121) meta_line ::= LINE_META */ yytestcase(yyruleno==121);
- /* (122) meta_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==122);
- /* (123) para ::= LINE_PLAIN */ yytestcase(yyruleno==123);
- /* (124) table ::= table_header */ yytestcase(yyruleno==124);
- /* (125) header_rows ::= LINE_TABLE */ yytestcase(yyruleno==125);
- /* (126) table_body ::= table_section (OPTIMIZED OUT) */ assert(yyruleno!=126);
- /* (127) all_rows ::= row (OPTIMIZED OUT) */ assert(yyruleno!=127);
- /* (128) row ::= header_rows */ yytestcase(yyruleno==128);
- /* (129) row ::= LINE_TABLE_SEPARATOR */ yytestcase(yyruleno==129);
- /* (130) para ::= defs */ yytestcase(yyruleno==130);
+ /* (85) chunk ::= chunk_line (OPTIMIZED OUT) */ assert(yyruleno!=85);
+ /* (86) chunk_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==86);
+ /* (87) nested_chunks ::= nested_chunk (OPTIMIZED OUT) */ assert(yyruleno!=87);
+ /* (88) nested_chunk ::= empty */ yytestcase(yyruleno==88);
+ /* (89) indented_line ::= LINE_INDENTED_TAB */ yytestcase(yyruleno==89);
+ /* (90) indented_line ::= LINE_INDENTED_SPACE */ yytestcase(yyruleno==90);
+ /* (91) opt_ext_chunk ::= chunk */ yytestcase(yyruleno==91);
+ /* (92) tail ::= opt_ext_chunk (OPTIMIZED OUT) */ assert(yyruleno!=92);
+ /* (93) tail ::= nested_chunks */ yytestcase(yyruleno==93);
+ /* (94) blockquote ::= LINE_BLOCKQUOTE */ yytestcase(yyruleno==94);
+ /* (95) quote_line ::= LINE_BLOCKQUOTE */ yytestcase(yyruleno==95);
+ /* (96) quote_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==96);
+ /* (97) def_citation ::= LINE_DEF_CITATION */ yytestcase(yyruleno==97);
+ /* (98) def_footnote ::= LINE_DEF_FOOTNOTE */ yytestcase(yyruleno==98);
+ /* (99) def_glossary ::= LINE_DEF_GLOSSARY */ yytestcase(yyruleno==99);
+ /* (100) def_link ::= LINE_DEF_LINK */ yytestcase(yyruleno==100);
+ /* (101) def_abbreviation ::= LINE_DEF_ABBREVIATION */ yytestcase(yyruleno==101);
+ /* (102) defs ::= def (OPTIMIZED OUT) */ assert(yyruleno!=102);
+ /* (103) empty ::= LINE_EMPTY */ yytestcase(yyruleno==103);
+ /* (104) fenced_block ::= fenced_3 */ yytestcase(yyruleno==104);
+ /* (105) fenced_3 ::= LINE_FENCE_BACKTICK_3 */ yytestcase(yyruleno==105);
+ /* (106) fenced_3 ::= LINE_FENCE_BACKTICK_START_3 */ yytestcase(yyruleno==106);
+ /* (107) fenced_block ::= fenced_4 */ yytestcase(yyruleno==107);
+ /* (108) fenced_4 ::= LINE_FENCE_BACKTICK_4 */ yytestcase(yyruleno==108);
+ /* (109) fenced_4 ::= LINE_FENCE_BACKTICK_START_4 */ yytestcase(yyruleno==109);
+ /* (110) fenced_block ::= fenced_5 */ yytestcase(yyruleno==110);
+ /* (111) fenced_5 ::= LINE_FENCE_BACKTICK_5 */ yytestcase(yyruleno==111);
+ /* (112) fenced_5 ::= LINE_FENCE_BACKTICK_START_5 */ yytestcase(yyruleno==112);
+ /* (113) fenced_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==113);
+ /* (114) fenced_line ::= LINE_EMPTY */ yytestcase(yyruleno==114);
+ /* (115) fenced_line ::= LINE_SETEXT_1 */ yytestcase(yyruleno==115);
+ /* (116) fenced_line ::= LINE_SETEXT_2 */ yytestcase(yyruleno==116);
+ /* (117) html_block ::= LINE_HTML */ yytestcase(yyruleno==117);
+ /* (118) html_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==118);
+ /* (119) html_line ::= LINE_HTML */ yytestcase(yyruleno==119);
+ /* (120) indented_code ::= indented_line (OPTIMIZED OUT) */ assert(yyruleno!=120);
+ /* (121) list_bullet ::= item_bullet (OPTIMIZED OUT) */ assert(yyruleno!=121);
+ /* (122) list_enum ::= item_enum (OPTIMIZED OUT) */ assert(yyruleno!=122);
+ /* (123) meta_block ::= LINE_META */ yytestcase(yyruleno==123);
+ /* (124) meta_line ::= LINE_META */ yytestcase(yyruleno==124);
+ /* (125) meta_line ::= LINE_CONTINUATION */ yytestcase(yyruleno==125);
+ /* (126) para ::= LINE_PLAIN */ yytestcase(yyruleno==126);
+ /* (127) table ::= table_header */ yytestcase(yyruleno==127);
+ /* (128) header_rows ::= LINE_TABLE */ yytestcase(yyruleno==128);
+ /* (129) table_body ::= table_section (OPTIMIZED OUT) */ assert(yyruleno!=129);
+ /* (130) all_rows ::= row (OPTIMIZED OUT) */ assert(yyruleno!=130);
+ /* (131) row ::= header_rows */ yytestcase(yyruleno==131);
+ /* (132) row ::= LINE_TABLE_SEPARATOR */ yytestcase(yyruleno==132);
+ /* (133) para ::= defs */ yytestcase(yyruleno==133);
break;
/********** End reduce actions ************************************************/
};
#define LINE_BLOCKQUOTE 17
#define LINE_LIST_BULLETED 18
#define LINE_LIST_ENUMERATED 19
-#define LINE_DEF_CITATION 20
-#define LINE_DEF_FOOTNOTE 21
-#define LINE_DEF_LINK 22
-#define LINE_FENCE_BACKTICK 23
-#define LINE_FENCE_BACKTICK_START 24
-#define LINE_TOC 25
-#define LINE_DEF_ABBREVIATION 26
-#define LINE_DEFINITION 27
-#define LINE_EMPTY 28
-#define LINE_FENCE_BACKTICK_3 29
-#define LINE_FENCE_BACKTICK_4 30
-#define LINE_FENCE_BACKTICK_5 31
-#define LINE_FENCE_BACKTICK_START_3 32
-#define LINE_FENCE_BACKTICK_START_4 33
-#define LINE_FENCE_BACKTICK_START_5 34
-#define LINE_META 35
+#define LINE_DEF_ABBREVIATION 20
+#define LINE_DEF_CITATION 21
+#define LINE_DEF_FOOTNOTE 22
+#define LINE_DEF_GLOSSARY 23
+#define LINE_DEF_LINK 24
+#define LINE_FENCE_BACKTICK 25
+#define LINE_FENCE_BACKTICK_START 26
+#define LINE_TOC 27
+#define LINE_DEFINITION 28
+#define LINE_EMPTY 29
+#define LINE_FENCE_BACKTICK_3 30
+#define LINE_FENCE_BACKTICK_4 31
+#define LINE_FENCE_BACKTICK_5 32
+#define LINE_FENCE_BACKTICK_START_3 33
+#define LINE_FENCE_BACKTICK_START_4 34
+#define LINE_FENCE_BACKTICK_START_5 35
+#define LINE_META 36
block ::= * def_abbreviation
block ::= * def_citation
block ::= * def_footnote
+ block ::= * def_glossary
block ::= * def_link
block ::= * definition_block
block ::= * empty
def_citation ::= * LINE_DEF_CITATION
def_footnote ::= * LINE_DEF_FOOTNOTE tail
def_footnote ::= * LINE_DEF_FOOTNOTE
+ def_glossary ::= * LINE_DEF_GLOSSARY tail
+ def_glossary ::= * LINE_DEF_GLOSSARY
def_link ::= * LINE_DEF_LINK chunk
def_link ::= * LINE_DEF_LINK
def_abbreviation ::= * LINE_DEF_ABBREVIATION
para ::= * defs
LINE_HR shift-reduce 9 block ::= LINE_HR
- LINE_PLAIN shift 15
- LINE_TABLE_SEPARATOR shift-reduce 129 row ::= LINE_TABLE_SEPARATOR
- LINE_INDENTED_TAB shift-reduce 87 indented_line ::= LINE_INDENTED_TAB
- LINE_INDENTED_SPACE shift-reduce 88 indented_line ::= LINE_INDENTED_SPACE
- LINE_TABLE shift-reduce 125 header_rows ::= LINE_TABLE
- LINE_HTML shift-reduce 114 html_block ::= LINE_HTML
+ LINE_PLAIN shift 16
+ LINE_TABLE_SEPARATOR shift-reduce 132 row ::= LINE_TABLE_SEPARATOR
+ LINE_INDENTED_TAB shift-reduce 89 indented_line ::= LINE_INDENTED_TAB
+ LINE_INDENTED_SPACE shift-reduce 90 indented_line ::= LINE_INDENTED_SPACE
+ LINE_TABLE shift-reduce 128 header_rows ::= LINE_TABLE
+ LINE_HTML shift-reduce 117 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 92 blockquote ::= LINE_BLOCKQUOTE
- LINE_LIST_BULLETED shift 6
- LINE_LIST_ENUMERATED shift 5
- LINE_DEF_CITATION shift 3
- LINE_DEF_FOOTNOTE shift 2
- LINE_DEF_LINK shift 16
+ LINE_BLOCKQUOTE shift-reduce 94 blockquote ::= LINE_BLOCKQUOTE
+ LINE_LIST_BULLETED shift 7
+ LINE_LIST_ENUMERATED shift 6
+ LINE_DEF_ABBREVIATION shift-reduce 101 def_abbreviation ::= LINE_DEF_ABBREVIATION
+ LINE_DEF_CITATION shift 4
+ LINE_DEF_FOOTNOTE shift 3
+ LINE_DEF_GLOSSARY shift 2
+ LINE_DEF_LINK shift 17
LINE_TOC shift-reduce 10 block ::= LINE_TOC
- LINE_DEF_ABBREVIATION shift-reduce 98 def_abbreviation ::= LINE_DEF_ABBREVIATION
- LINE_DEFINITION shift 4
- LINE_EMPTY shift-reduce 100 empty ::= LINE_EMPTY
- LINE_FENCE_BACKTICK_3 shift-reduce 102 fenced_3 ::= LINE_FENCE_BACKTICK_3
- LINE_FENCE_BACKTICK_4 shift-reduce 105 fenced_4 ::= LINE_FENCE_BACKTICK_4
- LINE_FENCE_BACKTICK_5 shift-reduce 108 fenced_5 ::= LINE_FENCE_BACKTICK_5
- LINE_FENCE_BACKTICK_START_3 shift-reduce 103 fenced_3 ::= LINE_FENCE_BACKTICK_START_3
- LINE_FENCE_BACKTICK_START_4 shift-reduce 106 fenced_4 ::= LINE_FENCE_BACKTICK_START_4
- LINE_FENCE_BACKTICK_START_5 shift-reduce 109 fenced_5 ::= LINE_FENCE_BACKTICK_START_5
- LINE_META shift-reduce 120 meta_block ::= LINE_META
+ LINE_DEFINITION shift 5
+ LINE_EMPTY shift-reduce 103 empty ::= LINE_EMPTY
+ LINE_FENCE_BACKTICK_3 shift-reduce 105 fenced_3 ::= LINE_FENCE_BACKTICK_3
+ LINE_FENCE_BACKTICK_4 shift-reduce 108 fenced_4 ::= LINE_FENCE_BACKTICK_4
+ LINE_FENCE_BACKTICK_5 shift-reduce 111 fenced_5 ::= LINE_FENCE_BACKTICK_5
+ LINE_FENCE_BACKTICK_START_3 shift-reduce 106 fenced_3 ::= LINE_FENCE_BACKTICK_START_3
+ LINE_FENCE_BACKTICK_START_4 shift-reduce 109 fenced_4 ::= LINE_FENCE_BACKTICK_START_4
+ LINE_FENCE_BACKTICK_START_5 shift-reduce 112 fenced_5 ::= LINE_FENCE_BACKTICK_START_5
+ LINE_META shift-reduce 123 meta_block ::= LINE_META
doc accept
blocks shift 1
block shift-reduce 2 blocks ::= block
- blockquote shift 30
+ blockquote shift 31
def_abbreviation shift-reduce 12 block ::= def_abbreviation
def_citation shift-reduce 13 block ::= def_citation
def_footnote shift-reduce 14 block ::= def_footnote
- def_link shift-reduce 15 block ::= def_link
- definition_block shift-reduce 16 block ::= definition_block
- empty shift 40
- fenced_block shift-reduce 18 block ::= fenced_block
- html_block shift 29
- indented_code shift 27
- list_bullet shift 37
- list_enum shift 35
- meta_block shift 28
- para shift 13
- setext_1 shift-reduce 25 block ::= setext_1
- setext_2 shift-reduce 26 block ::= setext_2
- table shift-reduce 27 block ::= table
- indented_line shift 27 /* because indented_line==indented_code */
- defs shift 32
- def shift 32 /* because def==defs */
- fenced_3 shift 25
- fenced_4 shift 24
- fenced_5 shift 23
- item_bullet shift 37 /* because item_bullet==list_bullet */
- item_enum shift 35 /* because item_enum==list_enum */
- table_header shift 7
- header_rows shift 38
- all_rows shift 14
- row shift 14 /* because row==all_rows */
+ def_glossary shift-reduce 15 block ::= def_glossary
+ def_link shift-reduce 16 block ::= def_link
+ definition_block shift-reduce 17 block ::= definition_block
+ empty shift 41
+ fenced_block shift-reduce 19 block ::= fenced_block
+ html_block shift 30
+ indented_code shift 28
+ list_bullet shift 38
+ list_enum shift 36
+ meta_block shift 29
+ para shift 14
+ setext_1 shift-reduce 26 block ::= setext_1
+ setext_2 shift-reduce 27 block ::= setext_2
+ table shift-reduce 28 block ::= table
+ indented_line shift 28 /* because indented_line==indented_code */
+ defs shift 33
+ def shift 33 /* because def==defs */
+ fenced_3 shift 26
+ fenced_4 shift 25
+ fenced_5 shift 24
+ item_bullet shift 38 /* because item_bullet==list_bullet */
+ item_enum shift 36 /* because item_enum==list_enum */
+ table_header shift 8
+ header_rows shift 39
+ all_rows shift 15
+ row shift 15 /* because row==all_rows */
State 1:
(0) doc ::= blocks *
block ::= * def_abbreviation
block ::= * def_citation
block ::= * def_footnote
+ block ::= * def_glossary
block ::= * def_link
block ::= * definition_block
block ::= * empty
def_citation ::= * LINE_DEF_CITATION
def_footnote ::= * LINE_DEF_FOOTNOTE tail
def_footnote ::= * LINE_DEF_FOOTNOTE
+ def_glossary ::= * LINE_DEF_GLOSSARY tail
+ def_glossary ::= * LINE_DEF_GLOSSARY
def_link ::= * LINE_DEF_LINK chunk
def_link ::= * LINE_DEF_LINK
def_abbreviation ::= * LINE_DEF_ABBREVIATION
$ reduce 0 doc ::= blocks
LINE_HR shift-reduce 9 block ::= LINE_HR
- LINE_PLAIN shift 15
- LINE_TABLE_SEPARATOR shift-reduce 129 row ::= LINE_TABLE_SEPARATOR
- LINE_INDENTED_TAB shift-reduce 87 indented_line ::= LINE_INDENTED_TAB
- LINE_INDENTED_SPACE shift-reduce 88 indented_line ::= LINE_INDENTED_SPACE
- LINE_TABLE shift-reduce 125 header_rows ::= LINE_TABLE
- LINE_HTML shift-reduce 114 html_block ::= LINE_HTML
+ LINE_PLAIN shift 16
+ LINE_TABLE_SEPARATOR shift-reduce 132 row ::= LINE_TABLE_SEPARATOR
+ LINE_INDENTED_TAB shift-reduce 89 indented_line ::= LINE_INDENTED_TAB
+ LINE_INDENTED_SPACE shift-reduce 90 indented_line ::= LINE_INDENTED_SPACE
+ LINE_TABLE shift-reduce 128 header_rows ::= LINE_TABLE
+ LINE_HTML shift-reduce 117 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 92 blockquote ::= LINE_BLOCKQUOTE
- LINE_LIST_BULLETED shift 6
- LINE_LIST_ENUMERATED shift 5
- LINE_DEF_CITATION shift 3
- LINE_DEF_FOOTNOTE shift 2
- LINE_DEF_LINK shift 16
+ LINE_BLOCKQUOTE shift-reduce 94 blockquote ::= LINE_BLOCKQUOTE
+ LINE_LIST_BULLETED shift 7
+ LINE_LIST_ENUMERATED shift 6
+ LINE_DEF_ABBREVIATION shift-reduce 101 def_abbreviation ::= LINE_DEF_ABBREVIATION
+ LINE_DEF_CITATION shift 4
+ LINE_DEF_FOOTNOTE shift 3
+ LINE_DEF_GLOSSARY shift 2
+ LINE_DEF_LINK shift 17
LINE_TOC shift-reduce 10 block ::= LINE_TOC
- LINE_DEF_ABBREVIATION shift-reduce 98 def_abbreviation ::= LINE_DEF_ABBREVIATION
- LINE_DEFINITION shift 4
- LINE_EMPTY shift-reduce 100 empty ::= LINE_EMPTY
- LINE_FENCE_BACKTICK_3 shift-reduce 102 fenced_3 ::= LINE_FENCE_BACKTICK_3
- LINE_FENCE_BACKTICK_4 shift-reduce 105 fenced_4 ::= LINE_FENCE_BACKTICK_4
- LINE_FENCE_BACKTICK_5 shift-reduce 108 fenced_5 ::= LINE_FENCE_BACKTICK_5
- LINE_FENCE_BACKTICK_START_3 shift-reduce 103 fenced_3 ::= LINE_FENCE_BACKTICK_START_3
- LINE_FENCE_BACKTICK_START_4 shift-reduce 106 fenced_4 ::= LINE_FENCE_BACKTICK_START_4
- LINE_FENCE_BACKTICK_START_5 shift-reduce 109 fenced_5 ::= LINE_FENCE_BACKTICK_START_5
- LINE_META shift-reduce 120 meta_block ::= LINE_META
+ LINE_DEFINITION shift 5
+ LINE_EMPTY shift-reduce 103 empty ::= LINE_EMPTY
+ LINE_FENCE_BACKTICK_3 shift-reduce 105 fenced_3 ::= LINE_FENCE_BACKTICK_3
+ LINE_FENCE_BACKTICK_4 shift-reduce 108 fenced_4 ::= LINE_FENCE_BACKTICK_4
+ LINE_FENCE_BACKTICK_5 shift-reduce 111 fenced_5 ::= LINE_FENCE_BACKTICK_5
+ LINE_FENCE_BACKTICK_START_3 shift-reduce 106 fenced_3 ::= LINE_FENCE_BACKTICK_START_3
+ LINE_FENCE_BACKTICK_START_4 shift-reduce 109 fenced_4 ::= LINE_FENCE_BACKTICK_START_4
+ LINE_FENCE_BACKTICK_START_5 shift-reduce 112 fenced_5 ::= LINE_FENCE_BACKTICK_START_5
+ LINE_META shift-reduce 123 meta_block ::= LINE_META
block shift-reduce 1 blocks ::= blocks block
- blockquote shift 30
+ blockquote shift 31
def_abbreviation shift-reduce 12 block ::= def_abbreviation
def_citation shift-reduce 13 block ::= def_citation
def_footnote shift-reduce 14 block ::= def_footnote
- def_link shift-reduce 15 block ::= def_link
- definition_block shift-reduce 16 block ::= definition_block
- empty shift 40
- fenced_block shift-reduce 18 block ::= fenced_block
- html_block shift 29
- indented_code shift 27
- list_bullet shift 37
- list_enum shift 35
- meta_block shift 28
- para shift 13
- setext_1 shift-reduce 25 block ::= setext_1
- setext_2 shift-reduce 26 block ::= setext_2
- table shift-reduce 27 block ::= table
- indented_line shift 27 /* because indented_line==indented_code */
- defs shift 32
- def shift 32 /* because def==defs */
- fenced_3 shift 25
- fenced_4 shift 24
- fenced_5 shift 23
- item_bullet shift 37 /* because item_bullet==list_bullet */
- item_enum shift 35 /* because item_enum==list_enum */
- table_header shift 7
- header_rows shift 38
- all_rows shift 14
- row shift 14 /* because row==all_rows */
+ def_glossary shift-reduce 15 block ::= def_glossary
+ def_link shift-reduce 16 block ::= def_link
+ definition_block shift-reduce 17 block ::= definition_block
+ empty shift 41
+ fenced_block shift-reduce 19 block ::= fenced_block
+ html_block shift 30
+ indented_code shift 28
+ list_bullet shift 38
+ list_enum shift 36
+ meta_block shift 29
+ para shift 14
+ setext_1 shift-reduce 26 block ::= setext_1
+ setext_2 shift-reduce 27 block ::= setext_2
+ table shift-reduce 28 block ::= table
+ indented_line shift 28 /* because indented_line==indented_code */
+ defs shift 33
+ def shift 33 /* because def==defs */
+ fenced_3 shift 26
+ fenced_4 shift 25
+ fenced_5 shift 24
+ item_bullet shift 38 /* because item_bullet==list_bullet */
+ item_enum shift 36 /* because item_enum==list_enum */
+ table_header shift 8
+ header_rows shift 39
+ all_rows shift 15
+ row shift 15 /* because row==all_rows */
State 2:
chunk ::= * chunk chunk_line
opt_ext_chunk ::= * chunk
tail ::= * opt_ext_chunk
tail ::= * nested_chunks
- def_footnote ::= LINE_DEF_FOOTNOTE * tail
- (96) def_footnote ::= LINE_DEF_FOOTNOTE *
+ def_glossary ::= LINE_DEF_GLOSSARY * tail
+ (99) def_glossary ::= LINE_DEF_GLOSSARY *
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- LINE_CONTINUATION shift-reduce 84 chunk_line ::= LINE_CONTINUATION
- LINE_EMPTY shift-reduce 100 empty ::= LINE_EMPTY
- LINE_EMPTY reduce 96 ** Parsing conflict **
- empty shift 26
- chunk shift 9
- chunk_line shift 9 /* because chunk_line==chunk */
- nested_chunks shift 17
- nested_chunk shift 17 /* because nested_chunk==nested_chunks */
- opt_ext_chunk shift-reduce 36 def_footnote ::= LINE_DEF_FOOTNOTE tail /* because opt_ext_chunk==tail */
- tail shift-reduce 36 def_footnote ::= LINE_DEF_FOOTNOTE tail
- {default} reduce 96 def_footnote ::= LINE_DEF_FOOTNOTE
+ LINE_CONTINUATION shift-reduce 86 chunk_line ::= LINE_CONTINUATION
+ LINE_EMPTY shift-reduce 103 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 99 ** Parsing conflict **
+ empty shift 27
+ chunk shift 10
+ chunk_line shift 10 /* because chunk_line==chunk */
+ nested_chunks shift 18
+ nested_chunk shift 18 /* because nested_chunk==nested_chunks */
+ opt_ext_chunk shift-reduce 38 def_glossary ::= LINE_DEF_GLOSSARY tail /* because opt_ext_chunk==tail */
+ tail shift-reduce 38 def_glossary ::= LINE_DEF_GLOSSARY tail
+ {default} reduce 99 def_glossary ::= LINE_DEF_GLOSSARY
State 3:
chunk ::= * chunk chunk_line
opt_ext_chunk ::= * chunk
tail ::= * opt_ext_chunk
tail ::= * nested_chunks
- def_citation ::= LINE_DEF_CITATION * tail
- (95) def_citation ::= LINE_DEF_CITATION *
+ def_footnote ::= LINE_DEF_FOOTNOTE * tail
+ (98) def_footnote ::= LINE_DEF_FOOTNOTE *
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- LINE_CONTINUATION shift-reduce 84 chunk_line ::= LINE_CONTINUATION
- LINE_EMPTY shift-reduce 100 empty ::= LINE_EMPTY
- LINE_EMPTY reduce 95 ** Parsing conflict **
- empty shift 26
- chunk shift 9
- chunk_line shift 9 /* because chunk_line==chunk */
- nested_chunks shift 17
- nested_chunk shift 17 /* because nested_chunk==nested_chunks */
- opt_ext_chunk shift-reduce 35 def_citation ::= LINE_DEF_CITATION tail /* because opt_ext_chunk==tail */
- tail shift-reduce 35 def_citation ::= LINE_DEF_CITATION tail
- {default} reduce 95 def_citation ::= LINE_DEF_CITATION
+ LINE_CONTINUATION shift-reduce 86 chunk_line ::= LINE_CONTINUATION
+ LINE_EMPTY shift-reduce 103 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 98 ** Parsing conflict **
+ empty shift 27
+ chunk shift 10
+ chunk_line shift 10 /* because chunk_line==chunk */
+ nested_chunks shift 18
+ nested_chunk shift 18 /* because nested_chunk==nested_chunks */
+ opt_ext_chunk shift-reduce 37 def_footnote ::= LINE_DEF_FOOTNOTE tail /* because opt_ext_chunk==tail */
+ tail shift-reduce 37 def_footnote ::= LINE_DEF_FOOTNOTE tail
+ {default} reduce 98 def_footnote ::= LINE_DEF_FOOTNOTE
State 4:
chunk ::= * chunk chunk_line
opt_ext_chunk ::= * chunk
tail ::= * opt_ext_chunk
tail ::= * nested_chunks
- def ::= LINE_DEFINITION * tail
- (41) def ::= LINE_DEFINITION *
+ def_citation ::= LINE_DEF_CITATION * tail
+ (97) def_citation ::= LINE_DEF_CITATION *
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- LINE_CONTINUATION shift-reduce 84 chunk_line ::= LINE_CONTINUATION
- LINE_EMPTY shift-reduce 100 empty ::= LINE_EMPTY
- LINE_EMPTY reduce 41 ** Parsing conflict **
- empty shift 26
- chunk shift 9
- chunk_line shift 9 /* because chunk_line==chunk */
- nested_chunks shift 17
- nested_chunk shift 17 /* because nested_chunk==nested_chunks */
- opt_ext_chunk shift-reduce 40 def ::= LINE_DEFINITION tail /* because opt_ext_chunk==tail */
- tail shift-reduce 40 def ::= LINE_DEFINITION tail
- {default} reduce 41 def ::= LINE_DEFINITION
+ LINE_CONTINUATION shift-reduce 86 chunk_line ::= LINE_CONTINUATION
+ LINE_EMPTY shift-reduce 103 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 97 ** Parsing conflict **
+ empty shift 27
+ chunk shift 10
+ chunk_line shift 10 /* because chunk_line==chunk */
+ nested_chunks shift 18
+ nested_chunk shift 18 /* because nested_chunk==nested_chunks */
+ opt_ext_chunk shift-reduce 36 def_citation ::= LINE_DEF_CITATION tail /* because opt_ext_chunk==tail */
+ tail shift-reduce 36 def_citation ::= LINE_DEF_CITATION tail
+ {default} reduce 97 def_citation ::= LINE_DEF_CITATION
State 5:
chunk ::= * chunk chunk_line
nested_chunk ::= * empty indented_line chunk
nested_chunk ::= * empty indented_line
nested_chunk ::= * empty
- ext_chunk ::= * chunk nested_chunks
+ opt_ext_chunk ::= * chunk nested_chunks
+ opt_ext_chunk ::= * chunk
+ tail ::= * opt_ext_chunk
+ tail ::= * nested_chunks
+ def ::= LINE_DEFINITION * tail
+ (43) def ::= LINE_DEFINITION *
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- item_enum ::= LINE_LIST_ENUMERATED * ext_chunk
- item_enum ::= LINE_LIST_ENUMERATED * chunk
- item_enum ::= LINE_LIST_ENUMERATED * nested_chunks
- (70) item_enum ::= LINE_LIST_ENUMERATED *
- LINE_CONTINUATION shift-reduce 84 chunk_line ::= LINE_CONTINUATION
- LINE_EMPTY shift-reduce 100 empty ::= LINE_EMPTY
- LINE_EMPTY reduce 70 ** Parsing conflict **
- empty shift 26
+ LINE_CONTINUATION shift-reduce 86 chunk_line ::= LINE_CONTINUATION
+ LINE_EMPTY shift-reduce 103 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 43 ** Parsing conflict **
+ empty shift 27
chunk shift 10
chunk_line shift 10 /* because chunk_line==chunk */
- nested_chunks shift 19
- nested_chunk shift 19 /* because nested_chunk==nested_chunks */
- ext_chunk shift-reduce 67 item_enum ::= LINE_LIST_ENUMERATED ext_chunk
- {default} reduce 70 item_enum ::= LINE_LIST_ENUMERATED
+ nested_chunks shift 18
+ nested_chunk shift 18 /* because nested_chunk==nested_chunks */
+ opt_ext_chunk shift-reduce 42 def ::= LINE_DEFINITION tail /* because opt_ext_chunk==tail */
+ tail shift-reduce 42 def ::= LINE_DEFINITION tail
+ {default} reduce 43 def ::= LINE_DEFINITION
State 6:
chunk ::= * chunk chunk_line
ext_chunk ::= * chunk nested_chunks
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- item_bullet ::= LINE_LIST_BULLETED * ext_chunk
- item_bullet ::= LINE_LIST_BULLETED * chunk
- item_bullet ::= LINE_LIST_BULLETED * nested_chunks
- (65) item_bullet ::= LINE_LIST_BULLETED *
+ item_enum ::= LINE_LIST_ENUMERATED * ext_chunk
+ item_enum ::= LINE_LIST_ENUMERATED * chunk
+ item_enum ::= LINE_LIST_ENUMERATED * nested_chunks
+ (72) item_enum ::= LINE_LIST_ENUMERATED *
- LINE_CONTINUATION shift-reduce 84 chunk_line ::= LINE_CONTINUATION
- LINE_EMPTY shift-reduce 100 empty ::= LINE_EMPTY
- LINE_EMPTY reduce 65 ** Parsing conflict **
- empty shift 26
+ LINE_CONTINUATION shift-reduce 86 chunk_line ::= LINE_CONTINUATION
+ LINE_EMPTY shift-reduce 103 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 72 ** Parsing conflict **
+ empty shift 27
chunk shift 11
chunk_line shift 11 /* because chunk_line==chunk */
nested_chunks shift 20
nested_chunk shift 20 /* because nested_chunk==nested_chunks */
- ext_chunk shift-reduce 62 item_bullet ::= LINE_LIST_BULLETED ext_chunk
- {default} reduce 65 item_bullet ::= LINE_LIST_BULLETED
+ ext_chunk shift-reduce 69 item_enum ::= LINE_LIST_ENUMERATED ext_chunk
+ {default} reduce 72 item_enum ::= LINE_LIST_ENUMERATED
State 7:
+ chunk ::= * chunk chunk_line
+ chunk ::= * chunk_line
+ chunk_line ::= * LINE_CONTINUATION
+ nested_chunks ::= * nested_chunks nested_chunk
+ nested_chunks ::= * nested_chunk
+ nested_chunk ::= * empty indented_line chunk
+ nested_chunk ::= * empty indented_line
+ nested_chunk ::= * empty
+ ext_chunk ::= * chunk nested_chunks
+ empty ::= * empty LINE_EMPTY
+ empty ::= * LINE_EMPTY
+ item_bullet ::= LINE_LIST_BULLETED * ext_chunk
+ item_bullet ::= LINE_LIST_BULLETED * chunk
+ item_bullet ::= LINE_LIST_BULLETED * nested_chunks
+ (67) item_bullet ::= LINE_LIST_BULLETED *
+
+ LINE_CONTINUATION shift-reduce 86 chunk_line ::= LINE_CONTINUATION
+ LINE_EMPTY shift-reduce 103 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 67 ** Parsing conflict **
+ empty shift 27
+ chunk shift 12
+ chunk_line shift 12 /* because chunk_line==chunk */
+ nested_chunks shift 21
+ nested_chunk shift 21 /* because nested_chunk==nested_chunks */
+ ext_chunk shift-reduce 64 item_bullet ::= LINE_LIST_BULLETED ext_chunk
+ {default} reduce 67 item_bullet ::= LINE_LIST_BULLETED
+
+State 8:
table ::= table_header * table_body
- (124) table ::= table_header *
+ (127) table ::= table_header *
header_rows ::= * header_rows LINE_TABLE
header_rows ::= * LINE_TABLE
table_body ::= * table_body table_section
row ::= * header_rows
row ::= * LINE_TABLE_SEPARATOR
- LINE_TABLE_SEPARATOR shift-reduce 129 row ::= LINE_TABLE_SEPARATOR
- LINE_TABLE_SEPARATOR reduce 124 ** Parsing conflict **
- LINE_TABLE shift-reduce 125 header_rows ::= LINE_TABLE
- LINE_TABLE reduce 124 ** Parsing conflict **
- table_body shift 8
- header_rows shift 39
- table_section shift 8 /* because table_section==table_body */
- all_rows shift 12
- row shift 12 /* because row==all_rows */
- {default} reduce 124 table ::= table_header
+ LINE_TABLE_SEPARATOR shift-reduce 132 row ::= LINE_TABLE_SEPARATOR
+ LINE_TABLE_SEPARATOR reduce 127 ** Parsing conflict **
+ LINE_TABLE shift-reduce 128 header_rows ::= LINE_TABLE
+ LINE_TABLE reduce 127 ** Parsing conflict **
+ table_body shift 9
+ header_rows shift 40
+ table_section shift 9 /* because table_section==table_body */
+ all_rows shift 13
+ row shift 13 /* because row==all_rows */
+ {default} reduce 127 table ::= table_header
-State 8:
- (75) table ::= table_header table_body *
+State 9:
+ (77) table ::= table_header table_body *
header_rows ::= * header_rows LINE_TABLE
header_rows ::= * LINE_TABLE
table_body ::= table_body * table_section
row ::= * header_rows
row ::= * LINE_TABLE_SEPARATOR
- LINE_TABLE_SEPARATOR shift-reduce 129 row ::= LINE_TABLE_SEPARATOR
- LINE_TABLE_SEPARATOR reduce 75 ** Parsing conflict **
- LINE_TABLE shift-reduce 125 header_rows ::= LINE_TABLE
- LINE_TABLE reduce 75 ** Parsing conflict **
- header_rows shift 39
- table_section shift-reduce 78 table_body ::= table_body table_section
- all_rows shift 12
- row shift 12 /* because row==all_rows */
- {default} reduce 75 table ::= table_header table_body
+ LINE_TABLE_SEPARATOR shift-reduce 132 row ::= LINE_TABLE_SEPARATOR
+ LINE_TABLE_SEPARATOR reduce 77 ** Parsing conflict **
+ LINE_TABLE shift-reduce 128 header_rows ::= LINE_TABLE
+ LINE_TABLE reduce 77 ** Parsing conflict **
+ header_rows shift 40
+ table_section shift-reduce 80 table_body ::= table_body table_section
+ all_rows shift 13
+ row shift 13 /* because row==all_rows */
+ {default} reduce 77 table ::= table_header table_body
-State 9:
+State 10:
chunk ::= chunk * chunk_line
chunk_line ::= * LINE_CONTINUATION
nested_chunks ::= * nested_chunks nested_chunk
nested_chunk ::= * empty indented_line
nested_chunk ::= * empty
opt_ext_chunk ::= chunk * nested_chunks
- (89) opt_ext_chunk ::= chunk *
+ (91) opt_ext_chunk ::= chunk *
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- LINE_CONTINUATION shift-reduce 84 chunk_line ::= LINE_CONTINUATION
- LINE_EMPTY shift-reduce 100 empty ::= LINE_EMPTY
- LINE_EMPTY reduce 89 ** Parsing conflict **
- empty shift 26
- chunk_line shift-reduce 28 chunk ::= chunk chunk_line
- nested_chunks shift 18
- nested_chunk shift 18 /* because nested_chunk==nested_chunks */
- {default} reduce 89 opt_ext_chunk ::= chunk
+ LINE_CONTINUATION shift-reduce 86 chunk_line ::= LINE_CONTINUATION
+ LINE_EMPTY shift-reduce 103 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 91 ** Parsing conflict **
+ empty shift 27
+ chunk_line shift-reduce 29 chunk ::= chunk chunk_line
+ nested_chunks shift 19
+ nested_chunk shift 19 /* because nested_chunk==nested_chunks */
+ {default} reduce 91 opt_ext_chunk ::= chunk
-State 10:
+State 11:
chunk ::= chunk * chunk_line
chunk_line ::= * LINE_CONTINUATION
nested_chunks ::= * nested_chunks nested_chunk
ext_chunk ::= chunk * nested_chunks
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- (68) item_enum ::= LINE_LIST_ENUMERATED chunk *
+ (70) item_enum ::= LINE_LIST_ENUMERATED chunk *
- LINE_CONTINUATION shift-reduce 84 chunk_line ::= LINE_CONTINUATION
- LINE_EMPTY shift-reduce 100 empty ::= LINE_EMPTY
- LINE_EMPTY reduce 68 ** Parsing conflict **
- empty shift 26
- chunk_line shift-reduce 28 chunk ::= chunk chunk_line
- nested_chunks shift 22
- nested_chunk shift 22 /* because nested_chunk==nested_chunks */
- {default} reduce 68 item_enum ::= LINE_LIST_ENUMERATED chunk
+ LINE_CONTINUATION shift-reduce 86 chunk_line ::= LINE_CONTINUATION
+ LINE_EMPTY shift-reduce 103 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 70 ** Parsing conflict **
+ empty shift 27
+ chunk_line shift-reduce 29 chunk ::= chunk chunk_line
+ nested_chunks shift 23
+ nested_chunk shift 23 /* because nested_chunk==nested_chunks */
+ {default} reduce 70 item_enum ::= LINE_LIST_ENUMERATED chunk
-State 11:
+State 12:
chunk ::= chunk * chunk_line
chunk_line ::= * LINE_CONTINUATION
nested_chunks ::= * nested_chunks nested_chunk
ext_chunk ::= chunk * nested_chunks
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- (63) item_bullet ::= LINE_LIST_BULLETED chunk *
+ (65) item_bullet ::= LINE_LIST_BULLETED chunk *
- LINE_CONTINUATION shift-reduce 84 chunk_line ::= LINE_CONTINUATION
- LINE_EMPTY shift-reduce 100 empty ::= LINE_EMPTY
- LINE_EMPTY reduce 63 ** Parsing conflict **
- empty shift 26
- chunk_line shift-reduce 28 chunk ::= chunk chunk_line
- nested_chunks shift 22
- nested_chunk shift 22 /* because nested_chunk==nested_chunks */
- {default} reduce 63 item_bullet ::= LINE_LIST_BULLETED chunk
+ LINE_CONTINUATION shift-reduce 86 chunk_line ::= LINE_CONTINUATION
+ LINE_EMPTY shift-reduce 103 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 65 ** Parsing conflict **
+ empty shift 27
+ chunk_line shift-reduce 29 chunk ::= chunk chunk_line
+ nested_chunks shift 23
+ nested_chunk shift 23 /* because nested_chunk==nested_chunks */
+ {default} reduce 65 item_bullet ::= LINE_LIST_BULLETED chunk
-State 12:
+State 13:
header_rows ::= * header_rows LINE_TABLE
header_rows ::= * LINE_TABLE
table_section ::= all_rows * LINE_EMPTY
- (80) table_section ::= all_rows *
+ (82) table_section ::= all_rows *
all_rows ::= all_rows * row
row ::= * header_rows
row ::= * LINE_TABLE_SEPARATOR
- LINE_TABLE_SEPARATOR shift-reduce 129 row ::= LINE_TABLE_SEPARATOR
- LINE_TABLE_SEPARATOR reduce 80 ** Parsing conflict **
- LINE_TABLE shift-reduce 125 header_rows ::= LINE_TABLE
- LINE_TABLE reduce 80 ** Parsing conflict **
- LINE_EMPTY shift-reduce 79 table_section ::= all_rows LINE_EMPTY
- LINE_EMPTY reduce 80 ** Parsing conflict **
- header_rows shift 39
- row shift-reduce 81 all_rows ::= all_rows row
- {default} reduce 80 table_section ::= all_rows
+ LINE_TABLE_SEPARATOR shift-reduce 132 row ::= LINE_TABLE_SEPARATOR
+ LINE_TABLE_SEPARATOR reduce 82 ** Parsing conflict **
+ LINE_TABLE shift-reduce 128 header_rows ::= LINE_TABLE
+ LINE_TABLE reduce 82 ** Parsing conflict **
+ LINE_EMPTY shift-reduce 81 table_section ::= all_rows LINE_EMPTY
+ LINE_EMPTY reduce 82 ** Parsing conflict **
+ header_rows shift 40
+ row shift-reduce 83 all_rows ::= all_rows row
+ {default} reduce 82 table_section ::= all_rows
-State 13:
- (24) block ::= para *
+State 14:
+ (25) block ::= para *
definition_block ::= para * defs
defs ::= * defs def
defs ::= * def
setext_1 ::= para * LINE_SETEXT_1
setext_2 ::= para * LINE_SETEXT_2
- LINE_SETEXT_1 shift-reduce 73 setext_1 ::= para LINE_SETEXT_1
- LINE_SETEXT_2 shift-reduce 74 setext_2 ::= para LINE_SETEXT_2
- LINE_DEFINITION shift 4
- LINE_DEFINITION reduce 24 ** Parsing conflict **
- defs shift 34
- def shift 34 /* because def==defs */
- {default} reduce 24 block ::= para
+ LINE_SETEXT_1 shift-reduce 75 setext_1 ::= para LINE_SETEXT_1
+ LINE_SETEXT_2 shift-reduce 76 setext_2 ::= para LINE_SETEXT_2
+ LINE_DEFINITION shift 5
+ LINE_DEFINITION reduce 25 ** Parsing conflict **
+ defs shift 35
+ def shift 35 /* because def==defs */
+ {default} reduce 25 block ::= para
-State 14:
+State 15:
header_rows ::= * header_rows LINE_TABLE
header_rows ::= * LINE_TABLE
all_rows ::= all_rows * row
row ::= * header_rows
row ::= * LINE_TABLE_SEPARATOR
- (82) para ::= all_rows *
+ (84) para ::= all_rows *
- LINE_TABLE_SEPARATOR shift-reduce 129 row ::= LINE_TABLE_SEPARATOR
- LINE_TABLE_SEPARATOR reduce 82 ** Parsing conflict **
- LINE_TABLE shift-reduce 125 header_rows ::= LINE_TABLE
- LINE_TABLE reduce 82 ** Parsing conflict **
- header_rows shift 39
- row shift-reduce 81 all_rows ::= all_rows row
- {default} reduce 82 para ::= all_rows
+ LINE_TABLE_SEPARATOR shift-reduce 132 row ::= LINE_TABLE_SEPARATOR
+ LINE_TABLE_SEPARATOR reduce 84 ** Parsing conflict **
+ LINE_TABLE shift-reduce 128 header_rows ::= LINE_TABLE
+ LINE_TABLE reduce 84 ** Parsing conflict **
+ header_rows shift 40
+ row shift-reduce 83 all_rows ::= all_rows row
+ {default} reduce 84 para ::= all_rows
-State 15:
+State 16:
chunk ::= * chunk chunk_line
chunk ::= * chunk_line
chunk_line ::= * LINE_CONTINUATION
para ::= LINE_PLAIN * chunk
- (123) para ::= LINE_PLAIN *
+ (126) para ::= LINE_PLAIN *
- LINE_CONTINUATION shift-reduce 84 chunk_line ::= LINE_CONTINUATION
- chunk shift 31
- chunk_line shift 31 /* because chunk_line==chunk */
- {default} reduce 123 para ::= LINE_PLAIN
+ LINE_CONTINUATION shift-reduce 86 chunk_line ::= LINE_CONTINUATION
+ chunk shift 32
+ chunk_line shift 32 /* because chunk_line==chunk */
+ {default} reduce 126 para ::= LINE_PLAIN
-State 16:
+State 17:
chunk ::= * chunk chunk_line
chunk ::= * chunk_line
chunk_line ::= * LINE_CONTINUATION
def_link ::= LINE_DEF_LINK * chunk
- (97) def_link ::= LINE_DEF_LINK *
+ (100) def_link ::= LINE_DEF_LINK *
- LINE_CONTINUATION shift-reduce 84 chunk_line ::= LINE_CONTINUATION
- chunk shift 33
- chunk_line shift 33 /* because chunk_line==chunk */
- {default} reduce 97 def_link ::= LINE_DEF_LINK
+ LINE_CONTINUATION shift-reduce 86 chunk_line ::= LINE_CONTINUATION
+ chunk shift 34
+ chunk_line shift 34 /* because chunk_line==chunk */
+ {default} reduce 100 def_link ::= LINE_DEF_LINK
-State 17:
+State 18:
nested_chunks ::= nested_chunks * nested_chunk
nested_chunk ::= * empty indented_line chunk
nested_chunk ::= * empty indented_line
nested_chunk ::= * empty
- (91) tail ::= nested_chunks *
+ (93) tail ::= nested_chunks *
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- LINE_EMPTY shift-reduce 100 empty ::= LINE_EMPTY
- LINE_EMPTY reduce 91 ** Parsing conflict **
- empty shift 26
- nested_chunk shift-reduce 29 nested_chunks ::= nested_chunks nested_chunk
- {default} reduce 91 tail ::= nested_chunks
+ LINE_EMPTY shift-reduce 103 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 93 ** Parsing conflict **
+ empty shift 27
+ nested_chunk shift-reduce 30 nested_chunks ::= nested_chunks nested_chunk
+ {default} reduce 93 tail ::= nested_chunks
-State 18:
+State 19:
nested_chunks ::= nested_chunks * nested_chunk
nested_chunk ::= * empty indented_line chunk
nested_chunk ::= * empty indented_line
nested_chunk ::= * empty
- (33) opt_ext_chunk ::= chunk nested_chunks *
+ (34) opt_ext_chunk ::= chunk nested_chunks *
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- LINE_EMPTY shift-reduce 100 empty ::= LINE_EMPTY
- LINE_EMPTY reduce 33 ** Parsing conflict **
- empty shift 26
- nested_chunk shift-reduce 29 nested_chunks ::= nested_chunks nested_chunk
- {default} reduce 33 opt_ext_chunk ::= chunk nested_chunks
+ LINE_EMPTY shift-reduce 103 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 34 ** Parsing conflict **
+ empty shift 27
+ nested_chunk shift-reduce 30 nested_chunks ::= nested_chunks nested_chunk
+ {default} reduce 34 opt_ext_chunk ::= chunk nested_chunks
-State 19:
+State 20:
nested_chunks ::= nested_chunks * nested_chunk
nested_chunk ::= * empty indented_line chunk
nested_chunk ::= * empty indented_line
nested_chunk ::= * empty
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- (69) item_enum ::= LINE_LIST_ENUMERATED nested_chunks *
+ (71) item_enum ::= LINE_LIST_ENUMERATED nested_chunks *
- LINE_EMPTY shift-reduce 100 empty ::= LINE_EMPTY
- LINE_EMPTY reduce 69 ** Parsing conflict **
- empty shift 26
- nested_chunk shift-reduce 29 nested_chunks ::= nested_chunks nested_chunk
- {default} reduce 69 item_enum ::= LINE_LIST_ENUMERATED nested_chunks
+ LINE_EMPTY shift-reduce 103 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 71 ** Parsing conflict **
+ empty shift 27
+ nested_chunk shift-reduce 30 nested_chunks ::= nested_chunks nested_chunk
+ {default} reduce 71 item_enum ::= LINE_LIST_ENUMERATED nested_chunks
-State 20:
+State 21:
nested_chunks ::= nested_chunks * nested_chunk
nested_chunk ::= * empty indented_line chunk
nested_chunk ::= * empty indented_line
nested_chunk ::= * empty
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- (64) item_bullet ::= LINE_LIST_BULLETED nested_chunks *
+ (66) item_bullet ::= LINE_LIST_BULLETED nested_chunks *
- LINE_EMPTY shift-reduce 100 empty ::= LINE_EMPTY
- LINE_EMPTY reduce 64 ** Parsing conflict **
- empty shift 26
- nested_chunk shift-reduce 29 nested_chunks ::= nested_chunks nested_chunk
- {default} reduce 64 item_bullet ::= LINE_LIST_BULLETED nested_chunks
+ LINE_EMPTY shift-reduce 103 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 66 ** Parsing conflict **
+ empty shift 27
+ nested_chunk shift-reduce 30 nested_chunks ::= nested_chunks nested_chunk
+ {default} reduce 66 item_bullet ::= LINE_LIST_BULLETED nested_chunks
-State 21:
+State 22:
chunk ::= * chunk chunk_line
chunk ::= * chunk_line
chunk_line ::= * LINE_CONTINUATION
nested_chunk ::= empty indented_line * chunk
- (31) nested_chunk ::= empty indented_line *
+ (32) nested_chunk ::= empty indented_line *
- LINE_CONTINUATION shift-reduce 84 chunk_line ::= LINE_CONTINUATION
- chunk shift 36
- chunk_line shift 36 /* because chunk_line==chunk */
- {default} reduce 31 nested_chunk ::= empty indented_line
+ LINE_CONTINUATION shift-reduce 86 chunk_line ::= LINE_CONTINUATION
+ chunk shift 37
+ chunk_line shift 37 /* because chunk_line==chunk */
+ {default} reduce 32 nested_chunk ::= empty indented_line
-State 22:
+State 23:
nested_chunks ::= nested_chunks * nested_chunk
nested_chunk ::= * empty indented_line chunk
nested_chunk ::= * empty indented_line
nested_chunk ::= * empty
- (32) ext_chunk ::= chunk nested_chunks *
+ (33) ext_chunk ::= chunk nested_chunks *
empty ::= * empty LINE_EMPTY
empty ::= * LINE_EMPTY
- LINE_EMPTY shift-reduce 100 empty ::= LINE_EMPTY
- LINE_EMPTY reduce 32 ** Parsing conflict **
- empty shift 26
- nested_chunk shift-reduce 29 nested_chunks ::= nested_chunks nested_chunk
- {default} reduce 32 ext_chunk ::= chunk nested_chunks
+ LINE_EMPTY shift-reduce 103 empty ::= LINE_EMPTY
+ LINE_EMPTY reduce 33 ** Parsing conflict **
+ empty shift 27
+ nested_chunk shift-reduce 30 nested_chunks ::= nested_chunks nested_chunk
+ {default} reduce 33 ext_chunk ::= chunk nested_chunks
-State 23:
+State 24:
fenced_block ::= fenced_5 * LINE_FENCE_BACKTICK_5
- (107) fenced_block ::= fenced_5 *
+ (110) 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
fenced_line ::= * LINE_SETEXT_1
fenced_line ::= * LINE_SETEXT_2
- LINE_SETEXT_1 shift-reduce 112 fenced_line ::= LINE_SETEXT_1
- LINE_SETEXT_2 shift-reduce 113 fenced_line ::= LINE_SETEXT_2
- LINE_CONTINUATION shift-reduce 110 fenced_line ::= LINE_CONTINUATION
- LINE_EMPTY shift-reduce 111 fenced_line ::= LINE_EMPTY
- LINE_EMPTY reduce 107 ** Parsing conflict **
- LINE_FENCE_BACKTICK_3 shift-reduce 54 fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_3
- LINE_FENCE_BACKTICK_3 reduce 107 ** Parsing conflict **
- LINE_FENCE_BACKTICK_4 shift-reduce 56 fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_4
- LINE_FENCE_BACKTICK_4 reduce 107 ** Parsing conflict **
- LINE_FENCE_BACKTICK_5 shift-reduce 52 fenced_block ::= fenced_5 LINE_FENCE_BACKTICK_5
- LINE_FENCE_BACKTICK_5 reduce 107 ** Parsing conflict **
- LINE_FENCE_BACKTICK_START_3 shift-reduce 55 fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_START_3
- LINE_FENCE_BACKTICK_START_3 reduce 107 ** Parsing conflict **
- LINE_FENCE_BACKTICK_START_4 shift-reduce 57 fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_START_4
- LINE_FENCE_BACKTICK_START_4 reduce 107 ** Parsing conflict **
- fenced_line shift-reduce 53 fenced_5 ::= fenced_5 fenced_line
- {default} reduce 107 fenced_block ::= fenced_5
+ LINE_SETEXT_1 shift-reduce 115 fenced_line ::= LINE_SETEXT_1
+ LINE_SETEXT_2 shift-reduce 116 fenced_line ::= LINE_SETEXT_2
+ LINE_CONTINUATION shift-reduce 113 fenced_line ::= LINE_CONTINUATION
+ LINE_EMPTY shift-reduce 114 fenced_line ::= LINE_EMPTY
+ LINE_EMPTY reduce 110 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_3 shift-reduce 56 fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_3
+ LINE_FENCE_BACKTICK_3 reduce 110 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_4 shift-reduce 58 fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_4
+ LINE_FENCE_BACKTICK_4 reduce 110 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_5 shift-reduce 54 fenced_block ::= fenced_5 LINE_FENCE_BACKTICK_5
+ LINE_FENCE_BACKTICK_5 reduce 110 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_START_3 shift-reduce 57 fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_START_3
+ LINE_FENCE_BACKTICK_START_3 reduce 110 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_START_4 shift-reduce 59 fenced_5 ::= fenced_5 LINE_FENCE_BACKTICK_START_4
+ LINE_FENCE_BACKTICK_START_4 reduce 110 ** Parsing conflict **
+ fenced_line shift-reduce 55 fenced_5 ::= fenced_5 fenced_line
+ {default} reduce 110 fenced_block ::= fenced_5
-State 24:
+State 25:
fenced_block ::= fenced_4 * LINE_FENCE_BACKTICK_4
fenced_block ::= fenced_4 * LINE_FENCE_BACKTICK_5
- (104) fenced_block ::= fenced_4 *
+ (107) 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
fenced_line ::= * LINE_SETEXT_1
fenced_line ::= * LINE_SETEXT_2
- LINE_SETEXT_1 shift-reduce 112 fenced_line ::= LINE_SETEXT_1
- LINE_SETEXT_2 shift-reduce 113 fenced_line ::= LINE_SETEXT_2
- LINE_CONTINUATION shift-reduce 110 fenced_line ::= LINE_CONTINUATION
- LINE_EMPTY shift-reduce 111 fenced_line ::= LINE_EMPTY
- LINE_EMPTY reduce 104 ** Parsing conflict **
- LINE_FENCE_BACKTICK_3 shift-reduce 50 fenced_4 ::= fenced_4 LINE_FENCE_BACKTICK_3
- LINE_FENCE_BACKTICK_3 reduce 104 ** Parsing conflict **
- LINE_FENCE_BACKTICK_4 shift-reduce 47 fenced_block ::= fenced_4 LINE_FENCE_BACKTICK_4
- LINE_FENCE_BACKTICK_4 reduce 104 ** Parsing conflict **
- LINE_FENCE_BACKTICK_5 shift-reduce 48 fenced_block ::= fenced_4 LINE_FENCE_BACKTICK_5
- LINE_FENCE_BACKTICK_5 reduce 104 ** Parsing conflict **
- LINE_FENCE_BACKTICK_START_3 shift-reduce 51 fenced_4 ::= fenced_4 LINE_FENCE_BACKTICK_START_3
- LINE_FENCE_BACKTICK_START_3 reduce 104 ** Parsing conflict **
- fenced_line shift-reduce 49 fenced_4 ::= fenced_4 fenced_line
- {default} reduce 104 fenced_block ::= fenced_4
+ LINE_SETEXT_1 shift-reduce 115 fenced_line ::= LINE_SETEXT_1
+ LINE_SETEXT_2 shift-reduce 116 fenced_line ::= LINE_SETEXT_2
+ LINE_CONTINUATION shift-reduce 113 fenced_line ::= LINE_CONTINUATION
+ LINE_EMPTY shift-reduce 114 fenced_line ::= LINE_EMPTY
+ LINE_EMPTY reduce 107 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_3 shift-reduce 52 fenced_4 ::= fenced_4 LINE_FENCE_BACKTICK_3
+ LINE_FENCE_BACKTICK_3 reduce 107 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_4 shift-reduce 49 fenced_block ::= fenced_4 LINE_FENCE_BACKTICK_4
+ LINE_FENCE_BACKTICK_4 reduce 107 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_5 shift-reduce 50 fenced_block ::= fenced_4 LINE_FENCE_BACKTICK_5
+ LINE_FENCE_BACKTICK_5 reduce 107 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_START_3 shift-reduce 53 fenced_4 ::= fenced_4 LINE_FENCE_BACKTICK_START_3
+ LINE_FENCE_BACKTICK_START_3 reduce 107 ** Parsing conflict **
+ fenced_line shift-reduce 51 fenced_4 ::= fenced_4 fenced_line
+ {default} reduce 107 fenced_block ::= fenced_4
-State 25:
+State 26:
fenced_block ::= fenced_3 * LINE_FENCE_BACKTICK_3
fenced_block ::= fenced_3 * LINE_FENCE_BACKTICK_4
fenced_block ::= fenced_3 * LINE_FENCE_BACKTICK_5
- (101) fenced_block ::= fenced_3 *
+ (104) fenced_block ::= fenced_3 *
fenced_3 ::= fenced_3 * fenced_line
fenced_line ::= * LINE_CONTINUATION
fenced_line ::= * LINE_EMPTY
fenced_line ::= * LINE_SETEXT_1
fenced_line ::= * LINE_SETEXT_2
- LINE_SETEXT_1 shift-reduce 112 fenced_line ::= LINE_SETEXT_1
- LINE_SETEXT_2 shift-reduce 113 fenced_line ::= LINE_SETEXT_2
- LINE_CONTINUATION shift-reduce 110 fenced_line ::= LINE_CONTINUATION
- LINE_EMPTY shift-reduce 111 fenced_line ::= LINE_EMPTY
- LINE_EMPTY reduce 101 ** Parsing conflict **
- LINE_FENCE_BACKTICK_3 shift-reduce 43 fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_3
- LINE_FENCE_BACKTICK_3 reduce 101 ** Parsing conflict **
- LINE_FENCE_BACKTICK_4 shift-reduce 44 fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_4
- LINE_FENCE_BACKTICK_4 reduce 101 ** Parsing conflict **
- LINE_FENCE_BACKTICK_5 shift-reduce 45 fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_5
- LINE_FENCE_BACKTICK_5 reduce 101 ** Parsing conflict **
- fenced_line shift-reduce 46 fenced_3 ::= fenced_3 fenced_line
- {default} reduce 101 fenced_block ::= fenced_3
+ LINE_SETEXT_1 shift-reduce 115 fenced_line ::= LINE_SETEXT_1
+ LINE_SETEXT_2 shift-reduce 116 fenced_line ::= LINE_SETEXT_2
+ LINE_CONTINUATION shift-reduce 113 fenced_line ::= LINE_CONTINUATION
+ LINE_EMPTY shift-reduce 114 fenced_line ::= LINE_EMPTY
+ LINE_EMPTY reduce 104 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_3 shift-reduce 45 fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_3
+ LINE_FENCE_BACKTICK_3 reduce 104 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_4 shift-reduce 46 fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_4
+ LINE_FENCE_BACKTICK_4 reduce 104 ** Parsing conflict **
+ LINE_FENCE_BACKTICK_5 shift-reduce 47 fenced_block ::= fenced_3 LINE_FENCE_BACKTICK_5
+ LINE_FENCE_BACKTICK_5 reduce 104 ** Parsing conflict **
+ fenced_line shift-reduce 48 fenced_3 ::= fenced_3 fenced_line
+ {default} reduce 104 fenced_block ::= fenced_3
-State 26:
+State 27:
nested_chunk ::= empty * indented_line chunk
nested_chunk ::= empty * indented_line
- (86) nested_chunk ::= empty *
+ (88) nested_chunk ::= empty *
indented_line ::= * LINE_INDENTED_TAB
indented_line ::= * LINE_INDENTED_SPACE
empty ::= empty * LINE_EMPTY
- LINE_INDENTED_TAB shift-reduce 87 indented_line ::= LINE_INDENTED_TAB
- LINE_INDENTED_TAB reduce 86 ** Parsing conflict **
- LINE_INDENTED_SPACE shift-reduce 88 indented_line ::= LINE_INDENTED_SPACE
- LINE_INDENTED_SPACE reduce 86 ** Parsing conflict **
- LINE_EMPTY shift-reduce 42 empty ::= empty LINE_EMPTY
- LINE_EMPTY reduce 86 ** Parsing conflict **
- indented_line shift 21
- {default} reduce 86 nested_chunk ::= empty
+ LINE_INDENTED_TAB shift-reduce 89 indented_line ::= LINE_INDENTED_TAB
+ LINE_INDENTED_TAB reduce 88 ** Parsing conflict **
+ LINE_INDENTED_SPACE shift-reduce 90 indented_line ::= LINE_INDENTED_SPACE
+ LINE_INDENTED_SPACE reduce 88 ** Parsing conflict **
+ LINE_EMPTY shift-reduce 44 empty ::= empty LINE_EMPTY
+ LINE_EMPTY reduce 88 ** Parsing conflict **
+ indented_line shift 22
+ {default} reduce 88 nested_chunk ::= empty
-State 27:
- (20) block ::= indented_code *
+State 28:
+ (21) block ::= indented_code *
indented_line ::= * LINE_INDENTED_TAB
indented_line ::= * LINE_INDENTED_SPACE
indented_code ::= indented_code * indented_line
indented_code ::= indented_code * LINE_EMPTY
- LINE_INDENTED_TAB shift-reduce 87 indented_line ::= LINE_INDENTED_TAB
- LINE_INDENTED_TAB reduce 20 ** Parsing conflict **
- LINE_INDENTED_SPACE shift-reduce 88 indented_line ::= LINE_INDENTED_SPACE
- LINE_INDENTED_SPACE reduce 20 ** Parsing conflict **
- LINE_EMPTY shift-reduce 60 indented_code ::= indented_code LINE_EMPTY
- LINE_EMPTY reduce 20 ** Parsing conflict **
- indented_line shift-reduce 59 indented_code ::= indented_code indented_line
- {default} reduce 20 block ::= indented_code
+ LINE_INDENTED_TAB shift-reduce 89 indented_line ::= LINE_INDENTED_TAB
+ LINE_INDENTED_TAB reduce 21 ** Parsing conflict **
+ LINE_INDENTED_SPACE shift-reduce 90 indented_line ::= LINE_INDENTED_SPACE
+ LINE_INDENTED_SPACE reduce 21 ** Parsing conflict **
+ LINE_EMPTY shift-reduce 62 indented_code ::= indented_code LINE_EMPTY
+ LINE_EMPTY reduce 21 ** Parsing conflict **
+ indented_line shift-reduce 61 indented_code ::= indented_code indented_line
+ {default} reduce 21 block ::= indented_code
-State 28:
- (23) block ::= meta_block *
+State 29:
+ (24) block ::= meta_block *
meta_block ::= meta_block * meta_line
meta_line ::= * LINE_META
meta_line ::= * LINE_CONTINUATION
- LINE_CONTINUATION shift-reduce 122 meta_line ::= LINE_CONTINUATION
- LINE_META shift-reduce 121 meta_line ::= LINE_META
- LINE_META reduce 23 ** Parsing conflict **
- meta_line shift-reduce 71 meta_block ::= meta_block meta_line
- {default} reduce 23 block ::= meta_block
+ LINE_CONTINUATION shift-reduce 125 meta_line ::= LINE_CONTINUATION
+ LINE_META shift-reduce 124 meta_line ::= LINE_META
+ LINE_META reduce 24 ** Parsing conflict **
+ meta_line shift-reduce 73 meta_block ::= meta_block meta_line
+ {default} reduce 24 block ::= meta_block
-State 29:
- (19) block ::= html_block *
+State 30:
+ (20) block ::= html_block *
html_block ::= html_block * html_line
html_line ::= * LINE_CONTINUATION
html_line ::= * LINE_HTML
- LINE_CONTINUATION shift-reduce 115 html_line ::= LINE_CONTINUATION
- LINE_HTML shift-reduce 116 html_line ::= LINE_HTML
- LINE_HTML reduce 19 ** Parsing conflict **
- html_line shift-reduce 58 html_block ::= html_block html_line
- {default} reduce 19 block ::= html_block
+ LINE_CONTINUATION shift-reduce 118 html_line ::= LINE_CONTINUATION
+ LINE_HTML shift-reduce 119 html_line ::= LINE_HTML
+ LINE_HTML reduce 20 ** Parsing conflict **
+ html_line shift-reduce 60 html_block ::= html_block html_line
+ {default} reduce 20 block ::= html_block
-State 30:
+State 31:
(11) block ::= blockquote *
blockquote ::= blockquote * quote_line
quote_line ::= * LINE_BLOCKQUOTE
quote_line ::= * LINE_CONTINUATION
- LINE_CONTINUATION shift-reduce 94 quote_line ::= LINE_CONTINUATION
- LINE_BLOCKQUOTE shift-reduce 93 quote_line ::= LINE_BLOCKQUOTE
+ LINE_CONTINUATION shift-reduce 96 quote_line ::= LINE_CONTINUATION
+ LINE_BLOCKQUOTE shift-reduce 95 quote_line ::= LINE_BLOCKQUOTE
LINE_BLOCKQUOTE reduce 11 ** Parsing conflict **
- quote_line shift-reduce 34 blockquote ::= blockquote quote_line
+ quote_line shift-reduce 35 blockquote ::= blockquote quote_line
{default} reduce 11 block ::= blockquote
-State 31:
+State 32:
chunk ::= chunk * chunk_line
chunk_line ::= * LINE_CONTINUATION
- (72) para ::= LINE_PLAIN chunk *
+ (74) para ::= LINE_PLAIN chunk *
- LINE_CONTINUATION shift-reduce 84 chunk_line ::= LINE_CONTINUATION
- chunk_line shift-reduce 28 chunk ::= chunk chunk_line
- {default} reduce 72 para ::= LINE_PLAIN chunk
+ LINE_CONTINUATION shift-reduce 86 chunk_line ::= LINE_CONTINUATION
+ chunk_line shift-reduce 29 chunk ::= chunk chunk_line
+ {default} reduce 74 para ::= LINE_PLAIN chunk
-State 32:
+State 33:
defs ::= defs * def
def ::= * LINE_DEFINITION tail
def ::= * LINE_DEFINITION
- (130) para ::= defs *
+ (133) para ::= defs *
- LINE_DEFINITION shift 4
- LINE_DEFINITION reduce 130 ** Parsing conflict **
- def shift-reduce 39 defs ::= defs def
- {default} reduce 130 para ::= defs
+ LINE_DEFINITION shift 5
+ LINE_DEFINITION reduce 133 ** Parsing conflict **
+ def shift-reduce 41 defs ::= defs def
+ {default} reduce 133 para ::= defs
-State 33:
+State 34:
chunk ::= chunk * chunk_line
chunk_line ::= * LINE_CONTINUATION
- (37) def_link ::= LINE_DEF_LINK chunk *
+ (39) def_link ::= LINE_DEF_LINK chunk *
- LINE_CONTINUATION shift-reduce 84 chunk_line ::= LINE_CONTINUATION
- chunk_line shift-reduce 28 chunk ::= chunk chunk_line
- {default} reduce 37 def_link ::= LINE_DEF_LINK chunk
+ LINE_CONTINUATION shift-reduce 86 chunk_line ::= LINE_CONTINUATION
+ chunk_line shift-reduce 29 chunk ::= chunk chunk_line
+ {default} reduce 39 def_link ::= LINE_DEF_LINK chunk
-State 34:
- (38) definition_block ::= para defs *
+State 35:
+ (40) definition_block ::= para defs *
defs ::= defs * def
def ::= * LINE_DEFINITION tail
def ::= * LINE_DEFINITION
- LINE_DEFINITION shift 4
- LINE_DEFINITION reduce 38 ** Parsing conflict **
- def shift-reduce 39 defs ::= defs def
- {default} reduce 38 definition_block ::= para defs
+ LINE_DEFINITION shift 5
+ LINE_DEFINITION reduce 40 ** Parsing conflict **
+ def shift-reduce 41 defs ::= defs def
+ {default} reduce 40 definition_block ::= para defs
-State 35:
- (22) block ::= list_enum *
+State 36:
+ (23) block ::= list_enum *
list_enum ::= list_enum * item_enum
item_enum ::= * LINE_LIST_ENUMERATED ext_chunk
item_enum ::= * LINE_LIST_ENUMERATED chunk
item_enum ::= * LINE_LIST_ENUMERATED nested_chunks
item_enum ::= * LINE_LIST_ENUMERATED
- LINE_LIST_ENUMERATED shift 5
- LINE_LIST_ENUMERATED reduce 22 ** Parsing conflict **
- item_enum shift-reduce 66 list_enum ::= list_enum item_enum
- {default} reduce 22 block ::= list_enum
+ LINE_LIST_ENUMERATED shift 6
+ LINE_LIST_ENUMERATED reduce 23 ** Parsing conflict **
+ item_enum shift-reduce 68 list_enum ::= list_enum item_enum
+ {default} reduce 23 block ::= list_enum
-State 36:
+State 37:
chunk ::= chunk * chunk_line
chunk_line ::= * LINE_CONTINUATION
- (30) nested_chunk ::= empty indented_line chunk *
+ (31) nested_chunk ::= empty indented_line chunk *
- LINE_CONTINUATION shift-reduce 84 chunk_line ::= LINE_CONTINUATION
- chunk_line shift-reduce 28 chunk ::= chunk chunk_line
- {default} reduce 30 nested_chunk ::= empty indented_line chunk
+ LINE_CONTINUATION shift-reduce 86 chunk_line ::= LINE_CONTINUATION
+ chunk_line shift-reduce 29 chunk ::= chunk chunk_line
+ {default} reduce 31 nested_chunk ::= empty indented_line chunk
-State 37:
- (21) block ::= list_bullet *
+State 38:
+ (22) block ::= list_bullet *
list_bullet ::= list_bullet * item_bullet
item_bullet ::= * LINE_LIST_BULLETED ext_chunk
item_bullet ::= * LINE_LIST_BULLETED chunk
item_bullet ::= * LINE_LIST_BULLETED nested_chunks
item_bullet ::= * LINE_LIST_BULLETED
- LINE_LIST_BULLETED shift 6
- LINE_LIST_BULLETED reduce 21 ** Parsing conflict **
- item_bullet shift-reduce 61 list_bullet ::= list_bullet item_bullet
- {default} reduce 21 block ::= list_bullet
+ LINE_LIST_BULLETED shift 7
+ LINE_LIST_BULLETED reduce 22 ** Parsing conflict **
+ item_bullet shift-reduce 63 list_bullet ::= list_bullet item_bullet
+ {default} reduce 22 block ::= list_bullet
-State 38:
+State 39:
table_header ::= header_rows * LINE_TABLE_SEPARATOR
header_rows ::= header_rows * LINE_TABLE
- (128) row ::= header_rows *
+ (131) row ::= header_rows *
- LINE_TABLE_SEPARATOR shift-reduce 76 table_header ::= header_rows LINE_TABLE_SEPARATOR
- LINE_TABLE_SEPARATOR reduce 128 ** Parsing conflict **
- LINE_TABLE shift-reduce 77 header_rows ::= header_rows LINE_TABLE
- LINE_TABLE reduce 128 ** Parsing conflict **
- {default} reduce 128 row ::= header_rows
+ LINE_TABLE_SEPARATOR shift-reduce 78 table_header ::= header_rows LINE_TABLE_SEPARATOR
+ LINE_TABLE_SEPARATOR reduce 131 ** Parsing conflict **
+ LINE_TABLE shift-reduce 79 header_rows ::= header_rows LINE_TABLE
+ LINE_TABLE reduce 131 ** Parsing conflict **
+ {default} reduce 131 row ::= header_rows
-State 39:
+State 40:
header_rows ::= header_rows * LINE_TABLE
- (128) row ::= header_rows *
+ (131) row ::= header_rows *
- LINE_TABLE shift-reduce 77 header_rows ::= header_rows LINE_TABLE
- LINE_TABLE reduce 128 ** Parsing conflict **
- {default} reduce 128 row ::= header_rows
+ LINE_TABLE shift-reduce 79 header_rows ::= header_rows LINE_TABLE
+ LINE_TABLE reduce 131 ** Parsing conflict **
+ {default} reduce 131 row ::= header_rows
-State 40:
- (17) block ::= empty *
+State 41:
+ (18) block ::= empty *
empty ::= empty * LINE_EMPTY
- LINE_EMPTY shift-reduce 42 empty ::= empty LINE_EMPTY
- LINE_EMPTY reduce 17 ** Parsing conflict **
- {default} reduce 17 block ::= empty
+ LINE_EMPTY shift-reduce 44 empty ::= empty LINE_EMPTY
+ LINE_EMPTY reduce 18 ** Parsing conflict **
+ {default} reduce 18 block ::= empty
----------------------------------------------------
Symbols:
17: LINE_BLOCKQUOTE
18: LINE_LIST_BULLETED
19: LINE_LIST_ENUMERATED
- 20: LINE_DEF_CITATION
- 21: LINE_DEF_FOOTNOTE
- 22: LINE_DEF_LINK
- 23: LINE_FENCE_BACKTICK
- 24: LINE_FENCE_BACKTICK_START
- 25: LINE_TOC
- 26: LINE_DEF_ABBREVIATION
- 27: LINE_DEFINITION
- 28: LINE_EMPTY
- 29: LINE_FENCE_BACKTICK_3
- 30: LINE_FENCE_BACKTICK_4
- 31: LINE_FENCE_BACKTICK_5
- 32: LINE_FENCE_BACKTICK_START_3
- 33: LINE_FENCE_BACKTICK_START_4
- 34: LINE_FENCE_BACKTICK_START_5
- 35: LINE_META
- 36: error:
- 37: doc: LINE_HR LINE_PLAIN LINE_TABLE_SEPARATOR LINE_INDENTED_TAB LINE_INDENTED_SPACE LINE_TABLE LINE_HTML LINE_ATX_1 LINE_ATX_2 LINE_ATX_3 LINE_ATX_4 LINE_ATX_5 LINE_ATX_6 LINE_BLOCKQUOTE LINE_LIST_BULLETED LINE_LIST_ENUMERATED LINE_DEF_CITATION LINE_DEF_FOOTNOTE LINE_DEF_LINK LINE_TOC LINE_DEF_ABBREVIATION LINE_DEFINITION LINE_EMPTY LINE_FENCE_BACKTICK_3 LINE_FENCE_BACKTICK_4 LINE_FENCE_BACKTICK_5 LINE_FENCE_BACKTICK_START_3 LINE_FENCE_BACKTICK_START_4 LINE_FENCE_BACKTICK_START_5 LINE_META
- 38: blocks: LINE_HR LINE_PLAIN LINE_TABLE_SEPARATOR LINE_INDENTED_TAB LINE_INDENTED_SPACE LINE_TABLE LINE_HTML LINE_ATX_1 LINE_ATX_2 LINE_ATX_3 LINE_ATX_4 LINE_ATX_5 LINE_ATX_6 LINE_BLOCKQUOTE LINE_LIST_BULLETED LINE_LIST_ENUMERATED LINE_DEF_CITATION LINE_DEF_FOOTNOTE LINE_DEF_LINK LINE_TOC LINE_DEF_ABBREVIATION LINE_DEFINITION LINE_EMPTY LINE_FENCE_BACKTICK_3 LINE_FENCE_BACKTICK_4 LINE_FENCE_BACKTICK_5 LINE_FENCE_BACKTICK_START_3 LINE_FENCE_BACKTICK_START_4 LINE_FENCE_BACKTICK_START_5 LINE_META
- 39: block: LINE_HR LINE_PLAIN LINE_TABLE_SEPARATOR LINE_INDENTED_TAB LINE_INDENTED_SPACE LINE_TABLE LINE_HTML LINE_ATX_1 LINE_ATX_2 LINE_ATX_3 LINE_ATX_4 LINE_ATX_5 LINE_ATX_6 LINE_BLOCKQUOTE LINE_LIST_BULLETED LINE_LIST_ENUMERATED LINE_DEF_CITATION LINE_DEF_FOOTNOTE LINE_DEF_LINK LINE_TOC LINE_DEF_ABBREVIATION LINE_DEFINITION LINE_EMPTY LINE_FENCE_BACKTICK_3 LINE_FENCE_BACKTICK_4 LINE_FENCE_BACKTICK_5 LINE_FENCE_BACKTICK_START_3 LINE_FENCE_BACKTICK_START_4 LINE_FENCE_BACKTICK_START_5 LINE_META
- 40: blockquote: LINE_BLOCKQUOTE
- 41: def_abbreviation: LINE_DEF_ABBREVIATION
- 42: def_citation: LINE_DEF_CITATION
- 43: def_footnote: LINE_DEF_FOOTNOTE
- 44: def_link: LINE_DEF_LINK
- 45: definition_block: LINE_PLAIN LINE_TABLE_SEPARATOR LINE_TABLE LINE_DEFINITION
- 46: empty: LINE_EMPTY
- 47: fenced_block: LINE_FENCE_BACKTICK_3 LINE_FENCE_BACKTICK_4 LINE_FENCE_BACKTICK_5 LINE_FENCE_BACKTICK_START_3 LINE_FENCE_BACKTICK_START_4 LINE_FENCE_BACKTICK_START_5
- 48: html_block: LINE_HTML
- 49: indented_code: LINE_INDENTED_TAB LINE_INDENTED_SPACE
- 50: list_bullet: LINE_LIST_BULLETED
- 51: list_enum: LINE_LIST_ENUMERATED
- 52: meta_block: LINE_META
- 53: para: LINE_PLAIN LINE_TABLE_SEPARATOR LINE_TABLE LINE_DEFINITION
- 54: setext_1: LINE_PLAIN LINE_TABLE_SEPARATOR LINE_TABLE LINE_DEFINITION
- 55: setext_2: LINE_PLAIN LINE_TABLE_SEPARATOR LINE_TABLE LINE_DEFINITION
- 56: table: LINE_TABLE
- 57: chunk: LINE_CONTINUATION
- 58: chunk_line: LINE_CONTINUATION
- 59: nested_chunks: LINE_EMPTY
- 60: nested_chunk: LINE_EMPTY
- 61: indented_line: LINE_INDENTED_TAB LINE_INDENTED_SPACE
- 62: ext_chunk: LINE_CONTINUATION
- 63: opt_ext_chunk: LINE_CONTINUATION
- 64: tail: LINE_CONTINUATION LINE_EMPTY
- 65: quote_line: LINE_CONTINUATION LINE_BLOCKQUOTE
- 66: defs: LINE_DEFINITION
- 67: def: LINE_DEFINITION
- 68: fenced_3: LINE_FENCE_BACKTICK_3 LINE_FENCE_BACKTICK_START_3
- 69: fenced_line: LINE_SETEXT_1 LINE_SETEXT_2 LINE_CONTINUATION LINE_EMPTY
- 70: fenced_4: LINE_FENCE_BACKTICK_4 LINE_FENCE_BACKTICK_START_4
- 71: fenced_5: LINE_FENCE_BACKTICK_5 LINE_FENCE_BACKTICK_START_5
- 72: html_line: LINE_CONTINUATION LINE_HTML
- 73: item_bullet: LINE_LIST_BULLETED
- 74: item_enum: LINE_LIST_ENUMERATED
- 75: meta_line: LINE_CONTINUATION LINE_META
- 76: table_header: LINE_TABLE
- 77: table_body: LINE_TABLE_SEPARATOR LINE_TABLE
- 78: header_rows: LINE_TABLE
- 79: table_section: LINE_TABLE_SEPARATOR LINE_TABLE
- 80: all_rows: LINE_TABLE_SEPARATOR LINE_TABLE
- 81: row: LINE_TABLE_SEPARATOR LINE_TABLE
+ 20: LINE_DEF_ABBREVIATION
+ 21: LINE_DEF_CITATION
+ 22: LINE_DEF_FOOTNOTE
+ 23: LINE_DEF_GLOSSARY
+ 24: LINE_DEF_LINK
+ 25: LINE_FENCE_BACKTICK
+ 26: LINE_FENCE_BACKTICK_START
+ 27: LINE_TOC
+ 28: LINE_DEFINITION
+ 29: LINE_EMPTY
+ 30: LINE_FENCE_BACKTICK_3
+ 31: LINE_FENCE_BACKTICK_4
+ 32: LINE_FENCE_BACKTICK_5
+ 33: LINE_FENCE_BACKTICK_START_3
+ 34: LINE_FENCE_BACKTICK_START_4
+ 35: LINE_FENCE_BACKTICK_START_5
+ 36: LINE_META
+ 37: error:
+ 38: doc: LINE_HR LINE_PLAIN LINE_TABLE_SEPARATOR LINE_INDENTED_TAB LINE_INDENTED_SPACE LINE_TABLE LINE_HTML LINE_ATX_1 LINE_ATX_2 LINE_ATX_3 LINE_ATX_4 LINE_ATX_5 LINE_ATX_6 LINE_BLOCKQUOTE LINE_LIST_BULLETED LINE_LIST_ENUMERATED LINE_DEF_ABBREVIATION LINE_DEF_CITATION LINE_DEF_FOOTNOTE LINE_DEF_GLOSSARY LINE_DEF_LINK LINE_TOC LINE_DEFINITION LINE_EMPTY LINE_FENCE_BACKTICK_3 LINE_FENCE_BACKTICK_4 LINE_FENCE_BACKTICK_5 LINE_FENCE_BACKTICK_START_3 LINE_FENCE_BACKTICK_START_4 LINE_FENCE_BACKTICK_START_5 LINE_META
+ 39: blocks: LINE_HR LINE_PLAIN LINE_TABLE_SEPARATOR LINE_INDENTED_TAB LINE_INDENTED_SPACE LINE_TABLE LINE_HTML LINE_ATX_1 LINE_ATX_2 LINE_ATX_3 LINE_ATX_4 LINE_ATX_5 LINE_ATX_6 LINE_BLOCKQUOTE LINE_LIST_BULLETED LINE_LIST_ENUMERATED LINE_DEF_ABBREVIATION LINE_DEF_CITATION LINE_DEF_FOOTNOTE LINE_DEF_GLOSSARY LINE_DEF_LINK LINE_TOC LINE_DEFINITION LINE_EMPTY LINE_FENCE_BACKTICK_3 LINE_FENCE_BACKTICK_4 LINE_FENCE_BACKTICK_5 LINE_FENCE_BACKTICK_START_3 LINE_FENCE_BACKTICK_START_4 LINE_FENCE_BACKTICK_START_5 LINE_META
+ 40: block: LINE_HR LINE_PLAIN LINE_TABLE_SEPARATOR LINE_INDENTED_TAB LINE_INDENTED_SPACE LINE_TABLE LINE_HTML LINE_ATX_1 LINE_ATX_2 LINE_ATX_3 LINE_ATX_4 LINE_ATX_5 LINE_ATX_6 LINE_BLOCKQUOTE LINE_LIST_BULLETED LINE_LIST_ENUMERATED LINE_DEF_ABBREVIATION LINE_DEF_CITATION LINE_DEF_FOOTNOTE LINE_DEF_GLOSSARY LINE_DEF_LINK LINE_TOC LINE_DEFINITION LINE_EMPTY LINE_FENCE_BACKTICK_3 LINE_FENCE_BACKTICK_4 LINE_FENCE_BACKTICK_5 LINE_FENCE_BACKTICK_START_3 LINE_FENCE_BACKTICK_START_4 LINE_FENCE_BACKTICK_START_5 LINE_META
+ 41: blockquote: LINE_BLOCKQUOTE
+ 42: def_abbreviation: LINE_DEF_ABBREVIATION
+ 43: def_citation: LINE_DEF_CITATION
+ 44: def_footnote: LINE_DEF_FOOTNOTE
+ 45: def_glossary: LINE_DEF_GLOSSARY
+ 46: def_link: LINE_DEF_LINK
+ 47: definition_block: LINE_PLAIN LINE_TABLE_SEPARATOR LINE_TABLE LINE_DEFINITION
+ 48: empty: LINE_EMPTY
+ 49: fenced_block: LINE_FENCE_BACKTICK_3 LINE_FENCE_BACKTICK_4 LINE_FENCE_BACKTICK_5 LINE_FENCE_BACKTICK_START_3 LINE_FENCE_BACKTICK_START_4 LINE_FENCE_BACKTICK_START_5
+ 50: html_block: LINE_HTML
+ 51: indented_code: LINE_INDENTED_TAB LINE_INDENTED_SPACE
+ 52: list_bullet: LINE_LIST_BULLETED
+ 53: list_enum: LINE_LIST_ENUMERATED
+ 54: meta_block: LINE_META
+ 55: para: LINE_PLAIN LINE_TABLE_SEPARATOR LINE_TABLE LINE_DEFINITION
+ 56: setext_1: LINE_PLAIN LINE_TABLE_SEPARATOR LINE_TABLE LINE_DEFINITION
+ 57: setext_2: LINE_PLAIN LINE_TABLE_SEPARATOR LINE_TABLE LINE_DEFINITION
+ 58: table: LINE_TABLE
+ 59: chunk: LINE_CONTINUATION
+ 60: chunk_line: LINE_CONTINUATION
+ 61: nested_chunks: LINE_EMPTY
+ 62: nested_chunk: LINE_EMPTY
+ 63: indented_line: LINE_INDENTED_TAB LINE_INDENTED_SPACE
+ 64: ext_chunk: LINE_CONTINUATION
+ 65: opt_ext_chunk: LINE_CONTINUATION
+ 66: tail: LINE_CONTINUATION LINE_EMPTY
+ 67: quote_line: LINE_CONTINUATION LINE_BLOCKQUOTE
+ 68: defs: LINE_DEFINITION
+ 69: def: LINE_DEFINITION
+ 70: fenced_3: LINE_FENCE_BACKTICK_3 LINE_FENCE_BACKTICK_START_3
+ 71: fenced_line: LINE_SETEXT_1 LINE_SETEXT_2 LINE_CONTINUATION LINE_EMPTY
+ 72: fenced_4: LINE_FENCE_BACKTICK_4 LINE_FENCE_BACKTICK_START_4
+ 73: fenced_5: LINE_FENCE_BACKTICK_5 LINE_FENCE_BACKTICK_START_5
+ 74: html_line: LINE_CONTINUATION LINE_HTML
+ 75: item_bullet: LINE_LIST_BULLETED
+ 76: item_enum: LINE_LIST_ENUMERATED
+ 77: meta_line: LINE_CONTINUATION LINE_META
+ 78: table_header: LINE_TABLE
+ 79: table_body: LINE_TABLE_SEPARATOR LINE_TABLE
+ 80: header_rows: LINE_TABLE
+ 81: table_section: LINE_TABLE_SEPARATOR LINE_TABLE
+ 82: all_rows: LINE_TABLE_SEPARATOR LINE_TABLE
+ 83: row: LINE_TABLE_SEPARATOR LINE_TABLE
%fallback LINE_CONTINUATION LINE_PLAIN LINE_INDENTED_TAB LINE_INDENTED_SPACE LINE_TABLE.
-%fallback LINE_HTML LINE_ATX_1 LINE_ATX_2 LINE_ATX_3 LINE_ATX_4 LINE_ATX_5 LINE_ATX_6 LINE_HR LINE_BLOCKQUOTE LINE_LIST_BULLETED LINE_LIST_ENUMERATED LINE_DEF_CITATION LINE_DEF_FOOTNOTE LINE_DEF_LINK LINE_FENCE_BACKTICK LINE_FENCE_BACKTICK_START.
+%fallback LINE_HTML LINE_ATX_1 LINE_ATX_2 LINE_ATX_3 LINE_ATX_4 LINE_ATX_5 LINE_ATX_6 LINE_HR LINE_BLOCKQUOTE
+LINE_LIST_BULLETED LINE_LIST_ENUMERATED LINE_DEF_ABBREVIATION LINE_DEF_CITATION LINE_DEF_FOOTNOTE
+LINE_DEF_GLOSSARY LINE_DEF_LINK LINE_FENCE_BACKTICK LINE_FENCE_BACKTICK_START.
doc ::= blocks(B). { engine->root = B; }
block(A) ::= def_abbreviation(B). { A = token_new_parent(B, BLOCK_DEF_ABBREVIATION); stack_push(engine->definition_stack, A); }
block(A) ::= def_citation(B). { A = token_new_parent(B, BLOCK_DEF_CITATION); stack_push(engine->definition_stack, A); }
block(A) ::= def_footnote(B). { A = token_new_parent(B, BLOCK_DEF_FOOTNOTE); stack_push(engine->definition_stack, A); recursive_parse_indent(engine, A); }
+block(A) ::= def_glossary(B). { A = token_new_parent(B, BLOCK_DEF_GLOSSARY); stack_push(engine->definition_stack, A); recursive_parse_indent(engine, A); }
block(A) ::= def_link(B). { A = token_new_parent(B, BLOCK_DEF_LINK); stack_push(engine->definition_stack, A); }
block(A) ::= definition_block(B). { A = token_new_parent(B, BLOCK_DEFLIST); }
block(A) ::= empty(B). { A = token_new_parent(B, BLOCK_EMPTY); }
def_footnote(A) ::= LINE_DEF_FOOTNOTE(B) tail(C). { A = B; token_chain_append(B, C); }
def_footnote ::= LINE_DEF_FOOTNOTE.
+def_glossary(A) ::= LINE_DEF_GLOSSARY(B) tail(C). { A = B; token_chain_append(B, C); }
+def_glossary ::= LINE_DEF_GLOSSARY.
+
def_link(A) ::= LINE_DEF_LINK(B) chunk(C). { A = B; token_chain_append(B, C); }
def_link ::= LINE_DEF_LINK.
-/* Generated by re2c 0.14.3 on Thu Mar 2 09:19:45 2017 */
+/* Generated by re2c 0.14.3 on Thu Mar 2 09:54:25 2017 */
/**
MultiMarkdown 6 -- Lightweight markup processor to produce HTML, LaTeX, and more.
}
+
size_t scan_ref_foot(const char * c) {
const char * marker = NULL;
const char * start = c;
}
-size_t scan_ref_link_no_attributes(const char * c) {
+size_t scan_ref_glossary(const char * c) {
const char * marker = NULL;
const char * start = c;
{
char yych;
- unsigned int yyaccept = 0;
yych = *c;
switch (yych) {
case '\n': goto yy198;
yy198:
{ return 0; }
yy199:
- yyaccept = 0;
yych = *(marker = ++c);
switch (yych) {
- case ' ': goto yy335;
- case '[': goto yy336;
+ case ' ': goto yy211;
+ case '[': goto yy212;
default: goto yy198;
}
yy200:
+ yych = *(marker = ++c);
+ switch (yych) {
+ case '?': goto yy202;
+ default: goto yy198;
+ }
+yy201:
+ yych = *++c;
+ goto yy198;
+yy202:
+ yych = *++c;
+ switch (yych) {
+ case ']': goto yy203;
+ default: goto yy205;
+ }
+yy203:
+ c = marker;
+ goto yy198;
+yy204:
+ ++c;
+ yych = *c;
+yy205:
+ switch (yych) {
+ case 0x00:
+ case '\n':
+ case '\r': goto yy203;
+ case ']': goto yy206;
+ default: goto yy204;
+ }
+yy206:
+ yych = *++c;
+ switch (yych) {
+ case ':': goto yy207;
+ default: goto yy203;
+ }
+yy207:
+ yych = *++c;
+ switch (yych) {
+ case 0x00:
+ case '\n':
+ case '\r': goto yy203;
+ default: goto yy208;
+ }
+yy208:
+ ++c;
+ yych = *c;
+ switch (yych) {
+ case 0x00:
+ case '\n':
+ case '\r': goto yy210;
+ default: goto yy208;
+ }
+yy210:
+ { return (size_t)( c - start ); }
+yy211:
+ yych = *++c;
+ switch (yych) {
+ case ' ': goto yy213;
+ case '[': goto yy212;
+ default: goto yy203;
+ }
+yy212:
+ yych = *++c;
+ switch (yych) {
+ case '?': goto yy202;
+ default: goto yy203;
+ }
+yy213:
+ ++c;
+ switch ((yych = *c)) {
+ case '[': goto yy212;
+ default: goto yy203;
+ }
+}
+
+}
+
+
+size_t scan_ref_link_no_attributes(const char * c) {
+ const char * marker = NULL;
+ const char * start = c;
+
+
+{
+ char yych;
+ unsigned int yyaccept = 0;
+ yych = *c;
+ switch (yych) {
+ case '\n': goto yy216;
+ case ' ': goto yy217;
+ case '[': goto yy218;
+ default: goto yy219;
+ }
+yy216:
+ { return 0; }
+yy217:
+ yyaccept = 0;
+ yych = *(marker = ++c);
+ switch (yych) {
+ case ' ': goto yy353;
+ case '[': goto yy354;
+ default: goto yy216;
+ }
+yy218:
yyaccept = 0;
yych = *(marker = ++c);
switch (yych) {
case 0x00:
case '\n':
case '\r':
- case ']': goto yy198;
- default: goto yy202;
+ case ']': goto yy216;
+ default: goto yy220;
}
-yy201:
+yy219:
yych = *++c;
- goto yy198;
-yy202:
+ goto yy216;
+yy220:
++c;
yych = *c;
-yy203:
+yy221:
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy204;
- case ']': goto yy205;
- default: goto yy202;
+ case '\r': goto yy222;
+ case ']': goto yy223;
+ default: goto yy220;
}
-yy204:
+yy222:
c = marker;
if (yyaccept == 0) {
- goto yy198;
+ goto yy216;
} else {
- goto yy218;
+ goto yy236;
}
-yy205:
+yy223:
yych = *++c;
switch (yych) {
- case ':': goto yy206;
- default: goto yy204;
+ case ':': goto yy224;
+ default: goto yy222;
}
-yy206:
+yy224:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy204;
+ case 0x00: goto yy222;
case '\t':
- case ' ': goto yy206;
- case '\n': goto yy208;
- case '\r': goto yy210;
- case '<': goto yy211;
- default: goto yy213;
+ case ' ': goto yy224;
+ case '\n': goto yy226;
+ case '\r': goto yy228;
+ case '<': goto yy229;
+ default: goto yy231;
}
-yy208:
+yy226:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy204;
+ case '\r': goto yy222;
case '\t':
- case ' ': goto yy208;
- case '<': goto yy211;
- default: goto yy213;
+ case ' ': goto yy226;
+ case '<': goto yy229;
+ default: goto yy231;
}
-yy210:
+yy228:
yych = *++c;
switch (yych) {
case 0x00:
- case '\r': goto yy204;
+ case '\r': goto yy222;
case '\t':
case '\n':
- case ' ': goto yy208;
- case '<': goto yy211;
- default: goto yy213;
+ case ' ': goto yy226;
+ case '<': goto yy229;
+ default: goto yy231;
}
-yy211:
+yy229:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy215;
- case '\n': goto yy219;
- case '\r': goto yy220;
- case '"': goto yy308;
- case '\'': goto yy310;
- case '(': goto yy312;
- case '>': goto yy213;
- default: goto yy211;
+ case ' ': goto yy233;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
+ case '"': goto yy326;
+ case '\'': goto yy328;
+ case '(': goto yy330;
+ case '>': goto yy231;
+ default: goto yy229;
}
-yy213:
+yy231:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy215;
- case '\n': goto yy219;
- case '\r': goto yy220;
- case '"': goto yy221;
- case '\'': goto yy223;
- case '(': goto yy225;
- default: goto yy213;
+ case ' ': goto yy233;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
+ case '"': goto yy239;
+ case '\'': goto yy241;
+ case '(': goto yy243;
+ default: goto yy231;
}
-yy215:
+yy233:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy215;
- case '\n': goto yy219;
- case '\r': goto yy220;
- case '"': goto yy237;
- case '\'': goto yy239;
- case '(': goto yy241;
- default: goto yy204;
+ case ' ': goto yy233;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
+ case '"': goto yy255;
+ case '\'': goto yy257;
+ case '(': goto yy259;
+ default: goto yy222;
}
-yy217:
+yy235:
++c;
-yy218:
+yy236:
{ return (size_t)( c - start ); }
-yy219:
+yy237:
yyaccept = 1;
yych = *(marker = ++c);
switch (yych) {
- case '"': goto yy237;
- case '\'': goto yy239;
- case '(': goto yy241;
- default: goto yy218;
+ case '"': goto yy255;
+ case '\'': goto yy257;
+ case '(': goto yy259;
+ default: goto yy236;
}
-yy220:
+yy238:
yyaccept = 1;
yych = *(marker = ++c);
switch (yych) {
- case '\n': goto yy219;
- case '"': goto yy237;
- case '\'': goto yy239;
- case '(': goto yy241;
- default: goto yy218;
+ case '\n': goto yy237;
+ case '"': goto yy255;
+ case '\'': goto yy257;
+ case '(': goto yy259;
+ default: goto yy236;
}
-yy221:
+yy239:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy306;
- case '\n': goto yy219;
- case '\r': goto yy220;
- case '"': goto yy294;
- case '\'': goto yy284;
- case '(': goto yy229;
- default: goto yy221;
+ case ' ': goto yy324;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
+ case '"': goto yy312;
+ case '\'': goto yy302;
+ case '(': goto yy247;
+ default: goto yy239;
}
-yy223:
+yy241:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy304;
- case '\n': goto yy219;
- case '\r': goto yy220;
- case '"': goto yy284;
- case '\'': goto yy246;
- case '(': goto yy231;
- default: goto yy223;
+ case ' ': goto yy322;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
+ case '"': goto yy302;
+ case '\'': goto yy264;
+ case '(': goto yy249;
+ default: goto yy241;
}
-yy225:
+yy243:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy227;
- case '\n': goto yy219;
- case '\r': goto yy220;
- case '"': goto yy229;
- case '\'': goto yy231;
- case ')': goto yy233;
- default: goto yy225;
+ case ' ': goto yy245;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
+ case '"': goto yy247;
+ case '\'': goto yy249;
+ case ')': goto yy251;
+ default: goto yy243;
}
-yy227:
+yy245:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy227;
- case '\n': goto yy219;
- case '\r': goto yy220;
- case '"': goto yy274;
- case '\'': goto yy258;
- case ')': goto yy243;
- default: goto yy241;
+ case ' ': goto yy245;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
+ case '"': goto yy292;
+ case '\'': goto yy276;
+ case ')': goto yy261;
+ default: goto yy259;
}
-yy229:
+yy247:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy296;
- case '\n': goto yy219;
- case '\r': goto yy220;
- case '"': goto yy298;
- case '\'': goto yy250;
- case ')': goto yy294;
- default: goto yy229;
+ case ' ': goto yy314;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
+ case '"': goto yy316;
+ case '\'': goto yy268;
+ case ')': goto yy312;
+ default: goto yy247;
}
-yy231:
+yy249:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy248;
- case '\n': goto yy219;
- case '\r': goto yy220;
- case '"': goto yy250;
- case '\'': goto yy252;
- case ')': goto yy246;
- default: goto yy231;
+ case ' ': goto yy266;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
+ case '"': goto yy268;
+ case '\'': goto yy270;
+ case ')': goto yy264;
+ default: goto yy249;
}
-yy233:
+yy251:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy234;
- case '\n': goto yy219;
- case '\r': goto yy236;
- case '"': goto yy221;
- case '\'': goto yy223;
- case '(': goto yy225;
- default: goto yy213;
+ case ' ': goto yy252;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
+ case '"': goto yy239;
+ case '\'': goto yy241;
+ case '(': goto yy243;
+ default: goto yy231;
}
-yy234:
+yy252:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy234;
- case '\n': goto yy219;
- case '\r': goto yy236;
- case '"': goto yy237;
- case '\'': goto yy239;
- case '(': goto yy241;
- default: goto yy204;
+ case ' ': goto yy252;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
+ case '"': goto yy255;
+ case '\'': goto yy257;
+ case '(': goto yy259;
+ default: goto yy222;
}
-yy236:
+yy254:
yyaccept = 1;
yych = *(marker = ++c);
switch (yych) {
- case '\n': goto yy219;
- case '"': goto yy237;
- case '\'': goto yy239;
- case '(': goto yy241;
- default: goto yy218;
+ case '\n': goto yy237;
+ case '"': goto yy255;
+ case '\'': goto yy257;
+ case '(': goto yy259;
+ default: goto yy236;
}
-yy237:
+yy255:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy204;
- case '"': goto yy243;
- default: goto yy237;
+ case '\r': goto yy222;
+ case '"': goto yy261;
+ default: goto yy255;
}
-yy239:
+yy257:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy204;
- case '\'': goto yy243;
- default: goto yy239;
+ case '\r': goto yy222;
+ case '\'': goto yy261;
+ default: goto yy257;
}
-yy241:
+yy259:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy204;
- case ')': goto yy243;
- default: goto yy241;
+ case '\r': goto yy222;
+ case ')': goto yy261;
+ default: goto yy259;
}
-yy243:
+yy261:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '\n': goto yy217;
+ case '\n': goto yy235;
case '\t':
- case ' ': goto yy243;
- case '\r': goto yy245;
- default: goto yy204;
+ case ' ': goto yy261;
+ case '\r': goto yy263;
+ default: goto yy222;
}
-yy245:
+yy263:
yych = *++c;
switch (yych) {
- case '\n': goto yy217;
- default: goto yy218;
+ case '\n': goto yy235;
+ default: goto yy236;
}
-yy246:
+yy264:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy292;
- case '\n': goto yy219;
- case '\r': goto yy236;
- case '"': goto yy284;
- case '\'': goto yy246;
- case '(': goto yy231;
- default: goto yy223;
+ case ' ': goto yy310;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
+ case '"': goto yy302;
+ case '\'': goto yy264;
+ case '(': goto yy249;
+ default: goto yy241;
}
-yy248:
+yy266:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy248;
- case '\n': goto yy219;
- case '\r': goto yy220;
- case '"': goto yy260;
- case '\'': goto yy262;
- case ')': goto yy256;
- default: goto yy258;
+ case ' ': goto yy266;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
+ case '"': goto yy278;
+ case '\'': goto yy280;
+ case ')': goto yy274;
+ default: goto yy276;
}
-yy250:
+yy268:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy278;
- case '\n': goto yy219;
- case '\r': goto yy220;
+ case ' ': goto yy296;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
case '"':
- case '\'': goto yy276;
- case ')': goto yy280;
- default: goto yy250;
+ case '\'': goto yy294;
+ case ')': goto yy298;
+ default: goto yy268;
}
-yy252:
+yy270:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy254;
- case '\n': goto yy219;
- case '\r': goto yy236;
- case '"': goto yy250;
- case '\'': goto yy252;
- case ')': goto yy246;
- default: goto yy231;
+ case ' ': goto yy272;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
+ case '"': goto yy268;
+ case '\'': goto yy270;
+ case ')': goto yy264;
+ default: goto yy249;
}
-yy254:
+yy272:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy254;
- case '\n': goto yy219;
- case '\r': goto yy236;
- case '"': goto yy260;
- case '\'': goto yy262;
- case ')': goto yy256;
- default: goto yy258;
+ case ' ': goto yy272;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
+ case '"': goto yy278;
+ case '\'': goto yy280;
+ case ')': goto yy274;
+ default: goto yy276;
}
-yy256:
+yy274:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '\n': goto yy217;
+ case '\n': goto yy235;
case '\t':
- case ' ': goto yy256;
- case '\r': goto yy245;
- case '\'': goto yy243;
- default: goto yy239;
+ case ' ': goto yy274;
+ case '\r': goto yy263;
+ case '\'': goto yy261;
+ default: goto yy257;
}
-yy258:
+yy276:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy204;
- case '\'': goto yy264;
- case ')': goto yy256;
- default: goto yy258;
+ case '\r': goto yy222;
+ case '\'': goto yy282;
+ case ')': goto yy274;
+ default: goto yy276;
}
-yy260:
+yy278:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy204;
- case '"': goto yy262;
- case '\'': goto yy266;
- case ')': goto yy268;
- default: goto yy260;
+ case '\r': goto yy222;
+ case '"': goto yy280;
+ case '\'': goto yy284;
+ case ')': goto yy286;
+ default: goto yy278;
}
-yy262:
+yy280:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '\n': goto yy217;
+ case '\n': goto yy235;
case '\t':
- case ' ': goto yy262;
- case '\r': goto yy245;
- case '\'': goto yy264;
- case ')': goto yy256;
- default: goto yy258;
+ case ' ': goto yy280;
+ case '\r': goto yy263;
+ case '\'': goto yy282;
+ case ')': goto yy274;
+ default: goto yy276;
}
-yy264:
+yy282:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '\n': goto yy217;
+ case '\n': goto yy235;
case '\t':
- case ' ': goto yy264;
- case '\r': goto yy245;
- case ')': goto yy243;
- default: goto yy241;
+ case ' ': goto yy282;
+ case '\r': goto yy263;
+ case ')': goto yy261;
+ default: goto yy259;
}
-yy266:
+yy284:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '\n': goto yy217;
+ case '\n': goto yy235;
case '\t':
- case ' ': goto yy266;
- case '\r': goto yy245;
- case '"': goto yy264;
- case ')': goto yy270;
- default: goto yy274;
+ case ' ': goto yy284;
+ case '\r': goto yy263;
+ case '"': goto yy282;
+ case ')': goto yy288;
+ default: goto yy292;
}
-yy268:
+yy286:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '\n': goto yy217;
+ case '\n': goto yy235;
case '\t':
- case ' ': goto yy268;
- case '\r': goto yy245;
- case '"': goto yy256;
- case '\'': goto yy270;
- default: goto yy272;
+ case ' ': goto yy286;
+ case '\r': goto yy263;
+ case '"': goto yy274;
+ case '\'': goto yy288;
+ default: goto yy290;
}
-yy270:
+yy288:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '\n': goto yy217;
+ case '\n': goto yy235;
case '\t':
- case ' ': goto yy270;
- case '\r': goto yy245;
- case '"': goto yy243;
- default: goto yy237;
+ case ' ': goto yy288;
+ case '\r': goto yy263;
+ case '"': goto yy261;
+ default: goto yy255;
}
-yy272:
+yy290:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy204;
- case '"': goto yy256;
- case '\'': goto yy270;
- default: goto yy272;
+ case '\r': goto yy222;
+ case '"': goto yy274;
+ case '\'': goto yy288;
+ default: goto yy290;
}
-yy274:
+yy292:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy204;
- case '"': goto yy264;
- case ')': goto yy270;
- default: goto yy274;
+ case '\r': goto yy222;
+ case '"': goto yy282;
+ case ')': goto yy288;
+ default: goto yy292;
}
-yy276:
+yy294:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy290;
- case '\n': goto yy219;
- case '\r': goto yy236;
+ case ' ': goto yy308;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
case '"':
- case '\'': goto yy276;
- case ')': goto yy280;
- default: goto yy250;
+ case '\'': goto yy294;
+ case ')': goto yy298;
+ default: goto yy268;
}
-yy278:
+yy296:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy278;
- case '\n': goto yy219;
- case '\r': goto yy220;
+ case ' ': goto yy296;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
case '"':
- case '\'': goto yy288;
- case ')': goto yy268;
- default: goto yy260;
+ case '\'': goto yy306;
+ case ')': goto yy286;
+ default: goto yy278;
}
-yy280:
+yy298:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy282;
- case '\n': goto yy219;
- case '\r': goto yy236;
+ case ' ': goto yy300;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
case '"':
- case '\'': goto yy280;
- case '(': goto yy250;
- default: goto yy284;
+ case '\'': goto yy298;
+ case '(': goto yy268;
+ default: goto yy302;
}
-yy282:
+yy300:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy282;
- case '\n': goto yy219;
- case '\r': goto yy236;
+ case ' ': goto yy300;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
case '"':
- case '\'': goto yy268;
- case '(': goto yy260;
- default: goto yy272;
+ case '\'': goto yy286;
+ case '(': goto yy278;
+ default: goto yy290;
}
-yy284:
+yy302:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy286;
- case '\n': goto yy219;
- case '\r': goto yy220;
+ case ' ': goto yy304;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
case '"':
- case '\'': goto yy280;
- case '(': goto yy250;
- default: goto yy284;
+ case '\'': goto yy298;
+ case '(': goto yy268;
+ default: goto yy302;
}
-yy286:
+yy304:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy286;
- case '\n': goto yy219;
- case '\r': goto yy220;
+ case ' ': goto yy304;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
case '"':
- case '\'': goto yy268;
- case '(': goto yy260;
- default: goto yy272;
+ case '\'': goto yy286;
+ case '(': goto yy278;
+ default: goto yy290;
}
-yy288:
+yy306:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '\n': goto yy217;
+ case '\n': goto yy235;
case '\t':
- case ' ': goto yy288;
- case '\r': goto yy245;
- case '"': goto yy262;
- case '\'': goto yy266;
- case ')': goto yy268;
- default: goto yy260;
+ case ' ': goto yy306;
+ case '\r': goto yy263;
+ case '"': goto yy280;
+ case '\'': goto yy284;
+ case ')': goto yy286;
+ default: goto yy278;
}
-yy290:
+yy308:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy290;
- case '\n': goto yy219;
- case '\r': goto yy236;
+ case ' ': goto yy308;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
case '"':
- case '\'': goto yy288;
- case ')': goto yy268;
- default: goto yy260;
+ case '\'': goto yy306;
+ case ')': goto yy286;
+ default: goto yy278;
}
-yy292:
+yy310:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy292;
- case '\n': goto yy219;
- case '\r': goto yy236;
- case '"': goto yy272;
- case '\'': goto yy256;
- case '(': goto yy258;
- default: goto yy239;
+ case ' ': goto yy310;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
+ case '"': goto yy290;
+ case '\'': goto yy274;
+ case '(': goto yy276;
+ default: goto yy257;
}
-yy294:
+yy312:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy302;
- case '\n': goto yy219;
- case '\r': goto yy236;
- case '"': goto yy294;
- case '\'': goto yy284;
- case '(': goto yy229;
- default: goto yy221;
+ case ' ': goto yy320;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
+ case '"': goto yy312;
+ case '\'': goto yy302;
+ case '(': goto yy247;
+ default: goto yy239;
}
-yy296:
+yy314:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy296;
- case '\n': goto yy219;
- case '\r': goto yy220;
- case '"': goto yy266;
- case '\'': goto yy260;
- case ')': goto yy270;
- default: goto yy274;
+ case ' ': goto yy314;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
+ case '"': goto yy284;
+ case '\'': goto yy278;
+ case ')': goto yy288;
+ default: goto yy292;
}
-yy298:
+yy316:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy300;
- case '\n': goto yy219;
- case '\r': goto yy236;
- case '"': goto yy298;
- case '\'': goto yy250;
- case ')': goto yy294;
- default: goto yy229;
+ case ' ': goto yy318;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
+ case '"': goto yy316;
+ case '\'': goto yy268;
+ case ')': goto yy312;
+ default: goto yy247;
}
-yy300:
+yy318:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy300;
- case '\n': goto yy219;
- case '\r': goto yy236;
- case '"': goto yy266;
- case '\'': goto yy260;
- case ')': goto yy270;
- default: goto yy274;
+ case ' ': goto yy318;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
+ case '"': goto yy284;
+ case '\'': goto yy278;
+ case ')': goto yy288;
+ default: goto yy292;
}
-yy302:
+yy320:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy302;
- case '\n': goto yy219;
- case '\r': goto yy236;
- case '"': goto yy270;
- case '\'': goto yy272;
- case '(': goto yy274;
- default: goto yy237;
+ case ' ': goto yy320;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
+ case '"': goto yy288;
+ case '\'': goto yy290;
+ case '(': goto yy292;
+ default: goto yy255;
}
-yy304:
+yy322:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy304;
- case '\n': goto yy219;
- case '\r': goto yy220;
- case '"': goto yy272;
- case '\'': goto yy256;
- case '(': goto yy258;
- default: goto yy239;
+ case ' ': goto yy322;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
+ case '"': goto yy290;
+ case '\'': goto yy274;
+ case '(': goto yy276;
+ default: goto yy257;
}
-yy306:
+yy324:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy306;
- case '\n': goto yy219;
- case '\r': goto yy220;
- case '"': goto yy270;
- case '\'': goto yy272;
- case '(': goto yy274;
- default: goto yy237;
+ case ' ': goto yy324;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
+ case '"': goto yy288;
+ case '\'': goto yy290;
+ case '(': goto yy292;
+ default: goto yy255;
}
-yy308:
+yy326:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy306;
- case '\n': goto yy219;
- case '\r': goto yy220;
- case '"': goto yy331;
- case '\'': goto yy329;
- case '(': goto yy314;
- case '>': goto yy221;
- default: goto yy308;
+ case ' ': goto yy324;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
+ case '"': goto yy349;
+ case '\'': goto yy347;
+ case '(': goto yy332;
+ case '>': goto yy239;
+ default: goto yy326;
}
-yy310:
+yy328:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy304;
- case '\n': goto yy219;
- case '\r': goto yy220;
- case '"': goto yy329;
- case '\'': goto yy319;
- case '(': goto yy316;
- case '>': goto yy223;
- default: goto yy310;
+ case ' ': goto yy322;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
+ case '"': goto yy347;
+ case '\'': goto yy337;
+ case '(': goto yy334;
+ case '>': goto yy241;
+ default: goto yy328;
}
-yy312:
+yy330:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy227;
- case '\n': goto yy219;
- case '\r': goto yy220;
- case '"': goto yy314;
- case '\'': goto yy316;
- case ')': goto yy318;
- case '>': goto yy225;
- default: goto yy312;
+ case ' ': goto yy245;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
+ case '"': goto yy332;
+ case '\'': goto yy334;
+ case ')': goto yy336;
+ case '>': goto yy243;
+ default: goto yy330;
}
-yy314:
+yy332:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy296;
- case '\n': goto yy219;
- case '\r': goto yy220;
- case '"': goto yy333;
- case '\'': goto yy321;
- case ')': goto yy331;
- case '>': goto yy229;
- default: goto yy314;
+ case ' ': goto yy314;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
+ case '"': goto yy351;
+ case '\'': goto yy339;
+ case ')': goto yy349;
+ case '>': goto yy247;
+ default: goto yy332;
}
-yy316:
+yy334:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy248;
- case '\n': goto yy219;
- case '\r': goto yy220;
- case '"': goto yy321;
- case '\'': goto yy323;
- case ')': goto yy319;
- case '>': goto yy231;
- default: goto yy316;
+ case ' ': goto yy266;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
+ case '"': goto yy339;
+ case '\'': goto yy341;
+ case ')': goto yy337;
+ case '>': goto yy249;
+ default: goto yy334;
}
-yy318:
+yy336:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy234;
- case '\n': goto yy219;
- case '\r': goto yy236;
- case '"': goto yy308;
- case '\'': goto yy310;
- case '(': goto yy312;
- case '>': goto yy213;
- default: goto yy211;
+ case ' ': goto yy252;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
+ case '"': goto yy326;
+ case '\'': goto yy328;
+ case '(': goto yy330;
+ case '>': goto yy231;
+ default: goto yy229;
}
-yy319:
+yy337:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy292;
- case '\n': goto yy219;
- case '\r': goto yy236;
- case '"': goto yy329;
- case '\'': goto yy319;
- case '(': goto yy316;
- case '>': goto yy223;
- default: goto yy310;
+ case ' ': goto yy310;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
+ case '"': goto yy347;
+ case '\'': goto yy337;
+ case '(': goto yy334;
+ case '>': goto yy241;
+ default: goto yy328;
}
-yy321:
+yy339:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy278;
- case '\n': goto yy219;
- case '\r': goto yy220;
+ case ' ': goto yy296;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
case '"':
- case '\'': goto yy325;
- case ')': goto yy327;
- case '>': goto yy250;
- default: goto yy321;
+ case '\'': goto yy343;
+ case ')': goto yy345;
+ case '>': goto yy268;
+ default: goto yy339;
}
-yy323:
+yy341:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy254;
- case '\n': goto yy219;
- case '\r': goto yy236;
- case '"': goto yy321;
- case '\'': goto yy323;
- case ')': goto yy319;
- case '>': goto yy231;
- default: goto yy316;
+ case ' ': goto yy272;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
+ case '"': goto yy339;
+ case '\'': goto yy341;
+ case ')': goto yy337;
+ case '>': goto yy249;
+ default: goto yy334;
}
-yy325:
+yy343:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy290;
- case '\n': goto yy219;
- case '\r': goto yy236;
+ case ' ': goto yy308;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
case '"':
- case '\'': goto yy325;
- case ')': goto yy327;
- case '>': goto yy250;
- default: goto yy321;
+ case '\'': goto yy343;
+ case ')': goto yy345;
+ case '>': goto yy268;
+ default: goto yy339;
}
-yy327:
+yy345:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy282;
- case '\n': goto yy219;
- case '\r': goto yy236;
+ case ' ': goto yy300;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
case '"':
- case '\'': goto yy327;
- case '(': goto yy321;
- case '>': goto yy284;
- default: goto yy329;
+ case '\'': goto yy345;
+ case '(': goto yy339;
+ case '>': goto yy302;
+ default: goto yy347;
}
-yy329:
+yy347:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy286;
- case '\n': goto yy219;
- case '\r': goto yy220;
+ case ' ': goto yy304;
+ case '\n': goto yy237;
+ case '\r': goto yy238;
case '"':
- case '\'': goto yy327;
- case '(': goto yy321;
- case '>': goto yy284;
- default: goto yy329;
+ case '\'': goto yy345;
+ case '(': goto yy339;
+ case '>': goto yy302;
+ default: goto yy347;
}
-yy331:
+yy349:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy302;
- case '\n': goto yy219;
- case '\r': goto yy236;
- case '"': goto yy331;
- case '\'': goto yy329;
- case '(': goto yy314;
- case '>': goto yy221;
- default: goto yy308;
+ case ' ': goto yy320;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
+ case '"': goto yy349;
+ case '\'': goto yy347;
+ case '(': goto yy332;
+ case '>': goto yy239;
+ default: goto yy326;
}
-yy333:
+yy351:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy217;
+ case 0x00: goto yy235;
case '\t':
- case ' ': goto yy300;
- case '\n': goto yy219;
- case '\r': goto yy236;
- case '"': goto yy333;
- case '\'': goto yy321;
- case ')': goto yy331;
- case '>': goto yy229;
- default: goto yy314;
+ case ' ': goto yy318;
+ case '\n': goto yy237;
+ case '\r': goto yy254;
+ case '"': goto yy351;
+ case '\'': goto yy339;
+ case ')': goto yy349;
+ case '>': goto yy247;
+ default: goto yy332;
}
-yy335:
+yy353:
yych = *++c;
switch (yych) {
- case ' ': goto yy337;
- case '[': goto yy336;
- default: goto yy204;
+ case ' ': goto yy355;
+ case '[': goto yy354;
+ default: goto yy222;
}
-yy336:
+yy354:
yych = *++c;
switch (yych) {
- case ']': goto yy204;
- default: goto yy203;
+ case ']': goto yy222;
+ default: goto yy221;
}
-yy337:
+yy355:
++c;
switch ((yych = *c)) {
- case '[': goto yy336;
- default: goto yy204;
+ case '[': goto yy354;
+ default: goto yy222;
}
}
char yych;
yych = *c;
switch (yych) {
- case '\n': goto yy340;
- case ' ': goto yy341;
- case '[': goto yy342;
- default: goto yy343;
+ case '\n': goto yy358;
+ case ' ': goto yy359;
+ case '[': goto yy360;
+ default: goto yy361;
}
-yy340:
+yy358:
{ return 0; }
-yy341:
+yy359:
yych = *(marker = ++c);
switch (yych) {
- case ' ': goto yy352;
- case '[': goto yy353;
- default: goto yy340;
+ case ' ': goto yy370;
+ case '[': goto yy371;
+ default: goto yy358;
}
-yy342:
+yy360:
yych = *(marker = ++c);
switch (yych) {
case 0x00:
case '\n':
case '\r':
- case ']': goto yy340;
- default: goto yy344;
+ case ']': goto yy358;
+ default: goto yy362;
}
-yy343:
+yy361:
yych = *++c;
- goto yy340;
-yy344:
+ goto yy358;
+yy362:
++c;
yych = *c;
-yy345:
+yy363:
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy346;
- case ']': goto yy347;
- default: goto yy344;
+ case '\r': goto yy364;
+ case ']': goto yy365;
+ default: goto yy362;
}
-yy346:
+yy364:
c = marker;
- goto yy340;
-yy347:
+ goto yy358;
+yy365:
yych = *++c;
switch (yych) {
- case ':': goto yy348;
- default: goto yy346;
+ case ':': goto yy366;
+ default: goto yy364;
}
-yy348:
+yy366:
yych = *++c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy346;
- default: goto yy349;
+ case '\r': goto yy364;
+ default: goto yy367;
}
-yy349:
+yy367:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy351;
- default: goto yy349;
+ case '\r': goto yy369;
+ default: goto yy367;
}
-yy351:
+yy369:
{ return (size_t)( c - start ); }
-yy352:
+yy370:
yych = *++c;
switch (yych) {
- case ' ': goto yy354;
- case '[': goto yy353;
- default: goto yy346;
+ case ' ': goto yy372;
+ case '[': goto yy371;
+ default: goto yy364;
}
-yy353:
+yy371:
yych = *++c;
switch (yych) {
- case ']': goto yy346;
- default: goto yy345;
+ case ']': goto yy364;
+ default: goto yy363;
}
-yy354:
+yy372:
++c;
switch ((yych = *c)) {
- case '[': goto yy353;
- default: goto yy346;
+ case '[': goto yy371;
+ default: goto yy364;
}
}
char yych;
yych = *c;
switch (yych) {
- case '\n': goto yy357;
- case '<': goto yy358;
- default: goto yy359;
+ case '\n': goto yy375;
+ case '<': goto yy376;
+ default: goto yy377;
}
-yy357:
+yy375:
{ return 0; }
-yy358:
+yy376:
yych = *(marker = ++c);
switch (yych) {
- case '!': goto yy360;
- case '/': goto yy362;
+ case '!': goto yy378;
+ case '/': goto yy380;
case 'A':
case 'B':
case 'C':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy363;
- default: goto yy357;
+ case 'z': goto yy381;
+ default: goto yy375;
}
-yy359:
+yy377:
yych = *++c;
- goto yy357;
-yy360:
+ goto yy375;
+yy378:
yych = *++c;
switch (yych) {
- case '-': goto yy391;
- default: goto yy361;
+ case '-': goto yy409;
+ default: goto yy379;
}
-yy361:
+yy379:
c = marker;
- goto yy357;
-yy362:
+ goto yy375;
+yy380:
yych = *++c;
switch (yych) {
case 'A':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy387;
- default: goto yy361;
+ case 'z': goto yy405;
+ default: goto yy379;
}
-yy363:
+yy381:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy367;
- case '\n': goto yy369;
- case '\r': goto yy371;
+ case ' ': goto yy385;
+ case '\n': goto yy387;
+ case '\r': goto yy389;
case '-':
case '0':
case '1':
case '6':
case '7':
case '8':
- case '9': goto yy363;
- case '/': goto yy376;
+ case '9': goto yy381;
+ case '/': goto yy394;
case ':':
- case '_': goto yy372;
- case '>': goto yy374;
+ case '_': goto yy390;
+ case '>': goto yy392;
case 'A':
case 'B':
case 'C':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy365;
- default: goto yy361;
+ case 'z': goto yy383;
+ default: goto yy379;
}
-yy365:
+yy383:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy367;
- case '\n': goto yy369;
- case '\r': goto yy371;
+ case ' ': goto yy385;
+ case '\n': goto yy387;
+ case '\r': goto yy389;
case '-':
case '0':
case '1':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy365;
+ case 'z': goto yy383;
case '.':
case ':':
- case '_': goto yy372;
- case '/': goto yy376;
- case '=': goto yy377;
- case '>': goto yy374;
- default: goto yy361;
+ case '_': goto yy390;
+ case '/': goto yy394;
+ case '=': goto yy395;
+ case '>': goto yy392;
+ default: goto yy379;
}
-yy367:
+yy385:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy367;
- case '\n': goto yy369;
- case '\r': goto yy371;
- case '/': goto yy376;
+ case ' ': goto yy385;
+ case '\n': goto yy387;
+ case '\r': goto yy389;
+ case '/': goto yy394;
case ':':
case 'A':
case 'B':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy372;
- case '>': goto yy374;
- default: goto yy361;
+ case 'z': goto yy390;
+ case '>': goto yy392;
+ default: goto yy379;
}
-yy369:
+yy387:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy369;
+ case ' ': goto yy387;
case ':':
case 'A':
case 'B':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy372;
- default: goto yy361;
+ case 'z': goto yy390;
+ default: goto yy379;
}
-yy371:
+yy389:
++c;
yych = *c;
switch (yych) {
case '\t':
case '\n':
- case ' ': goto yy369;
+ case ' ': goto yy387;
case ':':
case 'A':
case 'B':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy372;
- default: goto yy361;
+ case 'z': goto yy390;
+ default: goto yy379;
}
-yy372:
+yy390:
++c;
yych = *c;
switch (yych) {
case 'w':
case 'x':
case 'y':
- case 'z': goto yy372;
- case '=': goto yy377;
- default: goto yy361;
+ case 'z': goto yy390;
+ case '=': goto yy395;
+ default: goto yy379;
}
-yy374:
+yy392:
++c;
{ return (size_t)( c - start ); }
-yy376:
+yy394:
yych = *++c;
switch (yych) {
- case '>': goto yy374;
- default: goto yy361;
+ case '>': goto yy392;
+ default: goto yy379;
}
-yy377:
+yy395:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy377;
- case '"': goto yy379;
- case '\'': goto yy381;
+ case ' ': goto yy395;
+ case '"': goto yy397;
+ case '\'': goto yy399;
case '.':
case '0':
case '1':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy383;
- default: goto yy361;
+ case 'z': goto yy401;
+ default: goto yy379;
}
-yy379:
+yy397:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy361;
- case '"': goto yy367;
- default: goto yy379;
+ case '\r': goto yy379;
+ case '"': goto yy385;
+ default: goto yy397;
}
-yy381:
+yy399:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy361;
- case '\'': goto yy367;
- default: goto yy381;
+ case '\r': goto yy379;
+ case '\'': goto yy385;
+ default: goto yy399;
}
-yy383:
+yy401:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy367;
- case '\n': goto yy369;
- case '\r': goto yy371;
+ case ' ': goto yy385;
+ case '\n': goto yy387;
+ case '\r': goto yy389;
case '.':
case '0':
case '1':
case '6':
case '7':
case '8':
- case '9': goto yy383;
- case '/': goto yy376;
+ case '9': goto yy401;
+ case '/': goto yy394;
case ':':
- case '_': goto yy372;
- case '>': goto yy374;
+ case '_': goto yy390;
+ case '>': goto yy392;
case 'A':
case 'B':
case 'C':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy385;
- default: goto yy361;
+ case 'z': goto yy403;
+ default: goto yy379;
}
-yy385:
+yy403:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy367;
- case '\n': goto yy369;
- case '\r': goto yy371;
+ case ' ': goto yy385;
+ case '\n': goto yy387;
+ case '\r': goto yy389;
case '-':
case ':':
- case '_': goto yy372;
+ case '_': goto yy390;
case '.':
case '0':
case '1':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy385;
- case '/': goto yy376;
- case '=': goto yy377;
- case '>': goto yy374;
- default: goto yy361;
+ case 'z': goto yy403;
+ case '/': goto yy394;
+ case '=': goto yy395;
+ case '>': goto yy392;
+ default: goto yy379;
}
-yy387:
+yy405:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy389;
+ case ' ': goto yy407;
case '-':
case '0':
case '1':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy387;
- case '>': goto yy374;
- default: goto yy361;
+ case 'z': goto yy405;
+ case '>': goto yy392;
+ default: goto yy379;
}
-yy389:
+yy407:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy389;
- case '>': goto yy374;
- default: goto yy361;
+ case ' ': goto yy407;
+ case '>': goto yy392;
+ default: goto yy379;
}
-yy391:
+yy409:
yych = *++c;
switch (yych) {
- case '-': goto yy392;
- default: goto yy361;
+ case '-': goto yy410;
+ default: goto yy379;
}
-yy392:
+yy410:
yych = *++c;
switch (yych) {
- case '-': goto yy361;
- default: goto yy394;
+ case '-': goto yy379;
+ default: goto yy412;
}
-yy393:
+yy411:
++c;
yych = *c;
-yy394:
+yy412:
switch (yych) {
case 0x00:
- case '>': goto yy361;
- case '-': goto yy395;
- default: goto yy393;
+ case '>': goto yy379;
+ case '-': goto yy413;
+ default: goto yy411;
}
-yy395:
+yy413:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '>': goto yy361;
- case '-': goto yy396;
- default: goto yy393;
+ case '>': goto yy379;
+ case '-': goto yy414;
+ default: goto yy411;
}
-yy396:
+yy414:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy361;
- case '-': goto yy396;
- case '>': goto yy374;
- default: goto yy393;
+ case 0x00: goto yy379;
+ case '-': goto yy414;
+ case '>': goto yy392;
+ default: goto yy411;
}
}
char yych;
yych = *c;
switch (yych) {
- case '\n': goto yy400;
- case '<': goto yy401;
- default: goto yy402;
+ case '\n': goto yy418;
+ case '<': goto yy419;
+ default: goto yy420;
}
-yy400:
+yy418:
{ return 0; }
-yy401:
+yy419:
yych = *(marker = ++c);
switch (yych) {
- case '!': goto yy403;
- default: goto yy400;
+ case '!': goto yy421;
+ default: goto yy418;
}
-yy402:
+yy420:
yych = *++c;
- goto yy400;
-yy403:
+ goto yy418;
+yy421:
yych = *++c;
switch (yych) {
- case '-': goto yy405;
- default: goto yy404;
+ case '-': goto yy423;
+ default: goto yy422;
}
-yy404:
+yy422:
c = marker;
- goto yy400;
-yy405:
+ goto yy418;
+yy423:
yych = *++c;
switch (yych) {
- case '-': goto yy406;
- default: goto yy404;
+ case '-': goto yy424;
+ default: goto yy422;
}
-yy406:
+yy424:
yych = *++c;
switch (yych) {
- case '-': goto yy404;
- default: goto yy408;
+ case '-': goto yy422;
+ default: goto yy426;
}
-yy407:
+yy425:
++c;
yych = *c;
-yy408:
+yy426:
switch (yych) {
case 0x00:
- case '>': goto yy404;
- case '-': goto yy409;
- default: goto yy407;
+ case '>': goto yy422;
+ case '-': goto yy427;
+ default: goto yy425;
}
-yy409:
+yy427:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '>': goto yy404;
- case '-': goto yy410;
- default: goto yy407;
+ case '>': goto yy422;
+ case '-': goto yy428;
+ default: goto yy425;
}
-yy410:
+yy428:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy404;
- case '-': goto yy410;
- case '>': goto yy412;
- default: goto yy407;
+ case 0x00: goto yy422;
+ case '-': goto yy428;
+ case '>': goto yy430;
+ default: goto yy425;
}
-yy412:
+yy430:
++c;
{ return (size_t)( c - start ); }
}
char yych;
yych = *c;
switch (yych) {
- case '\n': goto yy416;
- case '<': goto yy417;
- default: goto yy418;
+ case '\n': goto yy434;
+ case '<': goto yy435;
+ default: goto yy436;
}
-yy416:
+yy434:
{ return 0; }
-yy417:
+yy435:
yych = *(marker = ++c);
switch (yych) {
- case '/': goto yy419;
+ case '/': goto yy437;
case 'A':
- case 'a': goto yy422;
+ case 'a': goto yy440;
case 'B':
- case 'b': goto yy423;
+ case 'b': goto yy441;
case 'C':
- case 'c': goto yy424;
+ case 'c': goto yy442;
case 'D':
- case 'd': goto yy425;
+ case 'd': goto yy443;
case 'F':
- case 'f': goto yy426;
+ case 'f': goto yy444;
case 'H':
- case 'h': goto yy427;
+ case 'h': goto yy445;
case 'I':
- case 'i': goto yy428;
+ case 'i': goto yy446;
case 'L':
- case 'l': goto yy429;
+ case 'l': goto yy447;
case 'M':
- case 'm': goto yy430;
+ case 'm': goto yy448;
case 'N':
- case 'n': goto yy431;
+ case 'n': goto yy449;
case 'O':
- case 'o': goto yy432;
+ case 'o': goto yy450;
case 'P':
- case 'p': goto yy421;
+ case 'p': goto yy439;
case 'S':
- case 's': goto yy433;
+ case 's': goto yy451;
case 'T':
- case 't': goto yy434;
+ case 't': goto yy452;
case 'U':
- case 'u': goto yy435;
+ case 'u': goto yy453;
case 'V':
- case 'v': goto yy436;
- default: goto yy416;
+ case 'v': goto yy454;
+ default: goto yy434;
}
-yy418:
+yy436:
yych = *++c;
- goto yy416;
-yy419:
+ goto yy434;
+yy437:
yych = *++c;
switch (yych) {
case 'A':
- case 'a': goto yy422;
+ case 'a': goto yy440;
case 'B':
- case 'b': goto yy423;
+ case 'b': goto yy441;
case 'C':
- case 'c': goto yy424;
+ case 'c': goto yy442;
case 'D':
- case 'd': goto yy425;
+ case 'd': goto yy443;
case 'F':
- case 'f': goto yy426;
+ case 'f': goto yy444;
case 'H':
- case 'h': goto yy427;
+ case 'h': goto yy445;
case 'I':
- case 'i': goto yy428;
+ case 'i': goto yy446;
case 'L':
- case 'l': goto yy429;
+ case 'l': goto yy447;
case 'M':
- case 'm': goto yy430;
+ case 'm': goto yy448;
case 'N':
- case 'n': goto yy431;
+ case 'n': goto yy449;
case 'O':
- case 'o': goto yy432;
+ case 'o': goto yy450;
case 'P':
- case 'p': goto yy421;
+ case 'p': goto yy439;
case 'S':
- case 's': goto yy433;
+ case 's': goto yy451;
case 'T':
- case 't': goto yy434;
+ case 't': goto yy452;
case 'U':
- case 'u': goto yy435;
+ case 'u': goto yy453;
case 'V':
- case 'v': goto yy436;
- default: goto yy420;
+ case 'v': goto yy454;
+ default: goto yy438;
}
-yy420:
+yy438:
c = marker;
- goto yy416;
-yy421:
+ goto yy434;
+yy439:
yych = *++c;
switch (yych) {
- case '/': goto yy448;
- case '>': goto yy449;
+ case '/': goto yy466;
+ case '>': goto yy467;
case 'R':
- case 'r': goto yy568;
- default: goto yy442;
+ case 'r': goto yy586;
+ default: goto yy460;
}
-yy422:
+yy440:
yych = *++c;
switch (yych) {
case 'D':
- case 'd': goto yy557;
+ case 'd': goto yy575;
case 'R':
- case 'r': goto yy556;
+ case 'r': goto yy574;
case 'S':
- case 's': goto yy555;
- default: goto yy420;
+ case 's': goto yy573;
+ default: goto yy438;
}
-yy423:
+yy441:
yych = *++c;
switch (yych) {
case 'L':
- case 'l': goto yy547;
- default: goto yy420;
+ case 'l': goto yy565;
+ default: goto yy438;
}
-yy424:
+yy442:
yych = *++c;
switch (yych) {
case 'A':
- case 'a': goto yy540;
+ case 'a': goto yy558;
case 'E':
- case 'e': goto yy539;
- default: goto yy420;
+ case 'e': goto yy557;
+ default: goto yy438;
}
-yy425:
+yy443:
yych = *++c;
switch (yych) {
case 'D':
case 'T':
case 'd':
case 'l':
- case 't': goto yy440;
+ case 't': goto yy458;
case 'I':
- case 'i': goto yy538;
- default: goto yy420;
+ case 'i': goto yy556;
+ default: goto yy438;
}
-yy426:
+yy444:
yych = *++c;
switch (yych) {
case 'I':
- case 'i': goto yy514;
+ case 'i': goto yy532;
case 'O':
- case 'o': goto yy513;
+ case 'o': goto yy531;
case 'R':
- case 'r': goto yy512;
- default: goto yy420;
+ case 'r': goto yy530;
+ default: goto yy438;
}
-yy427:
+yy445:
yych = *++c;
switch (yych) {
case '1':
case '5':
case '6':
case 'R':
- case 'r': goto yy440;
+ case 'r': goto yy458;
case 'E':
- case 'e': goto yy505;
+ case 'e': goto yy523;
case 'G':
- case 'g': goto yy504;
- default: goto yy420;
+ case 'g': goto yy522;
+ default: goto yy438;
}
-yy428:
+yy446:
yych = *++c;
switch (yych) {
case 'S':
- case 's': goto yy499;
- default: goto yy420;
+ case 's': goto yy517;
+ default: goto yy438;
}
-yy429:
+yy447:
yych = *++c;
switch (yych) {
case 'I':
- case 'i': goto yy440;
- default: goto yy420;
+ case 'i': goto yy458;
+ default: goto yy438;
}
-yy430:
+yy448:
yych = *++c;
switch (yych) {
case 'A':
- case 'a': goto yy496;
+ case 'a': goto yy514;
case 'E':
- case 'e': goto yy495;
- default: goto yy420;
+ case 'e': goto yy513;
+ default: goto yy438;
}
-yy431:
+yy449:
yych = *++c;
switch (yych) {
case 'A':
- case 'a': goto yy484;
+ case 'a': goto yy502;
case 'O':
- case 'o': goto yy483;
- default: goto yy420;
+ case 'o': goto yy501;
+ default: goto yy438;
}
-yy432:
+yy450:
yych = *++c;
switch (yych) {
case 'L':
- case 'l': goto yy440;
+ case 'l': goto yy458;
case 'U':
- case 'u': goto yy479;
- default: goto yy420;
+ case 'u': goto yy497;
+ default: goto yy438;
}
-yy433:
+yy451:
yych = *++c;
switch (yych) {
case 'E':
- case 'e': goto yy474;
- default: goto yy420;
+ case 'e': goto yy492;
+ default: goto yy438;
}
-yy434:
+yy452:
yych = *++c;
switch (yych) {
case 'A':
- case 'a': goto yy464;
+ case 'a': goto yy482;
case 'B':
- case 'b': goto yy463;
+ case 'b': goto yy481;
case 'D':
case 'R':
case 'd':
- case 'r': goto yy440;
+ case 'r': goto yy458;
case 'F':
- case 'f': goto yy462;
+ case 'f': goto yy480;
case 'H':
- case 'h': goto yy461;
- default: goto yy420;
+ case 'h': goto yy479;
+ default: goto yy438;
}
-yy435:
+yy453:
yych = *++c;
switch (yych) {
case 'L':
- case 'l': goto yy440;
- default: goto yy420;
+ case 'l': goto yy458;
+ default: goto yy438;
}
-yy436:
+yy454:
yych = *++c;
switch (yych) {
case 'I':
- case 'i': goto yy437;
- default: goto yy420;
+ case 'i': goto yy455;
+ default: goto yy438;
}
-yy437:
+yy455:
yych = *++c;
switch (yych) {
case 'D':
- case 'd': goto yy438;
- default: goto yy420;
+ case 'd': goto yy456;
+ default: goto yy438;
}
-yy438:
+yy456:
yych = *++c;
switch (yych) {
case 'E':
- case 'e': goto yy439;
- default: goto yy420;
+ case 'e': goto yy457;
+ default: goto yy438;
}
-yy439:
+yy457:
yych = *++c;
switch (yych) {
case 'O':
- case 'o': goto yy440;
- default: goto yy420;
+ case 'o': goto yy458;
+ default: goto yy438;
}
-yy440:
+yy458:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy441;
- case '\n': goto yy443;
- case '\r': goto yy445;
- case '/': goto yy448;
+ case ' ': goto yy459;
+ case '\n': goto yy461;
+ case '\r': goto yy463;
+ case '/': goto yy466;
case ':':
case 'A':
case 'B':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy446;
- case '>': goto yy449;
- default: goto yy420;
+ case 'z': goto yy464;
+ case '>': goto yy467;
+ default: goto yy438;
}
-yy441:
+yy459:
++c;
yych = *c;
-yy442:
+yy460:
switch (yych) {
case '\t':
- case ' ': goto yy441;
- case '\n': goto yy443;
- case '\r': goto yy445;
+ case ' ': goto yy459;
+ case '\n': goto yy461;
+ case '\r': goto yy463;
case ':':
case 'A':
case 'B':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy446;
- default: goto yy420;
+ case 'z': goto yy464;
+ default: goto yy438;
}
-yy443:
+yy461:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy443;
+ case ' ': goto yy461;
case ':':
case 'A':
case 'B':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy446;
- default: goto yy420;
+ case 'z': goto yy464;
+ default: goto yy438;
}
-yy445:
+yy463:
++c;
yych = *c;
switch (yych) {
case '\t':
case '\n':
- case ' ': goto yy443;
+ case ' ': goto yy461;
case ':':
case 'A':
case 'B':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy446;
- default: goto yy420;
+ case 'z': goto yy464;
+ default: goto yy438;
}
-yy446:
+yy464:
++c;
yych = *c;
-yy447:
+yy465:
switch (yych) {
case '-':
case '.':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy446;
- case '=': goto yy451;
- default: goto yy420;
+ case 'z': goto yy464;
+ case '=': goto yy469;
+ default: goto yy438;
}
-yy448:
+yy466:
yych = *++c;
switch (yych) {
- case '>': goto yy449;
- default: goto yy420;
+ case '>': goto yy467;
+ default: goto yy438;
}
-yy449:
+yy467:
++c;
{ return (size_t)( c - start ); }
-yy451:
+yy469:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy451;
- case '"': goto yy453;
- case '\'': goto yy455;
+ case ' ': goto yy469;
+ case '"': goto yy471;
+ case '\'': goto yy473;
case '.':
case '0':
case '1':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy457;
- default: goto yy420;
+ case 'z': goto yy475;
+ default: goto yy438;
}
-yy453:
+yy471:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy420;
- case '"': goto yy440;
- default: goto yy453;
+ case '\r': goto yy438;
+ case '"': goto yy458;
+ default: goto yy471;
}
-yy455:
+yy473:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy420;
- case '\'': goto yy440;
- default: goto yy455;
+ case '\r': goto yy438;
+ case '\'': goto yy458;
+ default: goto yy473;
}
-yy457:
+yy475:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy441;
- case '\n': goto yy443;
- case '\r': goto yy445;
+ case ' ': goto yy459;
+ case '\n': goto yy461;
+ case '\r': goto yy463;
case '.':
case '0':
case '1':
case '6':
case '7':
case '8':
- case '9': goto yy457;
- case '/': goto yy448;
+ case '9': goto yy475;
+ case '/': goto yy466;
case ':':
- case '_': goto yy446;
- case '>': goto yy449;
+ case '_': goto yy464;
+ case '>': goto yy467;
case 'A':
case 'B':
case 'C':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy459;
- default: goto yy420;
+ case 'z': goto yy477;
+ default: goto yy438;
}
-yy459:
+yy477:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy441;
- case '\n': goto yy443;
- case '\r': goto yy445;
+ case ' ': goto yy459;
+ case '\n': goto yy461;
+ case '\r': goto yy463;
case '-':
case ':':
- case '_': goto yy446;
+ case '_': goto yy464;
case '.':
case '0':
case '1':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy459;
- case '/': goto yy448;
- case '=': goto yy451;
- case '>': goto yy449;
- default: goto yy420;
+ case 'z': goto yy477;
+ case '/': goto yy466;
+ case '=': goto yy469;
+ case '>': goto yy467;
+ default: goto yy438;
}
-yy461:
+yy479:
yych = *++c;
switch (yych) {
- case '/': goto yy448;
- case '>': goto yy449;
+ case '/': goto yy466;
+ case '>': goto yy467;
case 'E':
- case 'e': goto yy471;
- default: goto yy442;
+ case 'e': goto yy489;
+ default: goto yy460;
}
-yy462:
+yy480:
yych = *++c;
switch (yych) {
case 'O':
- case 'o': goto yy469;
- default: goto yy420;
+ case 'o': goto yy487;
+ default: goto yy438;
}
-yy463:
+yy481:
yych = *++c;
switch (yych) {
case 'O':
- case 'o': goto yy467;
- default: goto yy420;
+ case 'o': goto yy485;
+ default: goto yy438;
}
-yy464:
+yy482:
yych = *++c;
switch (yych) {
case 'B':
- case 'b': goto yy465;
- default: goto yy420;
+ case 'b': goto yy483;
+ default: goto yy438;
}
-yy465:
+yy483:
yych = *++c;
switch (yych) {
case 'L':
- case 'l': goto yy466;
- default: goto yy420;
+ case 'l': goto yy484;
+ default: goto yy438;
}
-yy466:
+yy484:
yych = *++c;
switch (yych) {
case 'E':
- case 'e': goto yy440;
- default: goto yy420;
+ case 'e': goto yy458;
+ default: goto yy438;
}
-yy467:
+yy485:
yych = *++c;
switch (yych) {
case 'D':
- case 'd': goto yy468;
- default: goto yy420;
+ case 'd': goto yy486;
+ default: goto yy438;
}
-yy468:
+yy486:
yych = *++c;
switch (yych) {
case 'Y':
- case 'y': goto yy440;
- default: goto yy420;
+ case 'y': goto yy458;
+ default: goto yy438;
}
-yy469:
+yy487:
yych = *++c;
switch (yych) {
case 'O':
- case 'o': goto yy470;
- default: goto yy420;
+ case 'o': goto yy488;
+ default: goto yy438;
}
-yy470:
+yy488:
yych = *++c;
switch (yych) {
case 'T':
- case 't': goto yy440;
- default: goto yy420;
+ case 't': goto yy458;
+ default: goto yy438;
}
-yy471:
+yy489:
yych = *++c;
switch (yych) {
case 'A':
- case 'a': goto yy472;
- default: goto yy447;
+ case 'a': goto yy490;
+ default: goto yy465;
}
-yy472:
+yy490:
yych = *++c;
switch (yych) {
case 'D':
- case 'd': goto yy473;
- default: goto yy447;
+ case 'd': goto yy491;
+ default: goto yy465;
}
-yy473:
+yy491:
yych = *++c;
switch (yych) {
case '-':
case '6':
case '7':
case '8':
- case '9': goto yy446;
- case '/': goto yy448;
- case '=': goto yy451;
- case '>': goto yy449;
- default: goto yy442;
+ case '9': goto yy464;
+ case '/': goto yy466;
+ case '=': goto yy469;
+ case '>': goto yy467;
+ default: goto yy460;
}
-yy474:
+yy492:
yych = *++c;
switch (yych) {
case 'C':
- case 'c': goto yy475;
- default: goto yy420;
+ case 'c': goto yy493;
+ default: goto yy438;
}
-yy475:
+yy493:
yych = *++c;
switch (yych) {
case 'T':
- case 't': goto yy476;
- default: goto yy420;
+ case 't': goto yy494;
+ default: goto yy438;
}
-yy476:
+yy494:
yych = *++c;
switch (yych) {
case 'I':
- case 'i': goto yy477;
- default: goto yy420;
+ case 'i': goto yy495;
+ default: goto yy438;
}
-yy477:
+yy495:
yych = *++c;
switch (yych) {
case 'O':
- case 'o': goto yy478;
- default: goto yy420;
+ case 'o': goto yy496;
+ default: goto yy438;
}
-yy478:
+yy496:
yych = *++c;
switch (yych) {
case 'N':
- case 'n': goto yy440;
- default: goto yy420;
+ case 'n': goto yy458;
+ default: goto yy438;
}
-yy479:
+yy497:
yych = *++c;
switch (yych) {
case 'T':
- case 't': goto yy480;
- default: goto yy420;
+ case 't': goto yy498;
+ default: goto yy438;
}
-yy480:
+yy498:
yych = *++c;
switch (yych) {
case 'P':
- case 'p': goto yy481;
- default: goto yy420;
+ case 'p': goto yy499;
+ default: goto yy438;
}
-yy481:
+yy499:
yych = *++c;
switch (yych) {
case 'U':
- case 'u': goto yy482;
- default: goto yy420;
+ case 'u': goto yy500;
+ default: goto yy438;
}
-yy482:
+yy500:
yych = *++c;
switch (yych) {
case 'T':
- case 't': goto yy440;
- default: goto yy420;
+ case 't': goto yy458;
+ default: goto yy438;
}
-yy483:
+yy501:
yych = *++c;
switch (yych) {
case 'F':
- case 'f': goto yy485;
+ case 'f': goto yy503;
case 'S':
- case 's': goto yy486;
- default: goto yy420;
+ case 's': goto yy504;
+ default: goto yy438;
}
-yy484:
+yy502:
yych = *++c;
switch (yych) {
case 'V':
- case 'v': goto yy440;
- default: goto yy420;
+ case 'v': goto yy458;
+ default: goto yy438;
}
-yy485:
+yy503:
yych = *++c;
switch (yych) {
case 'R':
- case 'r': goto yy491;
- default: goto yy420;
+ case 'r': goto yy509;
+ default: goto yy438;
}
-yy486:
+yy504:
yych = *++c;
switch (yych) {
case 'C':
- case 'c': goto yy487;
- default: goto yy420;
+ case 'c': goto yy505;
+ default: goto yy438;
}
-yy487:
+yy505:
yych = *++c;
switch (yych) {
case 'R':
- case 'r': goto yy488;
- default: goto yy420;
+ case 'r': goto yy506;
+ default: goto yy438;
}
-yy488:
+yy506:
yych = *++c;
switch (yych) {
case 'I':
- case 'i': goto yy489;
- default: goto yy420;
+ case 'i': goto yy507;
+ default: goto yy438;
}
-yy489:
+yy507:
yych = *++c;
switch (yych) {
case 'P':
- case 'p': goto yy490;
- default: goto yy420;
+ case 'p': goto yy508;
+ default: goto yy438;
}
-yy490:
+yy508:
yych = *++c;
switch (yych) {
case 'T':
- case 't': goto yy440;
- default: goto yy420;
+ case 't': goto yy458;
+ default: goto yy438;
}
-yy491:
+yy509:
yych = *++c;
switch (yych) {
case 'A':
- case 'a': goto yy492;
- default: goto yy420;
+ case 'a': goto yy510;
+ default: goto yy438;
}
-yy492:
+yy510:
yych = *++c;
switch (yych) {
case 'M':
- case 'm': goto yy493;
- default: goto yy420;
+ case 'm': goto yy511;
+ default: goto yy438;
}
-yy493:
+yy511:
yych = *++c;
switch (yych) {
case 'E':
- case 'e': goto yy494;
- default: goto yy420;
+ case 'e': goto yy512;
+ default: goto yy438;
}
-yy494:
+yy512:
yych = *++c;
switch (yych) {
case 'S':
- case 's': goto yy440;
- default: goto yy420;
+ case 's': goto yy458;
+ default: goto yy438;
}
-yy495:
+yy513:
yych = *++c;
switch (yych) {
case 'N':
- case 'n': goto yy498;
- default: goto yy420;
+ case 'n': goto yy516;
+ default: goto yy438;
}
-yy496:
+yy514:
yych = *++c;
switch (yych) {
case 'I':
- case 'i': goto yy497;
- default: goto yy420;
+ case 'i': goto yy515;
+ default: goto yy438;
}
-yy497:
+yy515:
yych = *++c;
switch (yych) {
case 'N':
- case 'n': goto yy440;
- default: goto yy420;
+ case 'n': goto yy458;
+ default: goto yy438;
}
-yy498:
+yy516:
yych = *++c;
switch (yych) {
case 'U':
- case 'u': goto yy440;
- default: goto yy420;
+ case 'u': goto yy458;
+ default: goto yy438;
}
-yy499:
+yy517:
yych = *++c;
switch (yych) {
case 'I':
- case 'i': goto yy500;
- default: goto yy420;
+ case 'i': goto yy518;
+ default: goto yy438;
}
-yy500:
+yy518:
yych = *++c;
switch (yych) {
case 'N':
- case 'n': goto yy501;
- default: goto yy420;
+ case 'n': goto yy519;
+ default: goto yy438;
}
-yy501:
+yy519:
yych = *++c;
switch (yych) {
case 'D':
- case 'd': goto yy502;
- default: goto yy420;
+ case 'd': goto yy520;
+ default: goto yy438;
}
-yy502:
+yy520:
yych = *++c;
switch (yych) {
case 'E':
- case 'e': goto yy503;
- default: goto yy420;
+ case 'e': goto yy521;
+ default: goto yy438;
}
-yy503:
+yy521:
yych = *++c;
switch (yych) {
case 'X':
- case 'x': goto yy440;
- default: goto yy420;
+ case 'x': goto yy458;
+ default: goto yy438;
}
-yy504:
+yy522:
yych = *++c;
switch (yych) {
case 'R':
- case 'r': goto yy509;
- default: goto yy420;
+ case 'r': goto yy527;
+ default: goto yy438;
}
-yy505:
+yy523:
yych = *++c;
switch (yych) {
case 'A':
- case 'a': goto yy506;
- default: goto yy420;
+ case 'a': goto yy524;
+ default: goto yy438;
}
-yy506:
+yy524:
yych = *++c;
switch (yych) {
case 'D':
- case 'd': goto yy507;
- default: goto yy420;
+ case 'd': goto yy525;
+ default: goto yy438;
}
-yy507:
+yy525:
yych = *++c;
switch (yych) {
case 'E':
- case 'e': goto yy508;
- default: goto yy420;
+ case 'e': goto yy526;
+ default: goto yy438;
}
-yy508:
+yy526:
yych = *++c;
switch (yych) {
case 'R':
- case 'r': goto yy440;
- default: goto yy420;
+ case 'r': goto yy458;
+ default: goto yy438;
}
-yy509:
+yy527:
yych = *++c;
switch (yych) {
case 'O':
- case 'o': goto yy510;
- default: goto yy420;
+ case 'o': goto yy528;
+ default: goto yy438;
}
-yy510:
+yy528:
yych = *++c;
switch (yych) {
case 'U':
- case 'u': goto yy511;
- default: goto yy420;
+ case 'u': goto yy529;
+ default: goto yy438;
}
-yy511:
+yy529:
yych = *++c;
switch (yych) {
case 'P':
- case 'p': goto yy440;
- default: goto yy420;
+ case 'p': goto yy458;
+ default: goto yy438;
}
-yy512:
+yy530:
yych = *++c;
switch (yych) {
case 'A':
- case 'a': goto yy533;
- default: goto yy420;
+ case 'a': goto yy551;
+ default: goto yy438;
}
-yy513:
+yy531:
yych = *++c;
switch (yych) {
case 'O':
- case 'o': goto yy529;
+ case 'o': goto yy547;
case 'R':
- case 'r': goto yy530;
- default: goto yy420;
+ case 'r': goto yy548;
+ default: goto yy438;
}
-yy514:
+yy532:
yych = *++c;
switch (yych) {
case 'E':
- case 'e': goto yy515;
+ case 'e': goto yy533;
case 'G':
- case 'g': goto yy516;
- default: goto yy420;
+ case 'g': goto yy534;
+ default: goto yy438;
}
-yy515:
+yy533:
yych = *++c;
switch (yych) {
case 'L':
- case 'l': goto yy525;
- default: goto yy420;
+ case 'l': goto yy543;
+ default: goto yy438;
}
-yy516:
+yy534:
yych = *++c;
switch (yych) {
case 'C':
- case 'c': goto yy518;
+ case 'c': goto yy536;
case 'U':
- case 'u': goto yy517;
- default: goto yy420;
+ case 'u': goto yy535;
+ default: goto yy438;
}
-yy517:
+yy535:
yych = *++c;
switch (yych) {
case 'R':
- case 'r': goto yy524;
- default: goto yy420;
+ case 'r': goto yy542;
+ default: goto yy438;
}
-yy518:
+yy536:
yych = *++c;
switch (yych) {
case 'A':
- case 'a': goto yy519;
- default: goto yy420;
+ case 'a': goto yy537;
+ default: goto yy438;
}
-yy519:
+yy537:
yych = *++c;
switch (yych) {
case 'P':
- case 'p': goto yy520;
- default: goto yy420;
+ case 'p': goto yy538;
+ default: goto yy438;
}
-yy520:
+yy538:
yych = *++c;
switch (yych) {
case 'T':
- case 't': goto yy521;
- default: goto yy420;
+ case 't': goto yy539;
+ default: goto yy438;
}
-yy521:
+yy539:
yych = *++c;
switch (yych) {
case 'I':
- case 'i': goto yy522;
- default: goto yy420;
+ case 'i': goto yy540;
+ default: goto yy438;
}
-yy522:
+yy540:
yych = *++c;
switch (yych) {
case 'O':
- case 'o': goto yy523;
- default: goto yy420;
+ case 'o': goto yy541;
+ default: goto yy438;
}
-yy523:
+yy541:
yych = *++c;
switch (yych) {
case 'N':
- case 'n': goto yy440;
- default: goto yy420;
+ case 'n': goto yy458;
+ default: goto yy438;
}
-yy524:
+yy542:
yych = *++c;
switch (yych) {
case 'E':
- case 'e': goto yy440;
- default: goto yy420;
+ case 'e': goto yy458;
+ default: goto yy438;
}
-yy525:
+yy543:
yych = *++c;
switch (yych) {
case 'D':
- case 'd': goto yy526;
- default: goto yy420;
+ case 'd': goto yy544;
+ default: goto yy438;
}
-yy526:
+yy544:
yych = *++c;
switch (yych) {
case 'S':
- case 's': goto yy527;
- default: goto yy420;
+ case 's': goto yy545;
+ default: goto yy438;
}
-yy527:
+yy545:
yych = *++c;
switch (yych) {
case 'E':
- case 'e': goto yy528;
- default: goto yy420;
+ case 'e': goto yy546;
+ default: goto yy438;
}
-yy528:
+yy546:
yych = *++c;
switch (yych) {
case 'T':
- case 't': goto yy440;
- default: goto yy420;
+ case 't': goto yy458;
+ default: goto yy438;
}
-yy529:
+yy547:
yych = *++c;
switch (yych) {
case 'T':
- case 't': goto yy531;
- default: goto yy420;
+ case 't': goto yy549;
+ default: goto yy438;
}
-yy530:
+yy548:
yych = *++c;
switch (yych) {
case 'M':
- case 'm': goto yy440;
- default: goto yy420;
+ case 'm': goto yy458;
+ default: goto yy438;
}
-yy531:
+yy549:
yych = *++c;
switch (yych) {
case 'E':
- case 'e': goto yy532;
- default: goto yy420;
+ case 'e': goto yy550;
+ default: goto yy438;
}
-yy532:
+yy550:
yych = *++c;
switch (yych) {
case 'R':
- case 'r': goto yy440;
- default: goto yy420;
+ case 'r': goto yy458;
+ default: goto yy438;
}
-yy533:
+yy551:
yych = *++c;
switch (yych) {
case 'M':
- case 'm': goto yy534;
- default: goto yy420;
+ case 'm': goto yy552;
+ default: goto yy438;
}
-yy534:
+yy552:
yych = *++c;
switch (yych) {
case 'E':
- case 'e': goto yy535;
- default: goto yy420;
+ case 'e': goto yy553;
+ default: goto yy438;
}
-yy535:
+yy553:
yych = *++c;
switch (yych) {
case 'S':
- case 's': goto yy536;
- default: goto yy420;
+ case 's': goto yy554;
+ default: goto yy438;
}
-yy536:
+yy554:
yych = *++c;
switch (yych) {
case 'E':
- case 'e': goto yy537;
- default: goto yy420;
+ case 'e': goto yy555;
+ default: goto yy438;
}
-yy537:
+yy555:
yych = *++c;
switch (yych) {
case 'T':
- case 't': goto yy440;
- default: goto yy420;
+ case 't': goto yy458;
+ default: goto yy438;
}
-yy538:
+yy556:
yych = *++c;
switch (yych) {
case 'R':
case 'V':
case 'r':
- case 'v': goto yy440;
- default: goto yy420;
+ case 'v': goto yy458;
+ default: goto yy438;
}
-yy539:
+yy557:
yych = *++c;
switch (yych) {
case 'N':
- case 'n': goto yy544;
- default: goto yy420;
+ case 'n': goto yy562;
+ default: goto yy438;
}
-yy540:
+yy558:
yych = *++c;
switch (yych) {
case 'N':
- case 'n': goto yy541;
- default: goto yy420;
+ case 'n': goto yy559;
+ default: goto yy438;
}
-yy541:
+yy559:
yych = *++c;
switch (yych) {
case 'V':
- case 'v': goto yy542;
- default: goto yy420;
+ case 'v': goto yy560;
+ default: goto yy438;
}
-yy542:
+yy560:
yych = *++c;
switch (yych) {
case 'A':
- case 'a': goto yy543;
- default: goto yy420;
+ case 'a': goto yy561;
+ default: goto yy438;
}
-yy543:
+yy561:
yych = *++c;
switch (yych) {
case 'S':
- case 's': goto yy440;
- default: goto yy420;
+ case 's': goto yy458;
+ default: goto yy438;
}
-yy544:
+yy562:
yych = *++c;
switch (yych) {
case 'T':
- case 't': goto yy545;
- default: goto yy420;
+ case 't': goto yy563;
+ default: goto yy438;
}
-yy545:
+yy563:
yych = *++c;
switch (yych) {
case 'E':
- case 'e': goto yy546;
- default: goto yy420;
+ case 'e': goto yy564;
+ default: goto yy438;
}
-yy546:
+yy564:
yych = *++c;
switch (yych) {
case 'R':
- case 'r': goto yy440;
- default: goto yy420;
+ case 'r': goto yy458;
+ default: goto yy438;
}
-yy547:
+yy565:
yych = *++c;
switch (yych) {
case 'O':
- case 'o': goto yy548;
- default: goto yy420;
+ case 'o': goto yy566;
+ default: goto yy438;
}
-yy548:
+yy566:
yych = *++c;
switch (yych) {
case 'C':
- case 'c': goto yy549;
- default: goto yy420;
+ case 'c': goto yy567;
+ default: goto yy438;
}
-yy549:
+yy567:
yych = *++c;
switch (yych) {
case 'K':
- case 'k': goto yy550;
- default: goto yy420;
+ case 'k': goto yy568;
+ default: goto yy438;
}
-yy550:
+yy568:
yych = *++c;
switch (yych) {
case 'Q':
- case 'q': goto yy551;
- default: goto yy420;
+ case 'q': goto yy569;
+ default: goto yy438;
}
-yy551:
+yy569:
yych = *++c;
switch (yych) {
case 'U':
- case 'u': goto yy552;
- default: goto yy420;
+ case 'u': goto yy570;
+ default: goto yy438;
}
-yy552:
+yy570:
yych = *++c;
switch (yych) {
case 'O':
- case 'o': goto yy553;
- default: goto yy420;
+ case 'o': goto yy571;
+ default: goto yy438;
}
-yy553:
+yy571:
yych = *++c;
switch (yych) {
case 'T':
- case 't': goto yy554;
- default: goto yy420;
+ case 't': goto yy572;
+ default: goto yy438;
}
-yy554:
+yy572:
yych = *++c;
switch (yych) {
case 'E':
- case 'e': goto yy440;
- default: goto yy420;
+ case 'e': goto yy458;
+ default: goto yy438;
}
-yy555:
+yy573:
yych = *++c;
switch (yych) {
case 'I':
- case 'i': goto yy566;
- default: goto yy420;
+ case 'i': goto yy584;
+ default: goto yy438;
}
-yy556:
+yy574:
yych = *++c;
switch (yych) {
case 'T':
- case 't': goto yy562;
- default: goto yy420;
+ case 't': goto yy580;
+ default: goto yy438;
}
-yy557:
+yy575:
yych = *++c;
switch (yych) {
case 'D':
- case 'd': goto yy558;
- default: goto yy420;
+ case 'd': goto yy576;
+ default: goto yy438;
}
-yy558:
+yy576:
yych = *++c;
switch (yych) {
case 'R':
- case 'r': goto yy559;
- default: goto yy420;
+ case 'r': goto yy577;
+ default: goto yy438;
}
-yy559:
+yy577:
yych = *++c;
switch (yych) {
case 'E':
- case 'e': goto yy560;
- default: goto yy420;
+ case 'e': goto yy578;
+ default: goto yy438;
}
-yy560:
+yy578:
yych = *++c;
switch (yych) {
case 'S':
- case 's': goto yy561;
- default: goto yy420;
+ case 's': goto yy579;
+ default: goto yy438;
}
-yy561:
+yy579:
yych = *++c;
switch (yych) {
case 'S':
- case 's': goto yy440;
- default: goto yy420;
+ case 's': goto yy458;
+ default: goto yy438;
}
-yy562:
+yy580:
yych = *++c;
switch (yych) {
case 'I':
- case 'i': goto yy563;
- default: goto yy420;
+ case 'i': goto yy581;
+ default: goto yy438;
}
-yy563:
+yy581:
yych = *++c;
switch (yych) {
case 'C':
- case 'c': goto yy564;
- default: goto yy420;
+ case 'c': goto yy582;
+ default: goto yy438;
}
-yy564:
+yy582:
yych = *++c;
switch (yych) {
case 'L':
- case 'l': goto yy565;
- default: goto yy420;
+ case 'l': goto yy583;
+ default: goto yy438;
}
-yy565:
+yy583:
yych = *++c;
switch (yych) {
case 'E':
- case 'e': goto yy440;
- default: goto yy420;
+ case 'e': goto yy458;
+ default: goto yy438;
}
-yy566:
+yy584:
yych = *++c;
switch (yych) {
case 'D':
- case 'd': goto yy567;
- default: goto yy420;
+ case 'd': goto yy585;
+ default: goto yy438;
}
-yy567:
+yy585:
yych = *++c;
switch (yych) {
case 'E':
- case 'e': goto yy440;
- default: goto yy420;
+ case 'e': goto yy458;
+ default: goto yy438;
}
-yy568:
+yy586:
++c;
switch ((yych = *c)) {
case 'E':
- case 'e': goto yy473;
- default: goto yy447;
+ case 'e': goto yy491;
+ default: goto yy465;
}
}
char yych;
yych = *c;
switch (yych) {
- case '\n': goto yy571;
- case '<': goto yy572;
- default: goto yy573;
+ case '\n': goto yy589;
+ case '<': goto yy590;
+ default: goto yy591;
}
-yy571:
+yy589:
{ return 0; }
-yy572:
+yy590:
yych = *(marker = ++c);
switch (yych) {
- case '!': goto yy574;
- case '/': goto yy576;
+ case '!': goto yy592;
+ case '/': goto yy594;
case 'A':
case 'B':
case 'C':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy577;
- default: goto yy571;
+ case 'z': goto yy595;
+ default: goto yy589;
}
-yy573:
+yy591:
yych = *++c;
- goto yy571;
-yy574:
+ goto yy589;
+yy592:
yych = *++c;
switch (yych) {
- case '-': goto yy608;
- default: goto yy575;
+ case '-': goto yy626;
+ default: goto yy593;
}
-yy575:
+yy593:
c = marker;
- goto yy571;
-yy576:
+ goto yy589;
+yy594:
yych = *++c;
switch (yych) {
case 'A':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy604;
- default: goto yy575;
+ case 'z': goto yy622;
+ default: goto yy593;
}
-yy577:
+yy595:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy581;
- case '\n': goto yy583;
- case '\r': goto yy585;
+ case ' ': goto yy599;
+ case '\n': goto yy601;
+ case '\r': goto yy603;
case '-':
case '0':
case '1':
case '6':
case '7':
case '8':
- case '9': goto yy577;
- case '/': goto yy590;
+ case '9': goto yy595;
+ case '/': goto yy608;
case ':':
- case '_': goto yy586;
- case '>': goto yy588;
+ case '_': goto yy604;
+ case '>': goto yy606;
case 'A':
case 'B':
case 'C':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy579;
- default: goto yy575;
+ case 'z': goto yy597;
+ default: goto yy593;
}
-yy579:
+yy597:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy581;
- case '\n': goto yy583;
- case '\r': goto yy585;
+ case ' ': goto yy599;
+ case '\n': goto yy601;
+ case '\r': goto yy603;
case '-':
case '0':
case '1':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy579;
+ case 'z': goto yy597;
case '.':
case ':':
- case '_': goto yy586;
- case '/': goto yy590;
- case '=': goto yy594;
- case '>': goto yy588;
- default: goto yy575;
+ case '_': goto yy604;
+ case '/': goto yy608;
+ case '=': goto yy612;
+ case '>': goto yy606;
+ default: goto yy593;
}
-yy581:
+yy599:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy581;
- case '\n': goto yy583;
- case '\r': goto yy585;
- case '/': goto yy590;
+ case ' ': goto yy599;
+ case '\n': goto yy601;
+ case '\r': goto yy603;
+ case '/': goto yy608;
case ':':
case 'A':
case 'B':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy586;
- case '>': goto yy588;
- default: goto yy575;
+ case 'z': goto yy604;
+ case '>': goto yy606;
+ default: goto yy593;
}
-yy583:
+yy601:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy583;
+ case ' ': goto yy601;
case ':':
case 'A':
case 'B':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy586;
- default: goto yy575;
+ case 'z': goto yy604;
+ default: goto yy593;
}
-yy585:
+yy603:
++c;
yych = *c;
switch (yych) {
case '\t':
case '\n':
- case ' ': goto yy583;
+ case ' ': goto yy601;
case ':':
case 'A':
case 'B':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy586;
- default: goto yy575;
+ case 'z': goto yy604;
+ default: goto yy593;
}
-yy586:
+yy604:
++c;
yych = *c;
switch (yych) {
case 'w':
case 'x':
case 'y':
- case 'z': goto yy586;
- case '=': goto yy594;
- default: goto yy575;
+ case 'z': goto yy604;
+ case '=': goto yy612;
+ default: goto yy593;
}
-yy588:
+yy606:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy588;
- case '\n': goto yy591;
- case '\r': goto yy593;
- default: goto yy575;
+ case ' ': goto yy606;
+ case '\n': goto yy609;
+ case '\r': goto yy611;
+ default: goto yy593;
}
-yy590:
+yy608:
yych = *++c;
switch (yych) {
- case '>': goto yy588;
- default: goto yy575;
+ case '>': goto yy606;
+ default: goto yy593;
}
-yy591:
+yy609:
++c;
-yy592:
+yy610:
{ return (size_t)( c - start ); }
-yy593:
+yy611:
yych = *++c;
switch (yych) {
- case '\n': goto yy591;
- default: goto yy592;
+ case '\n': goto yy609;
+ default: goto yy610;
}
-yy594:
+yy612:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy594;
- case '"': goto yy596;
- case '\'': goto yy598;
+ case ' ': goto yy612;
+ case '"': goto yy614;
+ case '\'': goto yy616;
case '.':
case '0':
case '1':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy600;
- default: goto yy575;
+ case 'z': goto yy618;
+ default: goto yy593;
}
-yy596:
+yy614:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy575;
- case '"': goto yy581;
- default: goto yy596;
+ case '\r': goto yy593;
+ case '"': goto yy599;
+ default: goto yy614;
}
-yy598:
+yy616:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy575;
- case '\'': goto yy581;
- default: goto yy598;
+ case '\r': goto yy593;
+ case '\'': goto yy599;
+ default: goto yy616;
}
-yy600:
+yy618:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy581;
- case '\n': goto yy583;
- case '\r': goto yy585;
+ case ' ': goto yy599;
+ case '\n': goto yy601;
+ case '\r': goto yy603;
case '.':
case '0':
case '1':
case '6':
case '7':
case '8':
- case '9': goto yy600;
- case '/': goto yy590;
+ case '9': goto yy618;
+ case '/': goto yy608;
case ':':
- case '_': goto yy586;
- case '>': goto yy588;
+ case '_': goto yy604;
+ case '>': goto yy606;
case 'A':
case 'B':
case 'C':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy602;
- default: goto yy575;
+ case 'z': goto yy620;
+ default: goto yy593;
}
-yy602:
+yy620:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy581;
- case '\n': goto yy583;
- case '\r': goto yy585;
+ case ' ': goto yy599;
+ case '\n': goto yy601;
+ case '\r': goto yy603;
case '-':
case ':':
- case '_': goto yy586;
+ case '_': goto yy604;
case '.':
case '0':
case '1':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy602;
- case '/': goto yy590;
- case '=': goto yy594;
- case '>': goto yy588;
- default: goto yy575;
+ case 'z': goto yy620;
+ case '/': goto yy608;
+ case '=': goto yy612;
+ case '>': goto yy606;
+ default: goto yy593;
}
-yy604:
+yy622:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy606;
+ case ' ': goto yy624;
case '-':
case '0':
case '1':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy604;
- case '>': goto yy588;
- default: goto yy575;
+ case 'z': goto yy622;
+ case '>': goto yy606;
+ default: goto yy593;
}
-yy606:
+yy624:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy606;
- case '>': goto yy588;
- default: goto yy575;
+ case ' ': goto yy624;
+ case '>': goto yy606;
+ default: goto yy593;
}
-yy608:
+yy626:
yych = *++c;
switch (yych) {
- case '-': goto yy609;
- default: goto yy575;
+ case '-': goto yy627;
+ default: goto yy593;
}
-yy609:
+yy627:
yych = *++c;
switch (yych) {
- case '-': goto yy575;
- default: goto yy611;
+ case '-': goto yy593;
+ default: goto yy629;
}
-yy610:
+yy628:
++c;
yych = *c;
-yy611:
+yy629:
switch (yych) {
case 0x00:
- case '>': goto yy575;
- case '-': goto yy612;
- default: goto yy610;
+ case '>': goto yy593;
+ case '-': goto yy630;
+ default: goto yy628;
}
-yy612:
+yy630:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '>': goto yy575;
- case '-': goto yy613;
- default: goto yy610;
+ case '>': goto yy593;
+ case '-': goto yy631;
+ default: goto yy628;
}
-yy613:
+yy631:
++c;
yych = *c;
switch (yych) {
- case 0x00: goto yy575;
- case '-': goto yy613;
- case '>': goto yy588;
- default: goto yy610;
+ case 0x00: goto yy593;
+ case '-': goto yy631;
+ case '>': goto yy606;
+ default: goto yy628;
}
}
char yych;
yych = *c;
switch (yych) {
- case '\n': goto yy617;
- case ' ': goto yy618;
+ case '\n': goto yy635;
+ case ' ': goto yy636;
case '`':
- case '~': goto yy619;
- default: goto yy620;
+ case '~': goto yy637;
+ default: goto yy638;
}
-yy617:
+yy635:
{ return 0; }
-yy618:
+yy636:
yych = *(marker = ++c);
switch (yych) {
- case ' ': goto yy632;
+ case ' ': goto yy650;
case '`':
- case '~': goto yy633;
- default: goto yy617;
+ case '~': goto yy651;
+ default: goto yy635;
}
-yy619:
+yy637:
yych = *(marker = ++c);
switch (yych) {
case '`':
- case '~': goto yy621;
- default: goto yy617;
+ case '~': goto yy639;
+ default: goto yy635;
}
-yy620:
+yy638:
yych = *++c;
- goto yy617;
-yy621:
+ goto yy635;
+yy639:
yych = *++c;
switch (yych) {
case '`':
- case '~': goto yy623;
- default: goto yy622;
+ case '~': goto yy641;
+ default: goto yy640;
}
-yy622:
+yy640:
c = marker;
- goto yy617;
-yy623:
+ goto yy635;
+yy641:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
case '\r':
- case '\'': goto yy622;
- case '`': goto yy623;
- case '~': goto yy627;
- default: goto yy625;
+ case '\'': goto yy640;
+ case '`': goto yy641;
+ case '~': goto yy645;
+ default: goto yy643;
}
-yy625:
+yy643:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '\n': goto yy629;
- case '\r': goto yy631;
+ case '\n': goto yy647;
+ case '\r': goto yy649;
case '\'':
- case '`': goto yy622;
- default: goto yy625;
+ case '`': goto yy640;
+ default: goto yy643;
}
-yy627:
+yy645:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '\n': goto yy629;
- case '\r': goto yy631;
- case '\'': goto yy622;
- case '`': goto yy623;
- case '~': goto yy627;
- default: goto yy625;
+ case '\n': goto yy647;
+ case '\r': goto yy649;
+ case '\'': goto yy640;
+ case '`': goto yy641;
+ case '~': goto yy645;
+ default: goto yy643;
}
-yy629:
+yy647:
++c;
-yy630:
+yy648:
{ return (size_t)( c - start ); }
-yy631:
+yy649:
yych = *++c;
switch (yych) {
- case '\n': goto yy629;
- default: goto yy630;
+ case '\n': goto yy647;
+ default: goto yy648;
}
-yy632:
+yy650:
yych = *++c;
switch (yych) {
- case ' ': goto yy634;
+ case ' ': goto yy652;
case '`':
- case '~': goto yy633;
- default: goto yy622;
+ case '~': goto yy651;
+ default: goto yy640;
}
-yy633:
+yy651:
yych = *++c;
switch (yych) {
case '`':
- case '~': goto yy621;
- default: goto yy622;
+ case '~': goto yy639;
+ default: goto yy640;
}
-yy634:
+yy652:
++c;
switch ((yych = *c)) {
case '`':
- case '~': goto yy633;
- default: goto yy622;
+ case '~': goto yy651;
+ default: goto yy640;
}
}
char yych;
yych = *c;
switch (yych) {
- case '\n': goto yy637;
- case ' ': goto yy638;
+ case '\n': goto yy655;
+ case ' ': goto yy656;
case '`':
- case '~': goto yy639;
- default: goto yy640;
+ case '~': goto yy657;
+ default: goto yy658;
}
-yy637:
+yy655:
{ return 0; }
-yy638:
+yy656:
yych = *(marker = ++c);
switch (yych) {
- case ' ': goto yy650;
+ case ' ': goto yy668;
case '`':
- case '~': goto yy651;
- default: goto yy637;
+ case '~': goto yy669;
+ default: goto yy655;
}
-yy639:
+yy657:
yych = *(marker = ++c);
switch (yych) {
case '`':
- case '~': goto yy641;
- default: goto yy637;
+ case '~': goto yy659;
+ default: goto yy655;
}
-yy640:
+yy658:
yych = *++c;
- goto yy637;
-yy641:
+ goto yy655;
+yy659:
yych = *++c;
switch (yych) {
case '`':
- case '~': goto yy643;
- default: goto yy642;
+ case '~': goto yy661;
+ default: goto yy660;
}
-yy642:
+yy660:
c = marker;
- goto yy637;
-yy643:
+ goto yy655;
+yy661:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '\n': goto yy647;
+ case '\n': goto yy665;
case '\t':
- case ' ': goto yy645;
- case '\r': goto yy649;
+ case ' ': goto yy663;
+ case '\r': goto yy667;
case '`':
- case '~': goto yy643;
- default: goto yy642;
+ case '~': goto yy661;
+ default: goto yy660;
}
-yy645:
+yy663:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '\n': goto yy647;
+ case '\n': goto yy665;
case '\t':
- case ' ': goto yy645;
- case '\r': goto yy649;
- default: goto yy642;
+ case ' ': goto yy663;
+ case '\r': goto yy667;
+ default: goto yy660;
}
-yy647:
+yy665:
++c;
-yy648:
+yy666:
{ return (size_t)( c - start ); }
-yy649:
+yy667:
yych = *++c;
switch (yych) {
- case '\n': goto yy647;
- default: goto yy648;
+ case '\n': goto yy665;
+ default: goto yy666;
}
-yy650:
+yy668:
yych = *++c;
switch (yych) {
- case ' ': goto yy652;
+ case ' ': goto yy670;
case '`':
- case '~': goto yy651;
- default: goto yy642;
+ case '~': goto yy669;
+ default: goto yy660;
}
-yy651:
+yy669:
yych = *++c;
switch (yych) {
case '`':
- case '~': goto yy641;
- default: goto yy642;
+ case '~': goto yy659;
+ default: goto yy660;
}
-yy652:
+yy670:
++c;
switch ((yych = *c)) {
case '`':
- case '~': goto yy651;
- default: goto yy642;
+ case '~': goto yy669;
+ default: goto yy660;
}
}
char yych;
yych = *c;
switch (yych) {
- case '\n': goto yy655;
+ case '\n': goto yy673;
case '0':
case '1':
case '2':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy656;
- default: goto yy657;
+ case 'z': goto yy674;
+ default: goto yy675;
}
-yy655:
+yy673:
{ return 0; }
-yy656:
+yy674:
yych = *(marker = ++c);
switch (yych) {
- case '\t': goto yy661;
+ case '\t': goto yy679;
case ' ':
case '!':
case '"':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy658;
- case ':': goto yy663;
- default: goto yy655;
+ case 'z': goto yy676;
+ case ':': goto yy681;
+ default: goto yy673;
}
-yy657:
+yy675:
yych = *++c;
- goto yy655;
-yy658:
+ goto yy673;
+yy676:
++c;
yych = *c;
switch (yych) {
- case '\t': goto yy661;
+ case '\t': goto yy679;
case ' ':
case '!':
case '"':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy658;
- case ':': goto yy663;
- default: goto yy660;
+ case 'z': goto yy676;
+ case ':': goto yy681;
+ default: goto yy678;
}
-yy660:
+yy678:
c = marker;
- goto yy655;
-yy661:
+ goto yy673;
+yy679:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy661;
- case ':': goto yy663;
- default: goto yy660;
+ case ' ': goto yy679;
+ case ':': goto yy681;
+ default: goto yy678;
}
-yy663:
+yy681:
yych = *++c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy660;
- default: goto yy664;
+ case '\r': goto yy678;
+ default: goto yy682;
}
-yy664:
+yy682:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '\n': goto yy666;
- case '\r': goto yy668;
- default: goto yy664;
+ case '\n': goto yy684;
+ case '\r': goto yy686;
+ default: goto yy682;
}
-yy666:
+yy684:
++c;
-yy667:
+yy685:
{ return (size_t)( c - start ); }
-yy668:
+yy686:
++c;
switch ((yych = *c)) {
- case '\n': goto yy666;
- default: goto yy667;
+ case '\n': goto yy684;
+ default: goto yy685;
}
}
char yych;
yych = *c;
switch (yych) {
- case '\n': goto yy671;
+ case '\n': goto yy689;
case '0':
case '1':
case '2':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy672;
- default: goto yy674;
+ case 'z': goto yy690;
+ default: goto yy692;
}
-yy671:
+yy689:
{ return 0; }
-yy672:
+yy690:
++c;
yych = *c;
- goto yy676;
-yy673:
+ goto yy694;
+yy691:
{ return (size_t)( c - start ); }
-yy674:
+yy692:
yych = *++c;
- goto yy671;
-yy675:
+ goto yy689;
+yy693:
++c;
yych = *c;
-yy676:
+yy694:
switch (yych) {
case ' ':
case '!':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy675;
- default: goto yy673;
+ case 'z': goto yy693;
+ default: goto yy691;
}
}
char yych;
yych = *c;
switch (yych) {
- case '\n': goto yy679;
- case ' ': goto yy680;
- case ':': goto yy681;
- default: goto yy682;
+ case '\n': goto yy697;
+ case ' ': goto yy698;
+ case ':': goto yy699;
+ default: goto yy700;
}
-yy679:
+yy697:
{ return 0; }
-yy680:
+yy698:
yych = *(marker = ++c);
switch (yych) {
- case ' ': goto yy687;
- case ':': goto yy689;
- default: goto yy679;
+ case ' ': goto yy705;
+ case ':': goto yy707;
+ default: goto yy697;
}
-yy681:
+yy699:
yych = *++c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy679;
- default: goto yy684;
+ case '\r': goto yy697;
+ default: goto yy702;
}
-yy682:
+yy700:
yych = *++c;
- goto yy679;
-yy683:
+ goto yy697;
+yy701:
++c;
yych = *c;
-yy684:
+yy702:
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy685;
+ case '\r': goto yy703;
case '\t':
- case ' ': goto yy683;
- default: goto yy686;
+ case ' ': goto yy701;
+ default: goto yy704;
}
-yy685:
+yy703:
{ return (size_t)( c - start ); }
-yy686:
+yy704:
yych = *++c;
- goto yy685;
-yy687:
+ goto yy703;
+yy705:
yych = *++c;
switch (yych) {
- case ' ': goto yy690;
- case ':': goto yy689;
- default: goto yy688;
+ case ' ': goto yy708;
+ case ':': goto yy707;
+ default: goto yy706;
}
-yy688:
+yy706:
c = marker;
- goto yy679;
-yy689:
+ goto yy697;
+yy707:
yych = *++c;
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy688;
- default: goto yy684;
+ case '\r': goto yy706;
+ default: goto yy702;
}
-yy690:
+yy708:
++c;
switch ((yych = *c)) {
- case ':': goto yy689;
- default: goto yy688;
+ case ':': goto yy707;
+ default: goto yy706;
}
}
case '+':
case '-':
case ':':
- case '=': goto yy695;
- case '\n': goto yy693;
- case '|': goto yy694;
- default: goto yy696;
+ case '=': goto yy713;
+ case '\n': goto yy711;
+ case '|': goto yy712;
+ default: goto yy714;
}
-yy693:
+yy711:
{ return 0; }
-yy694:
+yy712:
yych = *(marker = ++c);
switch (yych) {
case 0x00:
case '-':
case ':':
case '=':
- case '|': goto yy706;
- default: goto yy693;
+ case '|': goto yy724;
+ default: goto yy711;
}
-yy695:
+yy713:
yych = *(marker = ++c);
switch (yych) {
case '\t':
case '+':
case '-':
case ':':
- case '=': goto yy700;
- case '|': goto yy697;
- default: goto yy693;
+ case '=': goto yy718;
+ case '|': goto yy715;
+ default: goto yy711;
}
-yy696:
+yy714:
yych = *++c;
- goto yy693;
-yy697:
+ goto yy711;
+yy715:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '\n': goto yy702;
+ case '\n': goto yy720;
case '\t':
case ' ':
case '+':
case '-':
case ':':
case '=':
- case '|': goto yy697;
- case '\r': goto yy704;
- default: goto yy699;
+ case '|': goto yy715;
+ case '\r': goto yy722;
+ default: goto yy717;
}
-yy699:
+yy717:
c = marker;
- goto yy693;
-yy700:
+ goto yy711;
+yy718:
++c;
yych = *c;
switch (yych) {
case '+':
case '-':
case ':':
- case '=': goto yy700;
- case '|': goto yy697;
- default: goto yy699;
+ case '=': goto yy718;
+ case '|': goto yy715;
+ default: goto yy717;
}
-yy702:
+yy720:
++c;
-yy703:
+yy721:
{ return (size_t)( c - start ); }
-yy704:
+yy722:
yych = *++c;
switch (yych) {
- case '\n': goto yy702;
- default: goto yy703;
+ case '\n': goto yy720;
+ default: goto yy721;
}
-yy705:
+yy723:
++c;
yych = *c;
-yy706:
+yy724:
switch (yych) {
case 0x00:
- case '\n': goto yy702;
+ case '\n': goto yy720;
case '\t':
case ' ':
case '+':
case '-':
case ':':
case '=':
- case '|': goto yy705;
- case '\r': goto yy704;
- default: goto yy699;
+ case '|': goto yy723;
+ case '\r': goto yy722;
+ default: goto yy717;
}
}
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy710;
- case '\n': goto yy709;
+ case ' ': goto yy728;
+ case '\n': goto yy727;
case '-':
- case '=': goto yy712;
- case ':': goto yy711;
- default: goto yy713;
+ case '=': goto yy730;
+ case ':': goto yy729;
+ default: goto yy731;
}
-yy709:
+yy727:
{ return 0; }
-yy710:
+yy728:
yych = *(marker = ++c);
switch (yych) {
case '\t':
- case ' ': goto yy752;
+ case ' ': goto yy770;
case '-':
- case '=': goto yy716;
- case ':': goto yy751;
- default: goto yy709;
+ case '=': goto yy734;
+ case ':': goto yy769;
+ default: goto yy727;
}
-yy711:
+yy729:
yych = *(marker = ++c);
switch (yych) {
case '-':
- case '=': goto yy728;
- default: goto yy709;
+ case '=': goto yy746;
+ default: goto yy727;
}
-yy712:
+yy730:
yych = *(marker = ++c);
switch (yych) {
case '-':
- case '=': goto yy716;
- case ':': goto yy714;
- default: goto yy709;
+ case '=': goto yy734;
+ case ':': goto yy732;
+ default: goto yy727;
}
-yy713:
+yy731:
yych = *++c;
- goto yy709;
-yy714:
+ goto yy727;
+yy732:
yych = *++c;
switch (yych) {
- case '+': goto yy723;
- default: goto yy719;
+ case '+': goto yy741;
+ default: goto yy737;
}
-yy715:
+yy733:
c = marker;
- goto yy709;
-yy716:
+ goto yy727;
+yy734:
++c;
yych = *c;
switch (yych) {
case '-':
- case '=': goto yy716;
- case ':': goto yy714;
- default: goto yy715;
+ case '=': goto yy734;
+ case ':': goto yy732;
+ default: goto yy733;
}
-yy718:
+yy736:
++c;
yych = *c;
-yy719:
+yy737:
switch (yych) {
case 0x00:
case '\n':
- case '|': goto yy720;
+ case '|': goto yy738;
case '\t':
- case ' ': goto yy718;
- case '\r': goto yy722;
- default: goto yy715;
+ case ' ': goto yy736;
+ case '\r': goto yy740;
+ default: goto yy733;
}
-yy720:
+yy738:
++c;
-yy721:
+yy739:
{ return ALIGN_RIGHT; }
-yy722:
+yy740:
yych = *++c;
switch (yych) {
- case '\n': goto yy720;
- default: goto yy721;
+ case '\n': goto yy738;
+ default: goto yy739;
}
-yy723:
+yy741:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '|': goto yy725;
+ case '|': goto yy743;
case '\t':
- case ' ': goto yy723;
- case '\r': goto yy727;
- default: goto yy715;
+ case ' ': goto yy741;
+ case '\r': goto yy745;
+ default: goto yy733;
}
-yy725:
+yy743:
++c;
-yy726:
+yy744:
{ return ALIGN_WRAP | ALIGN_RIGHT; }
-yy727:
+yy745:
yych = *++c;
switch (yych) {
- case '\n': goto yy725;
- default: goto yy726;
+ case '\n': goto yy743;
+ default: goto yy744;
}
-yy728:
+yy746:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '|': goto yy732;
+ case '|': goto yy750;
case '\t':
- case ' ': goto yy730;
- case '\r': goto yy734;
- case '+': goto yy736;
+ case ' ': goto yy748;
+ case '\r': goto yy752;
+ case '+': goto yy754;
case '-':
- case '=': goto yy728;
- case ':': goto yy735;
- default: goto yy715;
+ case '=': goto yy746;
+ case ':': goto yy753;
+ default: goto yy733;
}
-yy730:
+yy748:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '|': goto yy732;
+ case '|': goto yy750;
case '\t':
- case ' ': goto yy730;
- case '\r': goto yy734;
- default: goto yy715;
+ case ' ': goto yy748;
+ case '\r': goto yy752;
+ default: goto yy733;
}
-yy732:
+yy750:
++c;
-yy733:
+yy751:
{ return ALIGN_LEFT; }
-yy734:
+yy752:
yych = *++c;
switch (yych) {
- case '\n': goto yy732;
- default: goto yy733;
+ case '\n': goto yy750;
+ default: goto yy751;
}
-yy735:
+yy753:
yych = *++c;
switch (yych) {
- case '+': goto yy741;
- default: goto yy744;
+ case '+': goto yy759;
+ default: goto yy762;
}
-yy736:
+yy754:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '|': goto yy738;
+ case '|': goto yy756;
case '\t':
- case ' ': goto yy736;
- case '\r': goto yy740;
- default: goto yy715;
+ case ' ': goto yy754;
+ case '\r': goto yy758;
+ default: goto yy733;
}
-yy738:
+yy756:
++c;
-yy739:
+yy757:
{ return ALIGN_WRAP | ALIGN_LEFT; }
-yy740:
+yy758:
yych = *++c;
switch (yych) {
- case '\n': goto yy738;
- default: goto yy739;
+ case '\n': goto yy756;
+ default: goto yy757;
}
-yy741:
+yy759:
++c;
yych = *c;
switch (yych) {
case 0x00:
case '\n':
- case '|': goto yy748;
+ case '|': goto yy766;
case '\t':
- case ' ': goto yy741;
- case '\r': goto yy750;
- default: goto yy715;
+ case ' ': goto yy759;
+ case '\r': goto yy768;
+ default: goto yy733;
}
-yy743:
+yy761:
++c;
yych = *c;
-yy744:
+yy762:
switch (yych) {
case 0x00:
case '\n':
- case '|': goto yy745;
+ case '|': goto yy763;
case '\t':
- case ' ': goto yy743;
- case '\r': goto yy747;
- default: goto yy715;
+ case ' ': goto yy761;
+ case '\r': goto yy765;
+ default: goto yy733;
}
-yy745:
+yy763:
++c;
-yy746:
+yy764:
{ return ALIGN_CENTER; }
-yy747:
+yy765:
yych = *++c;
switch (yych) {
- case '\n': goto yy745;
- default: goto yy746;
+ case '\n': goto yy763;
+ default: goto yy764;
}
-yy748:
+yy766:
++c;
-yy749:
+yy767:
{ return ALIGN_WRAP | ALIGN_CENTER; }
-yy750:
+yy768:
yych = *++c;
switch (yych) {
- case '\n': goto yy748;
- default: goto yy749;
+ case '\n': goto yy766;
+ default: goto yy767;
}
-yy751:
+yy769:
yych = *++c;
switch (yych) {
case '-':
- case '=': goto yy728;
- default: goto yy715;
+ case '=': goto yy746;
+ default: goto yy733;
}
-yy752:
+yy770:
++c;
yych = *c;
switch (yych) {
case '\t':
- case ' ': goto yy752;
+ case ' ': goto yy770;
case '-':
- case '=': goto yy716;
- case ':': goto yy751;
- default: goto yy715;
+ case '=': goto yy734;
+ case ':': goto yy769;
+ default: goto yy733;
}
}
case 0x00:
case '\t':
case '\r':
- case ' ': goto yy760;
- case '\n': goto yy756;
- case '<': goto yy757;
- default: goto yy759;
+ case ' ': goto yy778;
+ case '\n': goto yy774;
+ case '<': goto yy775;
+ default: goto yy777;
}
-yy756:
+yy774:
{ return 0; }
-yy757:
+yy775:
++c;
yych = *c;
- goto yy764;
-yy758:
+ goto yy782;
+yy776:
{ return (size_t)( c - start ); }
-yy759:
+yy777:
yych = *++c;
- goto yy762;
-yy760:
+ goto yy780;
+yy778:
yych = *++c;
- goto yy756;
-yy761:
+ goto yy774;
+yy779:
++c;
yych = *c;
-yy762:
+yy780:
switch (yych) {
case 0x00:
case '\t':
case '\n':
case '\r':
- case ' ': goto yy758;
- default: goto yy761;
+ case ' ': goto yy776;
+ default: goto yy779;
}
-yy763:
+yy781:
++c;
yych = *c;
-yy764:
+yy782:
switch (yych) {
case 0x00:
case '\t':
case '\n':
case '\r':
- case ' ': goto yy758;
- case '>': goto yy761;
- default: goto yy763;
+ case ' ': goto yy776;
+ case '>': goto yy779;
+ default: goto yy781;
}
}
char yych;
yych = *c;
switch (yych) {
- case '\n': goto yy767;
- case '"': goto yy768;
- case '\'': goto yy769;
- case '(': goto yy770;
- default: goto yy771;
+ case '\n': goto yy785;
+ case '"': goto yy786;
+ case '\'': goto yy787;
+ case '(': goto yy788;
+ default: goto yy789;
}
-yy767:
+yy785:
{ return 0; }
-yy768:
+yy786:
yych = *(marker = ++c);
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy767;
- default: goto yy780;
+ case '\r': goto yy785;
+ default: goto yy798;
}
-yy769:
+yy787:
yych = *(marker = ++c);
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy767;
- default: goto yy778;
+ case '\r': goto yy785;
+ default: goto yy796;
}
-yy770:
+yy788:
yych = *(marker = ++c);
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy767;
- default: goto yy773;
+ case '\r': goto yy785;
+ default: goto yy791;
}
-yy771:
+yy789:
yych = *++c;
- goto yy767;
-yy772:
+ goto yy785;
+yy790:
++c;
yych = *c;
-yy773:
+yy791:
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy774;
- case ')': goto yy775;
- default: goto yy772;
+ case '\r': goto yy792;
+ case ')': goto yy793;
+ default: goto yy790;
}
-yy774:
+yy792:
c = marker;
- goto yy767;
-yy775:
+ goto yy785;
+yy793:
++c;
{ return (size_t)( c - start ); }
-yy777:
+yy795:
++c;
yych = *c;
-yy778:
+yy796:
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy774;
- case '\'': goto yy775;
- default: goto yy777;
+ case '\r': goto yy792;
+ case '\'': goto yy793;
+ default: goto yy795;
}
-yy779:
+yy797:
++c;
yych = *c;
-yy780:
+yy798:
switch (yych) {
case 0x00:
case '\n':
- case '\r': goto yy774;
- case '"': goto yy775;
- default: goto yy779;
+ case '\r': goto yy792;
+ case '"': goto yy793;
+ default: goto yy797;
}
}
char yych;
yych = *c;
switch (yych) {
- case '\n': goto yy783;
- case ' ': goto yy784;
- case '-': goto yy786;
- case '=': goto yy785;
- default: goto yy787;
+ case '\n': goto yy801;
+ case ' ': goto yy802;
+ case '-': goto yy804;
+ case '=': goto yy803;
+ default: goto yy805;
}
-yy783:
+yy801:
{ return 0; }
-yy784:
+yy802:
yych = *(marker = ++c);
switch (yych) {
- case ' ': goto yy799;
- case '-': goto yy800;
- case '=': goto yy801;
- default: goto yy783;
+ case ' ': goto yy817;
+ case '-': goto yy818;
+ case '=': goto yy819;
+ default: goto yy801;
}
-yy785:
+yy803:
yych = *(marker = ++c);
switch (yych) {
- case '=': goto yy794;
- default: goto yy783;
+ case '=': goto yy812;
+ default: goto yy801;
}
-yy786:
+yy804:
yych = *(marker = ++c);
switch (yych) {
- case '-': goto yy788;
- default: goto yy783;
+ case '-': goto yy806;
+ default: goto yy801;
}
-yy787:
+yy805:
yych = *++c;
- goto yy783;
-yy788:
+ goto yy801;
+yy806:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '\n': goto yy791;
- case '\r': goto yy793;
- case '-': goto yy788;
- default: goto yy790;
+ case '\n': goto yy809;
+ case '\r': goto yy811;
+ case '-': goto yy806;
+ default: goto yy808;
}
-yy790:
+yy808:
c = marker;
- goto yy783;
-yy791:
+ goto yy801;
+yy809:
++c;
-yy792:
+yy810:
{ return (size_t)( c - start ); }
-yy793:
+yy811:
yych = *++c;
switch (yych) {
- case '\n': goto yy791;
- default: goto yy792;
+ case '\n': goto yy809;
+ default: goto yy810;
}
-yy794:
+yy812:
++c;
yych = *c;
switch (yych) {
case 0x00:
- case '\n': goto yy796;
- case '\r': goto yy798;
- case '=': goto yy794;
- default: goto yy790;
+ case '\n': goto yy814;
+ case '\r': goto yy816;
+ case '=': goto yy812;
+ default: goto yy808;
}
-yy796:
+yy814:
++c;
-yy797:
+yy815:
{ return (size_t)( c - start ); }
-yy798:
+yy816:
yych = *++c;
switch (yych) {
- case '\n': goto yy796;
- default: goto yy797;
+ case '\n': goto yy814;
+ default: goto yy815;
}
-yy799:
+yy817:
yych = *++c;
switch (yych) {
- case ' ': goto yy802;
- case '-': goto yy800;
- case '=': goto yy801;
- default: goto yy790;
+ case ' ': goto yy820;
+ case '-': goto yy818;
+ case '=': goto yy819;
+ default: goto yy808;
}
-yy800:
+yy818:
yych = *++c;
switch (yych) {
- case '-': goto yy788;
- default: goto yy790;
+ case '-': goto yy806;
+ default: goto yy808;
}
-yy801:
+yy819:
yych = *++c;
switch (yych) {
- case '=': goto yy794;
- default: goto yy790;
+ case '=': goto yy812;
+ default: goto yy808;
}
-yy802:
+yy820:
++c;
switch ((yych = *c)) {
- case '-': goto yy800;
- case '=': goto yy801;
- default: goto yy790;
+ case '-': goto yy818;
+ case '=': goto yy819;
+ default: goto yy808;
}
}
size_t scan_ref_abbreviation(const char * c);
size_t scan_ref_citation(const char * c);
size_t scan_ref_foot(const char * c);
+size_t scan_ref_glossary(const char * c);
size_t scan_ref_link(const char * c);
size_t scan_ref_link_no_attributes(const char * c);
size_t scan_setext(const char * c);
ref_foot = non_indent '[^' label ']' ':' finish_line;
+ ref_glossary = non_indent '[?' label ']' ':' finish_line;
+
ref_link = non_indent '[' label ']' ':' finish_line;
destination = ('<' [^ \t\n\r\x00>]* '>') | [^ \t\n\r\x00]+;
*/
}
+
size_t scan_ref_foot(const char * c) {
const char * marker = NULL;
const char * start = c;
}
+size_t scan_ref_glossary(const char * c) {
+ const char * marker = NULL;
+ const char * start = c;
+
+/*!re2c
+ ref_glossary { return (size_t)( c - start ); }
+ .? { return 0; }
+*/
+}
+
+
size_t scan_ref_link_no_attributes(const char * c) {
const char * marker = NULL;
const char * start = c;
void store_footnote(scratch_pad * scratch, footnote * f);
+void store_glossary(scratch_pad * scratch, footnote * f);
+
void store_link(scratch_pad * scratch, link * l);
void store_metadata(scratch_pad * scratch, meta * m);
store_link(p, l);
}
+ // Store citations in a hash for rapid retrieval when exporting
+ footnote * f;
+
+ p->used_citations = stack_new(0);
+ p->inline_citations_to_free = stack_new(0);
+ p->citation_being_printed = 0;
+
+ p->citation_hash = NULL;
+
+ for (int i = 0; i < e->citation_stack->size; ++i)
+ {
+ f = stack_peek_index(e->citation_stack, i);
+
+ store_citation(p, f);
+ }
+
// Store footnotes in a hash for rapid retrieval when exporting
p->used_footnotes = stack_new(0); // Store footnotes as we use them
p->inline_footnotes_to_free = stack_new(0); // Inline footnotes need to be freed
p->footnote_hash = NULL; // Store defined footnotes in a hash
- footnote * f;
-
for (int i = 0; i < e->footnote_stack->size; ++i)
{
f = stack_peek_index(e->footnote_stack, i);
store_footnote(p, f);
}
- // Store citations in a hash for rapid retrieval when exporting
- p->used_citations = stack_new(0);
- p->inline_citations_to_free = stack_new(0);
- p->citation_being_printed = 0;
+ // Store glossaries in a hash for rapid retrieval when exporting
+ p->used_glossaries = stack_new(0);
+ p->inline_glossaries_to_free = stack_new(0);
+ p->glossary_being_printed = 0;
- p->citation_hash = NULL;
+ p->glossary_hash = NULL;
- for (int i = 0; i < e->citation_stack->size; ++i)
+ for (int i = 0; i < e->glossary_stack->size; ++i)
{
- f = stack_peek_index(e->citation_stack, i);
+ f = stack_peek_index(e->glossary_stack, i);
- store_citation(p, f);
+ store_glossary(p, f);
}
// Store metadata in a hash for rapid retrieval when exporting
}
stack_free(scratch->inline_citations_to_free);
+
+ // Free glossary hash
+ HASH_ITER(hh, scratch->glossary_hash, f, f_tmp) {
+ HASH_DEL(scratch->glossary_hash, f); // Remove item from hash
+ free(f); // Free the fn_holder
+ }
+
+ stack_free(scratch->used_glossaries);
+
+ while (scratch->inline_glossaries_to_free->size) {
+ footnote_free(stack_pop(scratch->inline_glossaries_to_free));
+ }
+ stack_free(scratch->inline_glossaries_to_free);
+
+
// Free metadata hash
meta * m, * m_tmp;
}
+void store_glossary(scratch_pad * scratch, footnote * f) {
+ fn_holder * temp_holder;
+
+ // Store by `label_text`?
+ HASH_FIND_STR(scratch->glossary_hash, f->label_text, temp_holder);
+
+ if (!temp_holder) {
+ temp_holder = fn_holder_new(f);
+ HASH_ADD_KEYPTR(hh, scratch->glossary_hash, f->label_text, strlen(f->label_text), temp_holder);
+ }
+}
+
+
void store_metadata(scratch_pad * scratch, meta * m) {
meta * temp;
switch (label->type) {
case PAIR_BRACKET_CITATION:
- if (e->extensions & EXT_NOTES) {
- if (!token_chain_accept(remainder, COLON))
- return false;
-
- title = *remainder; // Track first token of content in 'title'
- f = footnote_new(e->dstr->str, label, title);
-
- // Store citation for later use
- stack_push(e->citation_stack, f);
-
- break;
- }
case PAIR_BRACKET_FOOTNOTE:
+ case PAIR_BRACKET_GLOSSARY:
if (e->extensions & EXT_NOTES) {
if (!token_chain_accept(remainder, COLON))
return false;
title = *remainder; // Track first token of content in 'title'
- f = footnote_new(e->dstr->str, label, title);
- // Store footnote for later use
- stack_push(e->footnote_stack, f);
+ // Store for later use
+ switch (label->type) {
+ case PAIR_BRACKET_CITATION:
+ f = footnote_new(e->dstr->str, label, title);
+ stack_push(e->citation_stack, f);
+ break;
+ case PAIR_BRACKET_GLOSSARY:
+ f = footnote_new(e->dstr->str, label, title);
+ stack_push(e->glossary_stack, f);
+ break;
+ case PAIR_BRACKET_FOOTNOTE:
+ f = footnote_new(e->dstr->str, label, title);
+ stack_push(e->footnote_stack, f);
+ break;
+ }
break;
}
label = label->child;
switch (block->type) {
- case BLOCK_DEF_FOOTNOTE:
- f = footnote_new(e->dstr->str, label, block->child);
- stack_push(e->footnote_stack, f);
- label->type = TEXT_EMPTY;
- label->next->type = TEXT_EMPTY;
- strip_leading_whitespace(label, e->dstr->str);
- break;
case BLOCK_DEF_CITATION:
+ case BLOCK_DEF_FOOTNOTE:
+ case BLOCK_DEF_GLOSSARY:
f = footnote_new(e->dstr->str, label, block->child);
- stack_push(e->citation_stack, f);
+ switch (block->type) {
+ case BLOCK_DEF_CITATION:
+ stack_push(e->citation_stack, f);
+ break;
+ case BLOCK_DEF_FOOTNOTE:
+ stack_push(e->footnote_stack, f);
+ break;
+ case BLOCK_DEF_GLOSSARY:
+ // Strip leading '?' from term
+ memmove(f->clean_text, &(f->clean_text)[1],strlen(f->clean_text));
+
+ stack_push(e->glossary_stack, f);
+ break;
+ }
label->type = TEXT_EMPTY;
label->next->type = TEXT_EMPTY;
strip_leading_whitespace(label, e->dstr->str);
mmd_export_token_tree_html(out, e->dstr->str, e->root, 0, scratch);
mmd_export_footnote_list_html(out, e->dstr->str, scratch);
+ mmd_export_glossary_list_html(out, e->dstr->str, scratch);
mmd_export_citation_list_html(out, e->dstr->str, scratch);
if (scratch->extensions & EXT_COMPLETE)
case PAIR_BRACKET:
case PAIR_BRACKET_CITATION:
case PAIR_BRACKET_FOOTNOTE:
+ case PAIR_BRACKET_GLOSSARY:
case PAIR_BRACKET_VARIABLE:
case PAIR_BRACKET_ABBREVIATION:
*final_link = NULL;
}
+void mark_glossary_as_used(scratch_pad * scratch, footnote * c) {
+ if (c->count == -1) {
+ // Add glossary to used stack
+ stack_push(scratch->used_glossaries, c);
+
+ // Update counter
+ c->count = scratch->used_glossaries->size;
+ }
+}
+
+
size_t extract_citation_from_stack(scratch_pad * scratch, const char * target) {
char * key = clean_string(target, true);
}
+size_t extract_glossary_from_stack(scratch_pad * scratch, const char * target) {
+ char * key = clean_string(target, true);
+
+ fn_holder * h;
+
+ HASH_FIND_STR(scratch->glossary_hash, key, h);
+
+ free(key);
+
+ if (h) {
+ mark_glossary_as_used(scratch, h->note);
+ return h->note->count;
+ }
+
+ key = label_from_string(target);
+
+ HASH_FIND_STR(scratch->glossary_hash, key, h);
+
+ free(key);
+
+ if (h) {
+ mark_glossary_as_used(scratch, h->note);
+ return h->note->count;
+ }
+
+ // None found
+ return -1;
+}
+
+
void footnote_from_bracket(const char * source, scratch_pad * scratch, token * t, short * num) {
// Get text inside bracket
char * text = text_inside_pair(source, t);
}
+void glossary_from_bracket(const char * source, scratch_pad * scratch, token * t, short * num) {
+ // Get text inside bracket
+ char * text = text_inside_pair(source, t);
+ short glossary_id = extract_glossary_from_stack(scratch, text);
+
+ free(text);
+
+ if (glossary_id == -1) {
+ // No match, this is an inline glossary -- create a new glossary entry
+ t->child->type = TEXT_EMPTY;
+ t->child->mate->type = TEXT_EMPTY;
+
+ // Create glossary
+ token * label = t->child;
+ while (label && label->type != PAIR_PAREN)
+ label = label->next;
+
+ if (label) {
+ footnote * temp = footnote_new(source, label, label->next);
+
+ // Store as used
+ stack_push(scratch->used_glossaries, temp);
+ *num = scratch->used_glossaries->size;
+ temp->count = *num;
+
+ // We need to free this one later since it doesn't exist
+ // in the engine's stack, on the scratch_pad stack
+ stack_push(scratch->inline_glossaries_to_free, temp);
+ } else {
+ // Improperly formatted glossary
+ *num = -1;
+ }
+ } else {
+ // Glossary in stack
+ *num = glossary_id;
+ }
+}
+
+
void read_table_column_alignments(const char * source, token * table, scratch_pad * scratch) {
token * walker = table->child->child;
struct fn_holder * citation_hash;
short citation_being_printed;
+ stack * used_glossaries;
+ stack * inline_glossaries_to_free;
+ struct fn_holder * glossary_hash;
+ short glossary_being_printed;
+
struct abbr * abbreviation_hash;
short language;
char * url_accept(const char * source, size_t start, size_t max_len, size_t * end_pos, bool validate);
-void footnote_from_bracket(const char * source, scratch_pad * scratch, token * t, short * num);
void citation_from_bracket(const char * source, scratch_pad * scratch, token * t, short * num);
+void footnote_from_bracket(const char * source, scratch_pad * scratch, token * t, short * num);
+void glossary_from_bracket(const char * source, scratch_pad * scratch, token * t, short * num);
meta * meta_new(const char * source, size_t start, size_t len);
void meta_set_value(meta * m, const char * value);
--- /dev/null
+<!DOCTYPE html>
+<html>
+<head>
+ <meta charset="utf-8"/>
+ <title>Glossary</title>
+</head>
+<body>
+
+<p><a href="#gn:1" id="gnref:1" title="see glossary" class="glossary">foo</a></p>
+
+<p><a href="#gn:2" id="gnref:2" title="see glossary" class="glossary">bar</a></p>
+
+<p><a href="#gn:3" id="gnref:3" title="see glossary" class="glossary">foo bar</a></p>
+
+<p><a href="#gn:1" title="see glossary" class="glossary">foo</a></p>
+
+<p>[?bar]</p>
+
+<p>5</p>
+
+<div class="glossary">
+<hr />
+<ol>
+
+<li id="gn:1">
+foo: <p>Reference <a href="#gnref:1" title="return to body" class="reverseglossary"> ↩</a></p>
+</li>
+
+<li id="gn:2">
+bar: <p>Inline <a href="#gnref:2" title="return to body" class="reverseglossary"> ↩</a></p>
+</li>
+
+<li id="gn:3">
+foo bar: <p>Reference</p>
+
+<p>With second para. <a href="#gnref:3" title="return to body" class="reverseglossary"> ↩</a></p>
+</li>
+
+</ol>
+</div>
+
+</body>
+</html>
+
--- /dev/null
+<p>latexconfig: article
+Title: Glossary</p>
+
+<p><a href="Reference">?foo</a></p>
+
+<p>[?(bar) Inline]</p>
+
+<p><a href="Reference">?foo bar</a></p>
+
+<p><a href="Reference">?foo</a></p>
+
+<p>[?bar]</p>
+
+<p>5</p>
+
+<pre><code>With second para.
+</code></pre>
--- /dev/null
+\input{mmd6-article-leader}
+\def\mytitle{Glossary}
+\longnewglossaryentry{foo}{name=foo}{Reference}
+
+\longnewglossaryentry{foobar}{name=foo bar}{
+
+Reference
+
+With second para.}
+
+\input{mmd6-article-begin}
+
+\gls{foo}
+
+\newglossaryentry{bar}{name=bar, description={Inline}}\gls{bar}
+
+\gls{foobar}
+
+\gls{foo}
+
+[?bar]
+
+5
+
+\input{mmd6-article-footer}
+\end{document}
--- /dev/null
+latexconfig: article
+Title: Glossary
+
+[?foo]
+
+[?(bar) Inline]
+
+[?foo bar]
+
+[?foo]
+
+[?bar]
+
+5
+
+[?foo]: Reference
+
+[?foo bar]: Reference
+
+ With second para.