diff --git a/lzw.c b/lzw.c index 3d9692a0b1177ec667131b558444ef602a3fb4ae..e8f02db3373a2913ed5c74aec6e778bffb19915a 100644 --- a/lzw.c +++ b/lzw.c @@ -59,7 +59,7 @@ HParser *p_lzwdata; static LZW_context_T *context; static HParsedToken* -act_LZW_clear(const HParseResult *p, void *u) +act_clear(const HParseResult *p, void *u) { LZW_context_T * ctx = (LZW_context_T *) u; LZW_clear_table(ctx); @@ -71,7 +71,7 @@ act_LZW_clear(const HParseResult *p, void *u) } static bool -validate_LZW_9bitcodeword(HParseResult *p, void *u) +validate_code9(HParseResult *p, void *u) { LZW_context_T * ctx = (LZW_context_T *) u; //fprintf(debug, "9 bit code: %lu, next: %u\n", p->ast->uint, ctx->next); // DEBUG @@ -82,7 +82,7 @@ validate_LZW_9bitcodeword(HParseResult *p, void *u) } static bool -validate_LZW_10bitcodeword(HParseResult *p, void *u) +validate_code10(HParseResult *p, void *u) { LZW_context_T * ctx = (LZW_context_T *) u; //fprintf(debug, "10 bit code: %lu, next: %u\n", p->ast->uint, ctx->next); // DEBUG @@ -93,7 +93,7 @@ validate_LZW_10bitcodeword(HParseResult *p, void *u) } static bool -validate_LZW_11bitcodeword(HParseResult *p, void *u) +validate_code11(HParseResult *p, void *u) { LZW_context_T * ctx = (LZW_context_T *) u; //fprintf(debug, "11 bit code: %lu, next: %u\n", p->ast->uint, ctx->next); // DEBUG @@ -104,7 +104,7 @@ validate_LZW_11bitcodeword(HParseResult *p, void *u) } static bool -validate_LZW_12bitcodeword(HParseResult *p, void *u) +validate_code12(HParseResult *p, void *u) { LZW_context_T * ctx = (LZW_context_T *) u; //fprintf(debug, "12 bit code: %lu, next: %u\n", p->ast->uint, ctx->next); // DEBUG @@ -115,21 +115,21 @@ validate_LZW_12bitcodeword(HParseResult *p, void *u) } static bool -validate_LZW_clear(HParseResult *p, void *u) +validate_clear(HParseResult *p, void *u) { uint64_t code = H_CAST_UINT(p->ast); return (code == 256); } static bool -validate_LZW_eod(HParseResult *p, void *u) +validate_eod(HParseResult *p, void *u) { uint64_t code = H_CAST_UINT(p->ast); return (code == 257); } static bool -validate_LZW_output(HParseResult *p, void *u) +validate_output(HParseResult *p, void *u) { uint64_t code = H_CAST_UINT(p->ast); LZW_context_T *ctx = u; @@ -138,7 +138,7 @@ validate_LZW_output(HParseResult *p, void *u) } static HParsedToken* -act_LZW_output(const HParseResult *p, void *u) +act_output(const HParseResult *p, void *u) { HBytes * code_str; HBytes * last_str; @@ -201,7 +201,7 @@ act_LZW_output(const HParseResult *p, void *u) } static HParsedToken* -act_LZW_body(const HParseResult *p, void *u) +act_lzwbody(const HParseResult *p, void *u) { size_t index = 0; size_t total_buffer_size = 0; @@ -233,7 +233,7 @@ act_LZW_body(const HParseResult *p, void *u) static HParsedToken* -act_LZW_data(const HParseResult *p, void *u) +act_lzwdata(const HParseResult *p, void *u) { /* The AST this semantic action receives is a sequence that looks something like this: elements[0] -> TT_BYTES representing the initial clear code @@ -275,24 +275,22 @@ void init_LZW_parser() context->lzw_code_table[256] = calloc(1, sizeof(HBytes)); context->earlychange = 1; - H_VDRULE(LZW_9bitcodeword, h_bits(9, false), context); - H_VDRULE(LZW_10bitcodeword, h_bits(10, false), context); - H_VDRULE(LZW_11bitcodeword, h_bits(11, false), context); - H_VDRULE(LZW_12bitcodeword, h_bits(12, false), context); - H_RULE (codeword, h_choice(LZW_9bitcodeword, LZW_10bitcodeword, - LZW_11bitcodeword, LZW_12bitcodeword, NULL)); + H_VDRULE(code9, h_bits(9, false), context); + H_VDRULE(code10, h_bits(10, false), context); + H_VDRULE(code11, h_bits(11, false), context); + H_VDRULE(code12, h_bits(12, false), context); + H_RULE (codeword, h_choice(code9, code10, code11, code12, NULL)); - H_AVDRULE(LZW_clear, codeword, context); - H_VDRULE (LZW_eod, codeword, context); - H_AVDRULE(LZW_output, codeword, context); + H_AVDRULE(clear, codeword, context); + H_VDRULE (eod, codeword, context); + H_AVDRULE(output, codeword, context); - H_ADRULE(LZW_body, h_many(h_choice(LZW_clear, LZW_output, NULL)), context); - - H_ADRULE(LZW_data, h_sequence(LZW_clear, LZW_body, LZW_eod, NULL), context); + H_ARULE(lzwbody, h_many(h_choice(clear, output, NULL))); + H_ARULE(lzwdata, h_sequence(clear, lzwbody, eod, NULL)); // XXX validate that the last byte is zero-padded? // XXX require h_end_p()? - p_lzwdata = LZW_data; + p_lzwdata = lzwdata; }