Sven M. Hallberg
|
c64a4e435e
|
Merge remote-tracking branch 'tq/master' into LL such that it compiles
Conflicts:
src/Makefile
src/backends/packrat.c
src/compile.c
src/hammer.h
src/internal.h
src/parsers/action.c
src/parsers/and.c
src/parsers/attr_bool.c
src/parsers/bits.c
src/parsers/butnot.c
src/parsers/ch.c
src/parsers/charset.c
src/parsers/choice.c
src/parsers/difference.c
src/parsers/end.c
src/parsers/epsilon.c
src/parsers/ignore.c
src/parsers/ignoreseq.c
src/parsers/indirect.c
src/parsers/int_range.c
src/parsers/many.c
src/parsers/not.c
src/parsers/nothing.c
src/parsers/optional.c
src/parsers/sequence.c
src/parsers/token.c
src/parsers/unimplemented.c
src/parsers/whitespace.c
src/parsers/xor.c
|
2013-05-11 19:09:22 +02:00 |
|
Sven M. Hallberg
|
b63980f137
|
add LL(1) driver
|
2013-05-11 15:14:10 +02:00 |
|
Sven M. Hallberg
|
369dbcd21f
|
actually, just cast off the const inside h_compile
|
2013-05-11 15:10:31 +02:00 |
|
Sven M. Hallberg
|
ebcfa86911
|
finish (untested) LL(1) table generation
|
2013-05-08 18:49:05 +02:00 |
|
Sven M. Hallberg
|
52f81045fc
|
start filling in h_ll_compile()
|
2013-05-08 18:04:08 +02:00 |
|
Sven M. Hallberg
|
9f5c32e205
|
add h_cfgrammar_free()
|
2013-05-08 18:02:35 +02:00 |
|
Sven M. Hallberg
|
65ee3593bd
|
compile function can't take a const parser
|
2013-05-08 18:01:55 +02:00 |
|
Sven M. Hallberg
|
af4971b265
|
add proper parse table type and lookup function
|
2013-05-08 17:04:19 +02:00 |
|
Sven M. Hallberg
|
1631e9c08f
|
constify read-only hashtable methods
|
2013-05-08 17:01:23 +02:00 |
|
Sven M. Hallberg
|
f00060b2bd
|
add (untested) predict set computation
|
2013-05-08 16:12:34 +02:00 |
|
Sven M. Hallberg
|
2943cfdfdd
|
quick fix to improve "hashing" of pointers (discard 4 least significant bits)
|
2013-05-08 16:07:51 +02:00 |
|
Sven M. Hallberg
|
66b0ed7bf1
|
move h_eq_ptr and h_hash_ptr into datastructures.c / internal.h
|
2013-05-08 15:54:29 +02:00 |
|
Sven M. Hallberg
|
5593b826e3
|
add scaffold for grammar tests and codify the dummy test case
|
2013-05-08 00:48:46 +02:00 |
|
Sven M. Hallberg
|
188d369a9b
|
move grammar analysis stuff to its own files
|
2013-05-07 23:56:47 +02:00 |
|
Sven M. Hallberg
|
dab5159550
|
rename h_grammar to h_cfgrammar
|
2013-05-07 23:37:02 +02:00 |
|
Sven M. Hallberg
|
e31e03927a
|
don't output extraneous comma in symbol sets
|
2013-05-07 18:51:42 +02:00 |
|
Sven M. Hallberg
|
16f933013a
|
represent input tokens in a way that doesn't clash with NULL
|
2013-05-07 18:47:32 +02:00 |
|
Sven M. Hallberg
|
e504c6fc36
|
add dummy test function
|
2013-05-05 22:15:40 +02:00 |
|
Sven M. Hallberg
|
d0eb2ce891
|
add pretty printers for symbol and token sets
|
2013-05-05 22:14:21 +02:00 |
|
Sven M. Hallberg
|
cd4ce77bec
|
fix derpy bugs in grammar analysis
|
2013-05-05 22:13:50 +02:00 |
|
Sven M. Hallberg
|
b28d82bdeb
|
h_hashtable_put generated double entries if the match was last in list
|
2013-05-05 22:12:05 +02:00 |
|
Sven M. Hallberg
|
5dee5fec6c
|
add grammar pretty printer
|
2013-05-05 19:34:12 +02:00 |
|
Sven M. Hallberg
|
2f81c2b400
|
fix hashtable iteration in h_hashtable_update
|
2013-05-05 19:32:23 +02:00 |
|
Sven M. Hallberg
|
916027a55f
|
take the const off static epsilon parser so h_desugar can memoize
|
2013-05-05 19:31:37 +02:00 |
|
Sven M. Hallberg
|
c26d5c114a
|
totally forgot to record the start symbol of the grammar
|
2013-05-05 11:17:57 +02:00 |
|
Sven M. Hallberg
|
2ce5d1129c
|
forgot to initialize g->follow
|
2013-04-30 21:55:44 +02:00 |
|
Sven M. Hallberg
|
950bed8b8c
|
add (untested) follow set computation
|
2013-04-30 20:17:51 +02:00 |
|
Sven M. Hallberg
|
85aaf94332
|
change sequence variants of first and derives_epsilon to take a
null-terminated array
|
2013-04-30 20:16:16 +02:00 |
|
Sven M. Hallberg
|
73a84d17b8
|
add (untested) first set analysis
|
2013-04-30 17:49:35 +02:00 |
|
Sven M. Hallberg
|
0b9c9a6a10
|
formatting
|
2013-04-30 17:49:07 +02:00 |
|
Sven M. Hallberg
|
296ffb87b6
|
const adjustments to ll backend
|
2013-04-30 17:48:24 +02:00 |
|
Sven M. Hallberg
|
209bd43f10
|
add h_hashtable_update and h_hashset_put_all
|
2013-04-30 17:45:33 +02:00 |
|
Sven M. Hallberg
|
109d60fca3
|
make hashtable keys const
|
2013-04-30 17:44:54 +02:00 |
|
Sven M. Hallberg
|
24ed1bec53
|
wording fix
|
2013-04-28 17:04:49 +02:00 |
|
Sven M. Hallberg
|
5edb4b41be
|
always place at least one element in g->nts
|
2013-04-28 16:57:14 +02:00 |
|
Sven M. Hallberg
|
3ff6de5d8a
|
add (untested) "derives epsilon" analysis
|
2013-04-27 23:20:13 +02:00 |
|
Dan Hirsch
|
13088c9d7a
|
Finshed up the regex backend
|
2013-04-26 20:36:54 -07:00 |
|
Sven M. Hallberg
|
da75a7ae9a
|
add grammar representation functions and WIP LL scaffold
|
2013-04-27 04:24:09 +02:00 |
|
Sven M. Hallberg
|
88091b602f
|
wrap all allocs of HParser in helper h_new_parser
|
2013-04-27 04:17:47 +02:00 |
|
Sven M. Hallberg
|
3dfc313118
|
try to clean up and debug desugar_many
|
2013-04-27 03:40:21 +02:00 |
|
Sven M. Hallberg
|
fd10e83bfe
|
add alias(es) for HHashSet from HHashtable
|
2013-04-27 00:55:55 +02:00 |
|
Sven M. Hallberg
|
7180169af4
|
save a parser's desugared form when h_desugar is called on it for the first time
|
2013-04-27 00:55:42 +02:00 |
|
Dan Hirsch
|
204147a3d2
|
Merge remote-tracking branch 'mlp/regex'
|
2013-04-22 21:07:18 -04:00 |
|
Meredith L. Patterson
|
07d35c72ff
|
Most of RVM desugaring done in first draft, for TQ to check.
|
2013-04-22 18:06:17 -07:00 |
|
Sven M. Hallberg
|
1325ebcdd1
|
add LL backend stub
|
2013-04-17 15:10:33 +02:00 |
|
Sven M. Hallberg
|
e73377fbda
|
actually use the chosen backend in benchmark, was always PB_MIN
|
2013-04-17 15:09:24 +02:00 |
|
Dan Hirsch
|
b98528bfea
|
Ignored a whole bunch of stuff that was clogging up my repo
|
2013-03-21 18:53:56 -07:00 |
|
Dan Hirsch
|
fc653d5dd0
|
Added note on status to milestone2 tracker
|
2013-03-21 18:53:35 -07:00 |
|
Meredith L. Patterson
|
a88c6c8a8a
|
Merge pull request #7 from zaxtax/regex
Adding epislon and nothing
|
2013-03-18 17:12:40 -07:00 |
|
Rob Zinkov
|
e69fd2e5b9
|
Adding epislon and nothing
|
2013-03-18 15:27:16 -07:00 |
|