From 32ef42cf627fb07f17f5021a87ba934661861841 Mon Sep 17 00:00:00 2001 From: picomeg <megordon5@gmail.com> Date: Tue, 6 Oct 2020 16:29:11 +0100 Subject: [PATCH] clean up and refactoring, pt 1 --- src/hammer.c | 12 +++--------- src/hammer.h | 4 +--- src/t_names.c | 2 -- 3 files changed, 4 insertions(+), 14 deletions(-) diff --git a/src/hammer.c b/src/hammer.c index bcf48fe4..52052a6b 100644 --- a/src/hammer.c +++ b/src/hammer.c @@ -82,6 +82,7 @@ HParserBackendWithParams * h_copy_backend_with_params__m(HAllocator *mm__, r = h_new(HParserBackendWithParams, 1); if (r) { r->mm__ = mm__; + r->name = be_with_params->name; r->backend = be_with_params->backend; if (backends[be_with_params->backend]->copy_params) { s = backends[be_with_params->backend]->copy_params(mm__, @@ -337,7 +338,7 @@ HParserBackendWithParams * h_get_backend_with_params_by_name(const char *name_wi char *name_with_no_params = NULL; char *params_as_string = NULL; - size_t name_len, params_len; + size_t name_len size_t len = strlen(name_with_params); result = h_new(HParserBackendWithParams, 1); @@ -348,8 +349,7 @@ HParserBackendWithParams * h_get_backend_with_params_by_name(const char *name_wi params_as_string = strstr(name_with_params, "("); if(params_as_string) { - params_len = strlen(params_as_string); - name_len = len - params_len; + name_len = len - strlen(params_as_string); } else { name_len = len; } @@ -366,11 +366,6 @@ HParserBackendWithParams * h_get_backend_with_params_by_name(const char *name_wi result->name = name_with_no_params; if(params_as_string) { - //store the raw string containing the param(s) - char * raw_params_string = h_new(char, params_len+1); - memset(raw_params_string, '\0', params_len+1); - strncpy(raw_params_string, params_as_string, params_len); - result->raw_params = raw_params_string; //if the backend is one built as part of hammer, use it if(backend){ @@ -385,7 +380,6 @@ HParserBackendWithParams * h_get_backend_with_params_by_name(const char *name_wi } else { /* else just ignore it and set it to NULL */ result->params = NULL; - result->raw_params = NULL; } } diff --git a/src/hammer.h b/src/hammer.h index 15064cfa..0a66510b 100644 --- a/src/hammer.h +++ b/src/hammer.h @@ -55,7 +55,7 @@ typedef enum HParserBackend_ { } HParserBackend; typedef struct HParserBackendWithParams_ { - /* Name of backend (for loading backends from modules */ + /* Name of backend (if called via string, need to keep this for loading backends from modules) */ const char *name; /* The backend (if backend is to be loaded from an external module set to invalid (?))*/ HParserBackend backend; @@ -66,8 +66,6 @@ typedef struct HParserBackendWithParams_ { * and PB_GLR take an integer cast to void * */ void *params; - /*raw substring the params were extracted from*/ - const char *raw_params; /* Allocator to use to free this (and the params if necessary) */ HAllocator *mm__; } HParserBackendWithParams; diff --git a/src/t_names.c b/src/t_names.c index ae6296ef..499fef0b 100644 --- a/src/t_names.c +++ b/src/t_names.c @@ -64,8 +64,6 @@ static void test_tt_query_backend_by_name(void) { g_check_inttype("%d", HParserBackend, be_w_p->backend, ==, PB_GLR); printf("%s be name \n", be_w_p->name); g_check_maybe_string_eq(be_w_p->name, glr_name); - printf("%s raw params string \n", be_w_p->raw_params); - g_check_maybe_string_eq(be_w_p->raw_params, "(1)"); printf("%p as void pointer \n", be_w_p->params); g_check_cmp_size((uintptr_t)be_w_p->params, ==, 1); printf("%zu param as uintptr_t \n", (uintptr_t)be_w_p->params); -- GitLab