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