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
771de6f98b
Benchmark test case array needed to be terminated with {NULL,0,NULL}. Noted that in comments.
2012-11-06 00:20:00 -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
Dan Hirsch
8eececcac8
Now builds without glib
2012-10-10 16:45:10 +02:00
Dan Hirsch
d5729efa1f
Replaced glib memory allocation
2012-10-10 15:58:03 +02:00
Meredith L. Patterson
1f3a75fafe
Merge pull request #3 from pesco/master
...
add h_in (counterpart to h_not_in)
2012-08-12 01:20:59 -07:00
Dan Hirsch
1b9314e73e
Added bitwriter framework
2012-07-27 15:24:35 -07:00
Sven M. Hallberg
d57558bf13
Merge branch 'ignoreseq'
2012-06-02 17:32:28 +02:00
Sven M. Hallberg
7724ff9e6f
add h_left, h_right, h_middle combinators
2012-06-02 17:31:06 +02:00
Sven M. Hallberg
4f6989d3ef
enable h_indirect
2012-06-01 20:00:10 +02:00
Dan Hirsch
c43b6d2f4c
Forgot attr_bool
2012-05-26 16:05:01 +02:00
Dan Hirsch
f2def8fa05
Refactor ALL the things!
2012-05-26 16:00:43 +02:00
Dan Hirsch
764d0d7071
Cleaned up some memory leaks, got rid of gsequence, improved test macro to free memory that it allocated
2012-05-17 15:52:29 +02:00
Dan Hirsch
79f9e21da7
Bolted on arena allocator
2012-05-12 21:20:38 +01:00
Dan Hirsch
d5358a724b
Made sequence and choice variadic, and added test suite helper functions
2012-05-12 00:40:54 +01:00
Dan Hirsch
99804b2abf
Added pretty printer
2012-05-11 23:35:21 +01:00
Dan Hirsch
5f26455924
Cleaned up makefiles a bit, fixed all the warnings in hammer.c
2012-05-01 02:05:58 +01:00
Dan Hirsch
a125975737
Quieter build
2012-05-01 01:47:14 +01:00
Meredith L. Patterson
318b594bed
Parser combinators are well underway. Ones that are now finished are:
...
* token: matches a sequence of bytes (with length)
* ch: matches a single byte
* range: matches any byte within the range [lower, upper] (inclusive)
* join_action: joins the results of another parser with a separator
* negate: matches the opposite of any single-character parser
* end_p: succeeds if there's no input left to parse
* nothing_p: always fails
One other big change: the AST is now a GSequence of parsed_token_t's. WARNING: This is not actually enforced, because C.
Also tweaked the makefile a little (which will get clobbered in TQ's next commit) and added some documentary comments to hammer.h.
2012-05-01 00:33:47 +01:00
Meredith L. Patterson
dfd8cf2a97
Settled on cache layout, wrote djbhash variant for indexing byte/bit positions into inner hash table
2012-04-30 03:44:10 +01:00
Dan Hirsch
6dd36f9acd
That should fix the build on Ubuntu; also, it should add a clean target
2012-04-30 02:21:22 +01:00
Dan Hirsch
faab7b7cf8
Wrote basic makefile, wrote tests, and then fixed them
2012-04-29 01:45:52 +01:00