Compute closure of item sets under symbol expansion

This commit is contained in:
Max Brunsfeld 2013-11-12 18:37:02 -08:00
parent 6bbaba3ef8
commit f7063ba1d8
23 changed files with 251 additions and 91 deletions

View file

@ -1,43 +1,7 @@
#include "spec_helper.h"
Describe(parse_table_construction) {
Grammar grammar = Grammar(
{
"expression",
"term",
"factor",
"number",
"variable",
"plus",
"times",
"left_paren",
"right_paren"
}, {
rules::choice({
rules::seq({
rules::sym("term"),
rules::sym("plus"),
rules::sym("term") }),
rules::sym("term") }),
rules::choice({
rules::seq({
rules::sym("factor"),
rules::sym("times"),
rules::sym("factor") }),
rules::sym("factor") }),
rules::choice({
rules::sym("variable"),
rules::sym("number"),
rules::seq({
rules::sym("left_paren"),
rules::sym("expression"),
rules::sym("right_paren") }) }),
rules::pattern("\\d+"),
rules::pattern("\\w+"),
rules::str("+"),
rules::str("*"),
rules::str("("),
rules::str(")")
}
);
Describe(the_starting_state) {
};
};