| 119 | } |
| 120 | |
| 121 | LUA_API void lua_settop(lua_State *L, int idx) |
| 122 | { |
| 123 | if (idx >= 0) { |
| 124 | api_check(L, idx <= tvref(L->maxstack) - L->base); |
| 125 | if (L->base + idx > L->top) { |
| 126 | if (L->base + idx >= tvref(L->maxstack)) |
| 127 | lj_state_growstack(L, (MSize)idx - (MSize)(L->top - L->base)); |
| 128 | do { setnilV(L->top++); } while (L->top < L->base + idx); |
| 129 | } else { |
| 130 | L->top = L->base + idx; |
| 131 | } |
| 132 | } else { |
| 133 | api_check(L, -(idx+1) <= (L->top - L->base)); |
| 134 | L->top += idx+1; /* Shrinks top (idx < 0). */ |
| 135 | } |
| 136 | } |
| 137 | |
| 138 | LUA_API void lua_remove(lua_State *L, int idx) |
| 139 | { |
no test coverage detected