Sven M. Hallberg
|
9585a5946e
|
use lookahead stream directly for LR (terminal) lookup
|
2013-06-21 23:22:07 +02:00 |
|
Sven M. Hallberg
|
3be83c7fa2
|
set index and offset of result tokens in llk driver
|
2013-06-04 21:59:39 +02:00 |
|
Sven M. Hallberg
|
dba9d41eda
|
rename HCFStringMap to HStringMap
|
2013-06-04 21:47:09 +02:00 |
|
Meredith L. Patterson
|
8618f9cb62
|
remove useless desugar_unimplemented; revert incorrect changes to test_llk()
|
2013-05-24 20:10:21 -07:00 |
|
Meredith L. Patterson
|
02d68f6d18
|
Merge branch 'master' of https://github.com/thequux/hammer
Conflicts:
src/backends/llk.c
|
2013-05-24 20:00:41 -07:00 |
|
Dan Hirsch
|
ec404ca8fe
|
Refactored all of the desugaring code to no longer depend on memory being initialized to 0. Everything is about 12% faster now.
|
2013-05-25 03:35:42 +02:00 |
|
Sven M. Hallberg
|
0dde8ea4ee
|
remove debug output from fill_table_row
|
2013-05-24 23:04:20 +02:00 |
|
Sven M. Hallberg
|
7ce2194ff1
|
upgrade dummy example to require LL(3)
|
2013-05-24 23:00:00 +02:00 |
|
Sven M. Hallberg
|
f55ec2f1ed
|
comment wording
|
2013-05-24 22:40:00 +02:00 |
|
Sven M. Hallberg
|
cbd50ec4c3
|
temp commit some debugging stuff for posterity
|
2013-05-24 22:39:32 +02:00 |
|
Sven M. Hallberg
|
e4984fe60c
|
add an assertion that catches the infinite loop
|
2013-05-24 14:08:13 +02:00 |
|
Sven M. Hallberg
|
bd9f9293c1
|
why does this (test_llk) segfault!? driver goes into a loop.
|
2013-05-24 04:33:27 +02:00 |
|
Sven M. Hallberg
|
8da48913b1
|
don't extend table entries that are already unambiguous
|
2013-05-24 02:07:31 +02:00 |
|
Sven M. Hallberg
|
428636f3d0
|
h_predict for k>1, more debugging
|
2013-05-24 01:31:56 +02:00 |
|
Sven M. Hallberg
|
748845ca0c
|
add API for pretty-printing for grammar symbols and symbol sequences
|
2013-05-23 23:35:10 +02:00 |
|
Sven M. Hallberg
|
f6983a5041
|
debug table generation
|
2013-05-23 23:25:32 +02:00 |
|
Sven M. Hallberg
|
4c5ca5ceab
|
clean up a bit
|
2013-05-23 22:54:49 +02:00 |
|
Sven M. Hallberg
|
e5ee61029c
|
herp-a-derp, that wasn't actually done - still bugged, though
|
2013-05-23 22:19:13 +02:00 |
|
Sven M. Hallberg
|
5e3c681dbc
|
generalize most of llk.c to arbitrary k (ex. h_predict) - still bugged
|
2013-05-23 21:01:37 +02:00 |
|
Sven M. Hallberg
|
3ff32e86e4
|
make dummy example require LL(2)
|
2013-05-23 14:42:43 +02: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
|
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 |
|