aboutsummaryrefslogtreecommitdiff
path: root/alisp.h
diff options
context:
space:
mode:
authorAryadev Chavali <aryadev@aryadevchavali.com>2025-08-20 21:50:58 +0100
committerAryadev Chavali <aryadev@aryadevchavali.com>2025-08-20 21:50:58 +0100
commitdf558da7e1979a59b5207c323962aa59b61258e4 (patch)
tree99a69d572b536a5632a687a580db25e9735ffe3c /alisp.h
parent643896e2c8a2a9088819d3410f94008a83f575c6 (diff)
downloadalisp-df558da7e1979a59b5207c323962aa59b61258e4.tar.gz
alisp-df558da7e1979a59b5207c323962aa59b61258e4.tar.bz2
alisp-df558da7e1979a59b5207c323962aa59b61258e4.zip
Use sv_t instead of raw char*
We're storing them as sv_t's anyway, we're fucked with regards to indirection. Thus, let's be nice to ourselves, and deal with the structures. We get the size of the structure for free anyway!
Diffstat (limited to 'alisp.h')
-rw-r--r--alisp.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/alisp.h b/alisp.h
index 5b7c9e1..72635b8 100644
--- a/alisp.h
+++ b/alisp.h
@@ -78,7 +78,7 @@ typedef struct
u64 djb2(sv_t string);
void sym_table_init(sym_table_t *table);
-char *sym_table_find(sym_table_t *table, sv_t sv);
+sv_t *sym_table_find(sym_table_t *table, sv_t sv);
void sym_table_cleanup(sym_table_t *table);
/// Basic defintions for a Lisp
@@ -115,7 +115,7 @@ lisp_t *intern(sys_t *sys, sv_t sv);
lisp_t *cons(sys_t *sys, lisp_t *car, lisp_t *cdr);
i64 as_int(lisp_t *);
-char *as_sym(lisp_t *);
+sv_t *as_sym(lisp_t *);
cons_t *as_cons(lisp_t *);
void *as_vec(lisp_t *);
@@ -160,7 +160,7 @@ enum Mask
tag_t get_tag(lisp_t *lisp);
lisp_t *tag_int(i64 i);
-lisp_t *tag_sym(char *str);
+lisp_t *tag_sym(sv_t *sv);
lisp_t *tag_cons(cons_t *cons);
lisp_t *tag_vec(lvec_t *lvec);