lua/luamem.h

41 lines
1.1 KiB
C
Raw Normal View History

1994-11-16 15:39:16 -02:00
/*
** mem.c
** memory manager for lua
1997-07-30 15:29:08 -03:00
** $Id: luamem.h,v 1.10 1997/07/29 20:38:45 roberto Exp roberto $
1994-11-16 15:39:16 -02:00
*/
#ifndef luamem_h
#define luamem_h
1994-11-16 15:39:16 -02:00
#ifndef NULL
#define NULL 0
#endif
1996-03-21 13:33:47 -03:00
/* memory error messages */
#define codeEM "code size overflow"
#define symbolEM "symbol table overflow"
#define constantEM "constant table overflow"
#define stackEM "stack size overflow"
#define lexEM "lex buffer overflow"
#define refEM "reference table overflow"
#define tableEM "table overflow"
#define memEM "not enough memory"
1996-03-21 13:33:47 -03:00
1994-11-16 15:39:16 -02:00
void *luaI_realloc (void *oldblock, unsigned long size);
1996-03-21 13:33:47 -03:00
void *luaI_buffer (unsigned long size);
int luaI_growvector (void **block, unsigned long nelems, int size,
char *errormsg, unsigned long limit);
1994-11-16 15:39:16 -02:00
1997-07-30 15:29:08 -03:00
#define luaI_free(b) luaI_realloc((b), 0)
#define luaI_malloc(s) luaI_realloc(NULL, (s))
1994-11-16 15:39:16 -02:00
#define new(s) ((s *)luaI_malloc(sizeof(s)))
#define newvector(n,s) ((s *)luaI_malloc((n)*sizeof(s)))
1996-03-21 13:33:47 -03:00
#define growvector(old,n,s,e,l) \
(luaI_growvector((void**)old,n,sizeof(s),e,l))
#define shrinkvector(v,n,t) ((t *)luaI_realloc(v,(n)*sizeof(t)))
1994-11-16 15:39:16 -02:00
#endif