diff options
| author | iamcheeseman <[email protected]> | 2026-04-14 21:15:38 -0400 |
|---|---|---|
| committer | iamcheeseman <[email protected]> | 2026-04-14 21:15:38 -0400 |
| commit | 7752d0b775c4df0de6fec688107e904ad20e1de6 (patch) | |
| tree | 4255de168db8a527b7e99217021dd052bd2024e2 /uscript/uscript.c | |
| parent | a2ebe62cdbbe12e75e3b5c79de3dce9fbeb1ca20 (diff) | |
microengine: compound operators
Diffstat (limited to 'uscript/uscript.c')
| -rw-r--r-- | uscript/uscript.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/uscript/uscript.c b/uscript/uscript.c index 0e6fc4b..d82ce35 100644 --- a/uscript/uscript.c +++ b/uscript/uscript.c @@ -12,7 +12,7 @@ void core_print(int argc) { (void)argc; - char *str = val_to_str(vm_peek(), NULL); + char *str = val_to_str(vm_peek(0), NULL); olog(str); mem_free(str); @@ -23,7 +23,7 @@ void core_len(int argc) { (void)argc; - struct us_val val = vm_peek(); + struct us_val val = vm_peek(0); switch (val.type) { case VAL_ARR: vm_push(create_num(da_len(get_arr(val)->e))); @@ -43,6 +43,7 @@ void core_range_next(int argc) struct us_cfunc *cfunc = get_cfunc(vm_get(-1)); double min = get_num(cfunc_get_upval(cfunc, 0)); double max = get_num(cfunc_get_upval(cfunc, 1)); + double inc = get_num(cfunc_get_upval(cfunc, 2)); if (min == max) { vm_push(create_zilch()); @@ -51,7 +52,6 @@ void core_range_next(int argc) vm_push(create_num(min)); - int inc = max > min ? 1 : -1; cfunc_set_upval(cfunc, 0, create_num(min + inc)); } |
