Commit graph

432 commits

Author SHA1 Message Date
Sven M. Hallberg
1afef6c3d2 reshape for h_attr_bool 2013-05-20 16:59:38 +02:00
Sven M. Hallberg
f48903d85e reshape for h_ignore 2013-05-20 16:31:37 +02:00
Sven M. Hallberg
a42d97f053 fix desugar_optional 2013-05-20 16:25:42 +02:00
Sven M. Hallberg
3be766b741 reshape for h_epsilon 2013-05-20 16:25:02 +02:00
Sven M. Hallberg
e03513b59a reshape for h_sequence 2013-05-20 15:32:15 +02:00
Sven M. Hallberg
e5300e2836 roll the positive cases for int16, int32 back into the existing test 2013-05-20 15:26:14 +02:00
Sven M. Hallberg
482851b3e2 reshape for h_action and h_choice 2013-05-20 15:24:19 +02:00
Sven M. Hallberg
29cee318f9 move the h_act_* functions to src/actions.c 2013-05-20 14:58:20 +02:00
Sven M. Hallberg
31256ba867 reshape for h_left and friends 2013-05-20 14:44:18 +02:00
Sven M. Hallberg
745aaebe02 fix desugaring of h_whitespace and add reshape action 2013-05-14 18:29:18 +02:00
Sven M. Hallberg
d081cf4284 reshape bits parsers 2013-05-14 17:20:05 +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
efae603c6b fix an off-by-one alloc error in desugar_bits 2013-05-14 16:12:09 +02:00
Sven M. Hallberg
4138506273 unwrap (reshape) singleton terminal symbols correctly 2013-05-14 14:14:31 +02:00
Sven M. Hallberg
010d957fe8 add token reshaper 2013-05-14 12:14:45 +02:00
Sven M. Hallberg
1fac551429 add reshapers to 'many' parsers (makes the benchmark run with llk!) 2013-05-14 11:55:30 +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
b488e5485f always put end_token in the start symbol's follow set 2013-05-12 16:51:35 +02:00
Sven M. Hallberg
f33390a510 fix memory issues in benchmark.c 2013-05-12 02:54:28 +02:00
Sven M. Hallberg
fa1e59fe68 Revert "don't touch parser->backend in benchmark.c"
This reverts commit d81d820dca.
2013-05-12 01:18:46 +02:00
Sven M. Hallberg
75326263df silence a warning when compiling with NDEBUG 2013-05-12 00:20:42 +02:00
Sven M. Hallberg
1c8764e1da minor cosmetics 2013-05-12 00:20:27 +02:00
Sven M. Hallberg
fdcfc243b8 formatting 2013-05-11 23:41:47 +02:00
Sven M. Hallberg
d81d820dca don't touch parser->backend in benchmark.c 2013-05-11 22:24:49 +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
31c5189974 call previous backend's free function in h_compile 2013-05-11 22:21:30 +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
a1105d413a make h_parse_result_free a no-op on NULL 2013-05-11 21:45:02 +02:00
Sven M. Hallberg
207fc6adef fix (I think?) the test case failure detection login in benchmark.c 2013-05-11 21:44:01 +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
369dbcd21f actually, just cast off the const inside h_compile 2013-05-11 15:10:31 +02:00
aegis
106b8bb6a7 JNI ready for testing. -fPIC enabled for objects in src and jni. 2013-05-10 12:05:20 +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