diff options
Diffstat (limited to 'src/builtins.c')
| -rw-r--r-- | src/builtins.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/builtins.c b/src/builtins.c index 98252f8..fe14b8f 100644 --- a/src/builtins.c +++ b/src/builtins.c @@ -6,6 +6,14 @@ #include <float.h> #include <math.h> +SExpRef builtin_alwaysgc(Interp *interp, SExpRef args) { + if (LENGTH(args) != 1) return new_error(interp, "_alwaysgc: arg num error.\n"); + SExpRef arg = CAR(args); + if (VALTYPE(arg) != kBooleanSExp) return new_error(interp, "alwaysgc: type error.\n"); + interp->alwaysgc = REF(arg)->boolean; + return NIL; +} + SExpRef builtin_symbol2string(Interp *interp, SExpRef args) { if (LENGTH(args) != 1) return new_error(interp, "symbol->string: arg num error.\n"); SExpRef arg = CAR(args); @@ -601,6 +609,7 @@ SExpRef builtin_num_equal(Interp *interp, SExpRef args) { } } + SExpRef builtin_num_neq(Interp *interp, SExpRef args) { int args_len = LENGTH(args); if (args_len != 2) return new_error(interp, "/=: wrong argument number.\n"); |
