Defines | Functions

lua/lmem.h File Reference

#include <stddef.h>
#include "llimits.h"
#include "lua.h"
Include dependency graph for lmem.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define luaM_reallocv(L, b, on, n, e)
#define luaM_freemem(L, b, s)   luaM_realloc_(L, (b), (s), 0)
#define luaM_free(L, b)   luaM_realloc_(L, (b), sizeof(*(b)), 0)
#define luaM_freearray(L, b, n)   luaM_reallocv(L, (b), n, 0, sizeof((b)[0]))
#define luaM_malloc(L, s)   luaM_realloc_(L, NULL, 0, (s))
#define luaM_new(L, t)   cast(t *, luaM_malloc(L, sizeof(t)))
#define luaM_newvector(L, n, t)   cast(t *, luaM_reallocv(L, NULL, 0, n, sizeof(t)))
#define luaM_newobject(L, tag, s)   luaM_realloc_(L, NULL, tag, (s))
#define luaM_growvector(L, v, nelems, size, t, limit, e)
#define luaM_reallocvector(L, v, oldn, n, t)   ((v)=cast(t *, luaM_reallocv(L, v, oldn, n, sizeof(t))))

Functions

LUAI_FUNC l_noret luaM_toobig (lua_State *L)
LUAI_FUNC void * luaM_realloc_ (lua_State *L, void *block, size_t oldsize, size_t size)
LUAI_FUNC void * luaM_growaux_ (lua_State *L, void *block, int *size, size_t size_elem, int limit, const char *what)

Define Documentation

#define luaM_free (   L,
  b 
)    luaM_realloc_(L, (b), sizeof(*(b)), 0)

Definition at line 23 of file lmem.h.

Referenced by luaE_freeCI(), luaE_freethread(), luaF_freeproto(), luaF_freeupval(), and luaH_free().

#define luaM_freearray (   L,
  b,
  n 
)    luaM_reallocv(L, (b), n, 0, sizeof((b)[0]))
#define luaM_freemem (   L,
  b,
  s 
)    luaM_realloc_(L, (b), (s), 0)

Definition at line 22 of file lmem.h.

Referenced by freeobj(), and luaF_freeclosure().

#define luaM_growvector (   L,
  v,
  nelems,
  size,
  t,
  limit,
  e 
)
Value:
if ((nelems)+1 > (size)) \
            ((v)=cast(t *, luaM_growaux_(L,v,&(size),sizeof(t),limit,e)))

Definition at line 33 of file lmem.h.

Referenced by addk(), codeclosure(), luaK_code(), new_localvar(), newlabelentry(), newupvalue(), and registerlocalvar().

#define luaM_malloc (   L,
  s 
)    luaM_realloc_(L, NULL, 0, (s))

Definition at line 26 of file lmem.h.

#define luaM_new (   L,
  t 
)    cast(t *, luaM_malloc(L, sizeof(t)))

Definition at line 27 of file lmem.h.

Referenced by luaE_extendCI().

#define luaM_newobject (   L,
  tag,
  s 
)    luaM_realloc_(L, NULL, tag, (s))

Definition at line 31 of file lmem.h.

Referenced by luaC_newobj().

#define luaM_newvector (   L,
  n,
  t 
)    cast(t *, luaM_reallocv(L, NULL, 0, n, sizeof(t)))

Definition at line 28 of file lmem.h.

Referenced by LoadCode(), LoadConstants(), LoadDebug(), LoadUpvalues(), setnodevector(), and stack_init().

#define luaM_reallocv (   L,
  b,
  on,
  n,
  e 
)
Value:
((cast(size_t, (n)+1) > MAX_SIZET/(e)) ?  /* +1 to avoid warnings */ \
        (luaM_toobig(L), (void *)0) : \
        luaM_realloc_(L, (b), (on)*(e), (n)*(e)))

Definition at line 17 of file lmem.h.

Referenced by luaM_growaux_().

#define luaM_reallocvector (   L,
  v,
  oldn,
  n,
  t 
)    ((v)=cast(t *, luaM_reallocv(L, v, oldn, n, sizeof(t))))

Definition at line 37 of file lmem.h.

Referenced by close_func(), luaD_reallocstack(), luaH_resize(), luaS_resize(), and setarrayvector().


Function Documentation

LUAI_FUNC void* luaM_growaux_ ( lua_State L,
void *  block,
int *  size,
size_t  size_elem,
int  limit,
const char *  what 
)

Definition at line 46 of file lmem.c.

References luaG_runerror(), luaM_reallocv, and MINSIZEARRAY.

Here is the call graph for this function:

LUAI_FUNC void* luaM_realloc_ ( lua_State L,
void *  block,
size_t  oldsize,
size_t  size 
)
LUAI_FUNC l_noret luaM_toobig ( lua_State L  ) 

Definition at line 66 of file lmem.c.

References luaG_runerror().

Referenced by luaS_newudata(), and newlstr().

Here is the call graph for this function:

Here is the caller graph for this function:

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated by doxygen 1.7.1 on Fri May 25 2012 01:07:17 for The Battle for Wesnoth
Gna! | Forum | Wiki | CIA | devdocs