28#define MAXSTRTB cast_int(luaM_limitN(MAX_INT, TString*))
35 size_t len =
a->u.lnglen;
43unsigned int luaS_hash (
const char *str,
size_t l,
unsigned int seed) {
46 h ^= ((h<<5) + (h>>2) +
cast_byte(str[l - 1]));
64 for (i = osize; i < nsize; i++)
66 for (i = 0; i < osize; i++) {
71 unsigned int h =
lmod(p->
hash, nsize);
92 if (l_unlikely(newvect ==
NULL)) {
195 for (ts = *list; ts !=
NULL; ts = ts->
u.
hnext) {
196 if (l == ts->
shrlen && (memcmp(str,
getstr(ts), l *
sizeof(
char)) == 0)) {
209 memcpy(
getstr(ts), str, l *
sizeof(
char));
229 memcpy(
getstr(ts), str, l *
sizeof(
char));
246 if (strcmp(str,
getstr(p[j])) == 0)
269 for (i = 0; i < nuvalue; i++)
void luaC_fullgc(lua_State *L)
void * luaM_toobig(lua_State *L)
#define luaM_newvector(L, n, t)
#define luaM_reallocvector(L, v, oldn, n, t)
#define luaS_newliteral(L, s)
GCObject * luaC_newobj(lua_State *L, int tt, size_t sz, GCObject **list, int offset)
void luaC_fix(lua_State *L, GCObject *o)
#define udatamemoffset(nuv)
void luaS_clearcache(global_State *g)
static TString * createstrobj(lua_State *L, size_t l, int tag, unsigned int h)
static TString * internshrstr(lua_State *L, const char *str, size_t l)
void luaS_remove(lua_State *L, TString *ts)
int luaS_eqlngstr(TString *a, TString *b)
Udata * luaS_newudata(lua_State *L, size_t s, int nuvalue)
void luaS_init(lua_State *L)
static void tablerehash(TString **vect, int osize, int nsize)
unsigned int luaS_hash(const char *str, size_t l, unsigned int seed)
unsigned int luaS_hashlongstr(TString *ts)
void luaS_resize(lua_State *L, int nsize)
static void growstrtab(lua_State *L, stringtable *tb)
TString * luaS_newlstr(lua_State *L, const char *str, size_t l)
TString * luaS_createlngstrobj(lua_State *L, size_t l)
CURL_EXTERN CURLMcode curl_socket_t s
TString * strcache[STRCACHE_N][STRCACHE_M]