** returns the index for 'k' if 'k' is an appropriate key to live in ** the array part of a table, 0 otherwise. */
| 314 | ** the array part of a table, 0 otherwise. |
| 315 | */ |
| 316 | static unsigned int arrayindex (lua_Integer k) { |
| 317 | if (l_castS2U(k) - 1u < MAXASIZE) /* 'k' in [1, MAXASIZE]? */ |
| 318 | return cast_uint(k); /* 'key' is an appropriate array index */ |
| 319 | else |
| 320 | return 0; |
| 321 | } |
| 322 | |
| 323 | |
| 324 | /* |