summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpeter <peter@pmikkelsen.com>2026-08-31 19:49:48 +0000
committerpeter <peter@pmikkelsen.com>2026-08-31 19:49:48 +0000
commit34189c9b67f3427e077152e3a6c8cb21f4ba3441 (patch)
tree4c71fa0cd8f83eb92d9d47f0c6294b4c8d1b5cee
parent7f7a2fb4fb23433e7be3d6953725690c8ea958d2 (diff)
Remove some unneeded references to struct aplwc * in various structures.
FossilOrigin-Name: 3b4b7806320d604b0df3654896cfe5d885f116d893ae15cfb3422d6d2de7193c
-rw-r--r--src/lib/aplwc_internal.h5
-rw-r--r--src/lib/eval.c10
-rw-r--r--src/lib/main.c10
-rw-r--r--src/lib/module.c1
4 files changed, 11 insertions, 15 deletions
diff --git a/src/lib/aplwc_internal.h b/src/lib/aplwc_internal.h
index 5320336..b87cfad 100644
--- a/src/lib/aplwc_internal.h
+++ b/src/lib/aplwc_internal.h
@@ -34,7 +34,6 @@ struct root_ptr {
};
struct aplwc_line {
- struct aplwc *aplwc;
struct string *text;
struct token_list *tokens;
};
@@ -79,19 +78,17 @@ enum value_tag {
};
struct aplwc_value {
- struct aplwc *aplwc;
enum value_tag tag;
};
struct aplwc_module {
- struct aplwc *aplwc;
struct string *name;
struct token_list *tokens;
struct aplwc_module *link;
};
/* eval.c */
-struct aplwc_value *eval_line(struct aplwc_line *);
+struct aplwc_value *eval_line(struct aplwc *, struct aplwc_line *);
/* memory.c */
void memory_init(struct aplwc *);
diff --git a/src/lib/eval.c b/src/lib/eval.c
index 50c3cda..0da90db 100644
--- a/src/lib/eval.c
+++ b/src/lib/eval.c
@@ -1,19 +1,17 @@
#include "aplwc_internal.h"
struct aplwc_value *
-eval_line(struct aplwc_line *line)
+eval_line(struct aplwc *aplwc, struct aplwc_line *line)
{
struct aplwc_value *value;
- struct aplwc *aplwc;
- aplwc = line->aplwc;
+ UNUSED_PARAMETER(line);
+
assert(aplwc->last_error == APLWC_OK);
value = memory_alloc_aplwc_value(aplwc);
- if(value != NULL){
- value->aplwc = aplwc;
+ if(value != NULL)
value->tag = VALUE_NULL;
- }
return value;
}
diff --git a/src/lib/main.c b/src/lib/main.c
index 454ad1c..dcf4a1c 100644
--- a/src/lib/main.c
+++ b/src/lib/main.c
@@ -109,7 +109,6 @@ aplwc_read(struct aplwc *aplwc, const char *linestr)
if((line = memory_alloc_aplwc_line(aplwc)) == NULL)
goto end;
- line->aplwc = aplwc;
line->text = text;
line->tokens = tokens;
@@ -131,13 +130,16 @@ aplwc_eval(AplwcLine line)
AplwcValue value;
struct aplwc_line *l;
struct aplwc_value *v;
+ struct aplwc *aplwc;
+
+ aplwc = line.ref.aplwc;
aplwc_clear_value(&value);
l = memory_root_get(line.ref);
- l->aplwc->last_error = APLWC_OK;
- v = eval_line(l);
+ aplwc->last_error = APLWC_OK;
+ v = eval_line(aplwc, l);
if(v)
- value.ref = memory_root_new(line.ref.aplwc, v);
+ value.ref = memory_root_new(aplwc, v);
return value;
}
diff --git a/src/lib/module.c b/src/lib/module.c
index 3bca396..2524eca 100644
--- a/src/lib/module.c
+++ b/src/lib/module.c
@@ -69,7 +69,6 @@ load_module(struct aplwc *aplwc, struct string *name, struct token_list *tokens)
goto end;
}
- module->aplwc = aplwc;
module->name = name;
module->tokens = tokens;
module->link = NULL;