summaryrefslogtreecommitdiff
path: root/src/lisp/ao_lisp.h
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2016-11-18 21:14:47 -0800
committerKeith Packard <keithp@keithp.com>2016-11-18 21:14:47 -0800
commit048a610f42cef7f3422baaab2ba2d4ce03e59768 (patch)
tree8b6f01c026877d5f4f3cfd8b1204e0fde41ee86a /src/lisp/ao_lisp.h
parentae2f70e6162b99de40155ff9f12ee2396cd7802c (diff)
altos/lisp: Use poly stashes for stacks
Saves some memory. Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'src/lisp/ao_lisp.h')
-rw-r--r--src/lisp/ao_lisp.h24
1 files changed, 14 insertions, 10 deletions
diff --git a/src/lisp/ao_lisp.h b/src/lisp/ao_lisp.h
index cea834fc..e238d4fe 100644
--- a/src/lisp/ao_lisp.h
+++ b/src/lisp/ao_lisp.h
@@ -468,22 +468,26 @@ struct ao_lisp_cons *
ao_lisp_cons_fetch(int id);
void
-ao_lisp_string_stash(int id, char *string);
+ao_lisp_poly_stash(int id, ao_poly poly);
-char *
-ao_lisp_string_fetch(int id);
+ao_poly
+ao_lisp_poly_fetch(int id);
void
-ao_lisp_stack_stash(int id, struct ao_lisp_stack *stack);
+ao_lisp_string_stash(int id, char *string);
-struct ao_lisp_stack *
-ao_lisp_stack_fetch(int id);
+char *
+ao_lisp_string_fetch(int id);
-void
-ao_lisp_poly_stash(int id, ao_poly poly);
+static inline void
+ao_lisp_stack_stash(int id, struct ao_lisp_stack *stack) {
+ ao_lisp_poly_stash(id, ao_lisp_stack_poly(stack));
+}
-ao_poly
-ao_lisp_poly_fetch(int id);
+static inline struct ao_lisp_stack *
+ao_lisp_stack_fetch(int id) {
+ return ao_lisp_poly_stack(ao_lisp_poly_fetch(id));
+}
/* cons */
extern const struct ao_lisp_type ao_lisp_cons_type;