Allow queries to match on supertypes

Co-authored-by: Ayman Nadeem <aymannadeem@github.com>
This commit is contained in:
Max Brunsfeld 2020-09-21 12:34:48 -07:00
parent f10a8448ed
commit b5a9adb555
8 changed files with 155 additions and 20 deletions

View file

@ -68,6 +68,7 @@ impl<'a> Minimizer<'a> {
..
} => {
if !self.simple_aliases.contains_key(&symbol)
&& !self.syntax_grammar.supertype_symbols.contains(&symbol)
&& !aliased_symbols.contains(&symbol)
&& self.syntax_grammar.variables[symbol.index].kind
!= VariableType::Named

View file

@ -460,6 +460,9 @@ impl Generator {
VariableType::Hidden => {
add_line!(self, ".visible = false,");
add_line!(self, ".named = true,");
if self.syntax_grammar.supertype_symbols.contains(symbol) {
add_line!(self, ".supertype = true,");
}
}
VariableType::Auxiliary => {
add_line!(self, ".visible = false,");