Be less conservative in merging parse states with external tokens

Also, clean up the internal representation of external tokens
This commit is contained in:
Max Brunsfeld 2018-03-16 14:56:57 -07:00
parent fe29173d5f
commit b7d0606fbd
7 changed files with 42 additions and 51 deletions

View file

@ -75,16 +75,8 @@ describe("intern_symbols", []() {
{},
{},
{
Variable{
"w",
VariableTypeNamed,
NamedSymbol{"w"}
},
Variable{
"z",
VariableTypeNamed,
NamedSymbol{"z"}
},
NamedSymbol{"w"},
NamedSymbol{"z"},
},
{}
};
@ -95,12 +87,12 @@ describe("intern_symbols", []() {
Variable{
"w",
VariableTypeNamed,
Symbol::external(0)
Symbol::external(0),
},
Variable{
"z",
VariableTypeNamed,
Symbol::non_terminal(2)
Symbol::non_terminal(2),
},
}))
});