Commit graph

22 commits

Author SHA1 Message Date
Max Brunsfeld
a46b8fcb46 Implement parse state merging 2019-01-01 13:47:29 -08:00
Max Brunsfeld
c6b9e97c58 Implement token conflict map 2018-12-30 19:31:55 -08:00
Max Brunsfeld
605b50e58b Start work on shrinking parse table 2018-12-29 13:57:34 -08:00
Max Brunsfeld
479400e5d3 Add handling of precedence within tokens 2018-12-29 13:56:00 -08:00
Max Brunsfeld
5258ee2e6a Implement more C code generation 2018-12-23 14:19:18 -08:00
Max Brunsfeld
99ecf29e4b Fix typo causing infinite recursion in expand_regex 2018-12-23 10:15:23 -08:00
Max Brunsfeld
261a7fd073 Represent ParseItem with reference to Production
Implement comparisons in a way that disregards past steps.
2018-12-21 15:02:48 -08:00
Max Brunsfeld
a3dcfa0a52 Implement more of parse table generation 2018-12-20 13:36:39 -08:00
Max Brunsfeld
5eb8806959 Handle repetition ranges in regexes 2018-12-20 13:36:21 -08:00
Max Brunsfeld
988dc7de35 Handle precedence and aliases properly when inlining variables 2018-12-20 13:35:34 -08:00
Max Brunsfeld
d078c263b0 Fix bugs in grammar JSON parsing 2018-12-20 13:35:13 -08:00
Max Brunsfeld
143588c148 Implement ItemSetBuilder 2018-12-18 17:31:54 -08:00
Max Brunsfeld
889f232b4c Implement variable inlining 2018-12-18 16:05:36 -08:00
Max Brunsfeld
5fa586f7c9 Format expand_tokens file 2018-12-12 21:01:41 -08:00
Max Brunsfeld
842421633c Fix bugs in nfa generation 2018-12-12 20:58:26 -08:00
Max Brunsfeld
0103a83f3f Integrate separator rules into lexer nfa 2018-12-12 18:04:29 -08:00
Max Brunsfeld
40d24097ec Implement extract_simple_aliases 2018-12-12 16:41:32 -08:00
Max Brunsfeld
7acfb2b74e Implement flatten_grammar 2018-12-11 12:14:34 -08:00
Max Brunsfeld
d482894c7d Implement expand_tokens 2018-12-08 23:35:48 -08:00
Max Brunsfeld
ead6ca1738 Generate NFAs from regexes 2018-12-08 13:44:11 -08:00
Max Brunsfeld
0688a5edd3 Implement extract_tokens 2018-12-06 22:11:52 -08:00
Max Brunsfeld
a4c4b85a16 Initial commit 2018-12-05 16:19:21 -08:00