summaryrefslogtreecommitdiff
path: root/lisp_api.h
diff options
context:
space:
mode:
authorFelix Perktold <Felix.Perktold@student.uibk.ac.at>2026-01-19 16:18:02 +0100
committerFelix Perktold <Felix.Perktold@student.uibk.ac.at>2026-01-19 16:18:02 +0100
commit10d05ab14042636f4c5dcd1ad011a00052888276 (patch)
tree8dfbe4fe16c5485154a78534b24849872195c58a /lisp_api.h
parent31e9a82704455dd92cfeef878456493c47cac63b (diff)
add error type
Diffstat (limited to 'lisp_api.h')
-rw-r--r--lisp_api.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/lisp_api.h b/lisp_api.h
index 6cc6588..77e8d93 100644
--- a/lisp_api.h
+++ b/lisp_api.h
@@ -17,7 +17,8 @@ typedef enum {
VT_NIL,
VT_PAIR,
VT_LAMBDA,
- VT_PROCEDURE
+ VT_PROCEDURE,
+ VT_ERROR
} val_type;
struct value {
@@ -27,6 +28,7 @@ struct value {
double d;
const char *sym;
const char *str;
+ const char *err;
struct {
value *car;
value *cdr;
@@ -49,6 +51,7 @@ value *make_string(const char *str);
value *make_nil();
value *make_lambda(env *e, value *params, value *body);
value *make_procedure(value *(*fn) (env *, value *));
+value *make_error(const char *str);
value *cons(value *car, value *cdr);
value *car(value *cons);
value *cdr(value *cons);