diff options
Diffstat (limited to 'lua/lstring.h')
-rw-r--r-- | lua/lstring.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/lua/lstring.h b/lua/lstring.h new file mode 100644 index 000000000..099524c1c --- /dev/null +++ b/lua/lstring.h @@ -0,0 +1,33 @@ +/* +** $Id: lstring.h,v 1.1 2004/03/16 21:58:30 niemeyer Exp $ +** String table (keep all strings handled by Lua) +** See Copyright Notice in lua.h +*/ + +#ifndef lstring_h +#define lstring_h + + +#include "lobject.h" +#include "lstate.h" + + + +#define sizestring(l) (cast(lu_mem, sizeof(union TString))+ \ + (cast(lu_mem, l)+1)*sizeof(char)) + +#define sizeudata(l) (cast(lu_mem, sizeof(union Udata))+(l)) + +#define luaS_new(L, s) (luaS_newlstr(L, s, strlen(s))) +#define luaS_newliteral(L, s) (luaS_newlstr(L, "" s, \ + (sizeof(s)/sizeof(char))-1)) + +#define luaS_fix(s) ((s)->tsv.marked |= (1<<4)) + +void luaS_resize (lua_State *L, int newsize); +Udata *luaS_newudata (lua_State *L, size_t s); +void luaS_freeall (lua_State *L); +TString *luaS_newlstr (lua_State *L, const char *str, size_t l); + + +#endif |