diff --git a/NOTES b/NOTES index c3a4cb6..84b8c46 100644 --- a/NOTES +++ b/NOTES @@ -35,4 +35,4 @@ what the comments say. TODO: implement datastructure linearization func TODO: implement free func for parsers -TODO: Reimplement GSequence et al for use with arena allocator. (*&%$#@ Glib doesn't allow per-datastructure allocators) +TODO: Remove glib dependency (i.e., GQueue and GHashtable) \ No newline at end of file diff --git a/src/hammer.c b/src/hammer.c index 0934a05..904fdd0 100644 --- a/src/hammer.c +++ b/src/hammer.c @@ -44,6 +44,7 @@ static HCachedResult *cached_result(const HParseState *state, HParseResult *resu // Really library-internal tool to perform an uncached parse, and handle any common error-handling. static inline HParseResult* perform_lowlevel_parse(HParseState *state, const HParser *parser) { + // TODO(thequux): these nested conditions are ugly. Factor this appropriately, so that it is clear which codes is executed when. HParseResult *tmp_res; if (parser) { HInputStream bak = state->input_stream;