diff options
| author | Mistivia <i@mistivia.com> | 2025-06-21 12:00:31 +0800 |
|---|---|---|
| committer | Mistivia <i@mistivia.com> | 2025-06-21 12:00:31 +0800 |
| commit | 1caa0e8862905cc7d4ed0cba4082e4d5ce12e6ed (patch) | |
| tree | 0452c5b38b99625fd9fdea6fb3beede56e325134 /src/interp.h | |
| parent | 86742c415b34ae063bf8597d9228e9d37f0d7294 (diff) | |
load prelude
Diffstat (limited to 'src/interp.h')
| -rw-r--r-- | src/interp.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/interp.h b/src/interp.h index 4e358eb..4329442 100644 --- a/src/interp.h +++ b/src/interp.h @@ -8,6 +8,9 @@ #include "algds/vec.h" #include "sexp.h" +struct parser; +typedef struct parser Parser; + struct interp; typedef struct interp Interp; @@ -32,6 +35,7 @@ struct interp { SExpRef top_level; SExpRef nil; char *errmsg_buf; + Parser *parser; }; void Interp_init(Interp *self); @@ -42,8 +46,7 @@ void Interp_add_primitive(Interp *self, const char *name, LispPrimitive fn); void Interp_add_userfunc(Interp *self, const char *name, LispUserFunc fn); SExpRef Interp_eval_string(Interp *interp, const char * str); -void Interp_load_file(Interp *interp, const char *filename); -void Interp_eval_readline(Interp *interp); +SExpRef Interp_load_file(Interp *interp, const char *filename); #define REF(_x) (&(interp->objs.buffer)[(_x).idx]) #define CONS(_x, _y) (lisp_cons(interp, (_x), (_y))) |
