Commit graph

73 commits

Author SHA1 Message Date
Sven M. Hallberg
fbdd2b7613 pull saved position into HParserCacheValue and fix segfault in grow() 2014-03-17 23:46:14 +01:00
Meredith L. Patterson
1d6a6d90ab C++ bindings now work! 2014-01-16 19:49:28 +01:00
Dan Hirsch
e487d5435c Added a void* user_data pointer to HAction 2013-11-23 12:53:11 -06:00
Joe Rozner
bb02aa18e7 Add warning message
Specify warning for internal only headers that are now installed for use
by extensions.
2013-11-21 22:09:25 -08:00
Peter Johnson
c8fc061ea6 Ditch longs and long longs in favor of stdint.h types, which has cascading
effects throughout, including use of inttypes.h/PRI[ud]64 because printf() is
still stuck in a long world, conversion of %lu to %zu for printing values of
type size_t, and changing/renaming the g_check_cmp* family of functions.
2013-11-15 00:12:57 -05:00
Dan Hirsch
b0f567c090 Added new build system 2013-07-10 21:32:05 +02:00
Dan Hirsch
ce74cf7939 Refactored regex backend to use a sparse thread list 2013-06-24 21:25:22 +02:00
Sven M. Hallberg
b1e8e29774 add engine forking 2013-06-20 11:05:57 +02:00
Sven M. Hallberg
55c9a3d9c5 add stub GLR backend with h_glr_parse() a copy of h_lr_parse() 2013-06-19 17:20:53 +02:00
Sven M. Hallberg
e7a388d1c7 move djbhash into general availability as h_djbhash 2013-06-06 13:02:29 +02:00
Sven M. Hallberg
636f741d88 add h_hashset_equal (set comparison) 2013-06-05 15:12:48 +02:00
Sven M. Hallberg
976205f9da hook up LALR backend stub 2013-06-04 22:14:06 +02: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
3047fd223b let h_hashtable_merge's combine function decide what to do on NULL dst values 2013-05-24 22:29:33 +02:00
Meredith L. Patterson
1c7e9947a4 merging in aegis' JNI bindings 2013-05-23 00:58:27 -07:00
Sven M. Hallberg
e4d0b636dd add h_hashtable_merge function 2013-05-22 21:57:46 +02:00
Sven M. Hallberg
623fd6b030 add "reshape" action to HCFChoice 2013-05-14 11:54:43 +02:00
Sven M. Hallberg
1c8764e1da minor cosmetics 2013-05-12 00:20:27 +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
65ee3593bd compile function can't take a const parser 2013-05-08 18:01:55 +02:00
Sven M. Hallberg
1631e9c08f constify read-only hashtable methods 2013-05-08 17:01:23 +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
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
Dan Hirsch
13088c9d7a Finshed up the regex backend 2013-04-26 20:36:54 -07: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
fd10e83bfe add alias(es) for HHashSet from HHashtable 2013-04-27 00:55:55 +02: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
Rob Zinkov
4e11c90664 Adding desugar 2013-03-17 13:25:02 -07:00
Dan Hirsch
ffd050e603 Added generic form of desugaring functions 2013-03-16 14:30:15 -07:00
Dan Hirsch
c19d7bb66e Regex VM finished but untested. 2013-03-09 21:42:49 -08:00
Meredith L. Patterson
ab89b0fd4d desugaring done for many and attr_bool 2013-02-20 20:43:16 -05:00
Meredith L. Patterson
156be7a559 Still doesn't build, but desugaring is farther along 2013-02-02 19:31:18 -05:00
Dan Hirsch
b8314f6662 Added regex backend, does not compile 2013-01-13 17:01:10 +01:00
Sven M. Hallberg
dffe47bf57 initialize eval_set to a proper copy of involved_set 2013-01-10 00:40:19 +01:00
Meredith L. Patterson
8163b3981d Changed other instances of malloc.h to stdlib.h for OSX compat 2012-11-14 14:05:25 -05:00
Meredith L. Patterson
de8db18db4 Refactored tests; make just builds library, make test builds/runs tests 2012-11-13 22:29:25 -05:00
Meredith L. Patterson
21ec962d76 Working on benchmarking test. A lot of things needed to be const and weren't. 2012-11-05 23:08:18 -05:00
Dan Hirsch
d0d9a94fd0 Added benchmark skeleton, and at least stubs for all of the necessary functions 2012-11-02 17:16:53 -04:00
Meredith L. Patterson
158b2b3ba6 Removed all glib functions from everything other than the test suite. 2012-10-10 16:24:12 +02:00
Dan Hirsch
d5729efa1f Replaced glib memory allocation 2012-10-10 15:58:03 +02:00
Dan Hirsch
6101b8c43a Hash table now works. 2012-10-08 22:06:33 +02:00
Meredith L. Patterson
b44d00ed33 Replaced GHashTable with HHashTable ... which has some problem causing it to segfault. 2012-10-08 21:12:56 +02:00
Meredith L. Patterson
bc5e2fa754 pulled in tq's hashtable 2012-10-08 19:21:56 +02:00
Dan Hirsch
12035d66a1 Added hashtable implementation 2012-10-08 19:20:36 +02:00
Meredith L. Patterson
ef6af551d1 Replaced GQueue and GSlist with HSlist. 2012-10-08 18:16:18 +02:00
Dan Hirsch
69ba191783 Added singly-linked list 2012-10-08 17:11:47 +02:00