diff options
| author | 2022-10-13 12:02:04 +0200 | |
|---|---|---|
| committer | 2022-10-13 12:02:04 +0200 | |
| commit | 6b962b57336266785352637579e24317b4ce3c97 (patch) | |
| tree | 3a46bf1bd09102ee998bae57a77a417d47970a6f /pez.c | |
| parent | e712e8fdce6b6fec0d647f8b645ca943a6c830d0 (diff) | |
length -> len
Diffstat (limited to 'pez.c')
| -rw-r--r-- | pez.c | 22 |
1 files changed, 10 insertions, 12 deletions
@@ -84,7 +84,6 @@ typedef struct Proto { char name[]; } Proto; - typedef struct Upval Upval; struct Upval { OBJHEADER; @@ -212,7 +211,6 @@ enum { }; #define VOID ((Val){0}) -#define _EMPTY ((Val){TAGEmpty}) #define _DELETED ((Val){TAGDeleted}) #define isvoid(v) ((v).r == 0) #define _isdeleted(v) (((v).r & 0xFF) == TAGDeleted) @@ -234,16 +232,15 @@ enum { #define box_cfn(x) ((Val){(uint64_t)(intptr_t)(x) << 2 | TAGCFn}) #define truthy(x) (!isvoid(x) && ((x).r == TAGBool ? unbox_bool(x) : 1)) -static Val length_sstr; +static Val len_sstr; static int typeof1(Val v) { if (isvoid(v)) return PEZ_TVoid; - if (isobj(v)) { + if (isobj(v)) return objtag(v); - } if (isnum(v)) return PEZ_TNumber; if (isbool(v)) @@ -1378,7 +1375,7 @@ apply(PezContext *cx, Val *ret, void *srcfn, int srcpc, Val recv, uint n) return runerr(cx, srcfn, srcpc, "array indexing takes one argument (got %d)", n), 0; } arg = args[0]; - if (arg.r == length_sstr.r) { + if (arg.r == len_sstr.r) { *ret = box_num(inttofix(arr->len)); return 1; } @@ -1399,7 +1396,7 @@ apply(PezContext *cx, Val *ret, void *srcfn, int srcpc, Val recv, uint n) return runerr(cx, srcfn, srcpc, "string indexing takes one argument (got %d)", n), 0; } arg = args[0]; - if (arg.r == length_sstr.r) { + if (arg.r == len_sstr.r) { *ret = box_num(inttofix(len)); return 1; } @@ -1437,7 +1434,7 @@ setapply(PezContext *cx, Val *ret, void *srcfn, int srcpc, Val recv, uint n, Val return runerr(cx, srcfn, srcpc, "array indexing takes one argument"), 0; } arg = args[0]; - if (arg.r == length_sstr.r) { + if (arg.r == len_sstr.r) { return runerr(cx, srcfn, srcpc, "cannot mutate array length"), 0; } TRY(checkindex(cx, &idx, srcfn, srcpc, "array", arr->len, arg)); @@ -1497,8 +1494,8 @@ exefn(PezContext *cx, Fn *fn, uint nargs) int n = code[ip++] + 1; Val *it = cx->stktop - n; assert(cx->stktop > cx->stack + n); - for (int i = 0; i < n; ++i ) { - TRY(push(cx, it[i])); + for (int i = 0; i < n; ++i) { + TRY(push(cx, it[i])); } } CASE(Odupbck) { @@ -3454,7 +3451,7 @@ setexpr(Comp *cm) break; case Olength: --code->len; - TRY(compconst(cm, length_sstr)); + TRY(compconst(cm, len_sstr)); argc = 1; opcode = Oapply; goto Oapply; @@ -3729,6 +3726,7 @@ forstmt(Comp *cm) resetlastops(cm); return compop(cm, Ovoid); } + static bool stmt(Comp *cm) { @@ -3907,7 +3905,7 @@ pez_new(PezAllocFn *alloc, void *userdata, size_t stacksize) if (!cx->stack) goto Err; cx->stktop = cx->stack; cx->stkend = cx->stack + stacksize; - if (!box_str(cx, &length_sstr, "length", 6)) assert(0); + if (!box_str(cx, &len_sstr, "len", 3)) assert(0); if (!initcore(cx)) goto Err; cx->gcthresh = stacksize * sizeof(Val)*5/2 + 128; |