Create ambiguity nodes when joining stack heads
This commit is contained in:
parent
1ca5f4ab15
commit
381f89f8ba
13 changed files with 130 additions and 72 deletions
|
|
@ -69,6 +69,7 @@ class ParseTableBuilder {
|
|||
|
||||
parse_table.symbols.insert(rules::ERROR());
|
||||
parse_table.symbols.insert(rules::DOCUMENT());
|
||||
parse_table.symbols.insert(rules::AMBIGUITY());
|
||||
|
||||
return { parse_table, nullptr };
|
||||
}
|
||||
|
|
|
|||
|
|
@ -315,8 +315,12 @@ class CCodeGenerator {
|
|||
return "ts_builtin_sym_error";
|
||||
else if (symbol == rules::END_OF_INPUT())
|
||||
return "ts_builtin_sym_end";
|
||||
else
|
||||
else if (symbol == rules::DOCUMENT())
|
||||
return "ts_builtin_sym_document";
|
||||
else if (symbol == rules::AMBIGUITY())
|
||||
return "ts_builtin_sym_ambiguity";
|
||||
else
|
||||
return "";
|
||||
} else {
|
||||
string name = sanitize_name(rule_name(symbol));
|
||||
if (symbol.is_auxiliary())
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ Symbol END_OF_INPUT() { return Symbol(-1, SymbolOptionToken); }
|
|||
Symbol ERROR() { return Symbol(-2, SymbolOptionToken); }
|
||||
Symbol START() { return Symbol(-3); }
|
||||
Symbol DOCUMENT() { return Symbol(-4); }
|
||||
Symbol AMBIGUITY() { return Symbol(-5); }
|
||||
|
||||
} // namespace rules
|
||||
} // namespace tree_sitter
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ Symbol ERROR();
|
|||
Symbol START();
|
||||
Symbol END_OF_INPUT();
|
||||
Symbol DOCUMENT();
|
||||
Symbol AMBIGUITY();
|
||||
|
||||
} // namespace rules
|
||||
} // namespace tree_sitter
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue