Dan Hirsch
|
0600440b7c
|
Got a lot of regex test cases working
|
2013-05-23 23:27:07 +02:00 |
|
Meredith L. Patterson
|
1c7e9947a4
|
merging in aegis' JNI bindings
|
2013-05-23 00:58:27 -07:00 |
|
Sven M. Hallberg
|
2c8d76d7ea
|
refactor and bughunt unsuccessfully trying to find out why
h_first(2, ...) won't give me length-2 strings
|
2013-05-22 22:45:25 +02:00 |
|
Sven M. Hallberg
|
f5d5c36756
|
generalize grammar analysis to k>1
|
2013-05-22 20:38:36 +02:00 |
|
Sven M. Hallberg
|
91c04314a4
|
refactor h_llk_lookup to take the input stream as argument
|
2013-05-20 21:28:16 +02:00 |
|
Sven M. Hallberg
|
c794be5b6f
|
consider HCF_CHARSET terminal symbols (as the LL driver already treats them)
|
2013-05-14 16:15:58 +02:00 |
|
Sven M. Hallberg
|
623fd6b030
|
add "reshape" action to HCFChoice
|
2013-05-14 11:54:43 +02:00 |
|
Sven M. Hallberg
|
0431528065
|
detect parse error in llk dummy test
|
2013-05-14 11:51:54 +02:00 |
|
Sven M. Hallberg
|
fdcfc243b8
|
formatting
|
2013-05-11 23:41:47 +02:00 |
|
Sven M. Hallberg
|
f1810d8be6
|
make h_llktable_free a no-op on NULL, just to be safe
|
2013-05-11 22:22:02 +02:00 |
|
Sven M. Hallberg
|
1fe6b2ade9
|
add h_packrat_free
|
2013-05-11 22:19:36 +02:00 |
|
Sven M. Hallberg
|
286458f58a
|
parser->data got renamed to backend_data, also h_llk_free
|
2013-05-11 22:02:59 +02:00 |
|
Sven M. Hallberg
|
62d48d2f5a
|
derp, forgot that table lookup can fail
|
2013-05-11 21:41:53 +02:00 |
|
Sven M. Hallberg
|
ccdb0fa85c
|
eliminate duplication of result handling code in LL driver
|
2013-05-11 20:40:33 +02:00 |
|
Sven M. Hallberg
|
88261f69ba
|
derp, forgot to save original nonterminal in stack frame
|
2013-05-11 19:26:22 +02:00 |
|
Sven M. Hallberg
|
b6aab591ea
|
add compile and parse steps to the llk dummy test (segfaults on parse)
|
2013-05-11 19:10:39 +02:00 |
|
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
|
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
|
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
|
f00060b2bd
|
add (untested) predict set computation
|
2013-05-08 16:12:34 +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
|
5dee5fec6c
|
add grammar pretty printer
|
2013-05-05 19:34:12 +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
|
296ffb87b6
|
const adjustments to ll backend
|
2013-04-30 17:48:24 +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
|
1325ebcdd1
|
add LL backend stub
|
2013-04-17 15:10:33 +02:00 |
|
Dan Hirsch
|
99f4e18f1f
|
Fixed a bug in RVM_MATCH
|
2013-03-17 22:44:30 -07:00 |
|
Dan Hirsch
|
f5245eaa23
|
Whoops. Meant to compile that first
|
2013-03-17 22:01:54 -07:00 |
|
Dan Hirsch
|
17b03dbf4d
|
Added implementations of framework functions
|
2013-03-17 20:17:55 -07:00 |
|
Dan Hirsch
|
4c2a536151
|
Added framework for implementing HParser-to-RVM compiler
|
2013-03-17 19:56:43 -07:00 |
|
Dan Hirsch
|
c19d7bb66e
|
Regex VM finished but untested.
|
2013-03-09 21:42:49 -08:00 |
|
Dan Hirsch
|
a8ab63e096
|
Tiny change
|
2013-03-09 17:25:25 -08:00 |
|
Dan Hirsch
|
55e5bc48ab
|
Refactored a bit
|
2013-02-20 02:25:42 -05:00 |
|