3 ** memory manager for lua
4 ** $Id: luamem.h,v 1.9 1997/03/31 14:10:11 roberto Exp $
15 /* memory error messages */
16 #define codeEM "code size overflow"
17 #define symbolEM "symbol table overflow"
18 #define constantEM "constant table overflow"
19 #define stackEM "stack size overflow"
20 #define lexEM "lex buffer overflow"
21 #define refEM "reference table overflow"
22 #define tableEM "table overflow"
23 #define memEM "not enough memory"
26 void luaI_free (void *block
);
27 void *luaI_realloc (void *oldblock
, unsigned long size
);
28 void *luaI_buffer (unsigned long size
);
29 int luaI_growvector (void **block
, unsigned long nelems
, int size
,
30 char *errormsg
, unsigned long limit
);
32 #define luaI_malloc(s) luaI_realloc(NULL, (s))
33 #define new(s) ((s *)luaI_malloc(sizeof(s)))
34 #define newvector(n,s) ((s *)luaI_malloc((n)*sizeof(s)))
35 #define growvector(old,n,s,e,l) \
36 (luaI_growvector((void**)old,n,sizeof(s),e,l))