diff options
| author | Mistivia <i@mistivia.com> | 2025-06-28 19:54:37 +0800 |
|---|---|---|
| committer | Mistivia <i@mistivia.com> | 2025-06-28 19:54:37 +0800 |
| commit | 9a4f460d6dd476767ea211c879f115e127ee2410 (patch) | |
| tree | 8a7ad58e670065af74c261f51f5f21e9bfec3615 /src/builtins.c | |
| parent | 0633c6c2797bc9182b2c1888385eac6cb6caed10 (diff) | |
exception & try-catch
Diffstat (limited to 'src/builtins.c')
| -rw-r--r-- | src/builtins.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/builtins.c b/src/builtins.c index e39dfa4..9f605c1 100644 --- a/src/builtins.c +++ b/src/builtins.c @@ -7,6 +7,11 @@ #include <float.h> #include <math.h> +SExpRef builtin_throw(Interp *interp, SExpRef args) { + if (LENGTH(args) != 1) return new_error(interp, "throw: syntax error.\n"); + return new_exception(interp, CAR(args)); +} + SExpRef builtin_functionp(Interp *interp, SExpRef args) { if (LENGTH(args) != 1) { return new_error(interp, "function?: args num error.\n"); |
