Ardour  9.0-pre0-582-g084a23a80d
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.

Macros

#define luaM_reallocv(L, b, on, n, e)
 
#define luaM_reallocvchar(L, b, on, n)    cast(char *, luaM_realloc_(L, (b), (on)*sizeof(char), (n)*sizeof(char)))
 
#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_realloc_(L, (b), (n)*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

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

Macro Definition Documentation

◆ luaM_free

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

Definition at line 42 of file lmem.h.

◆ luaM_freearray

#define luaM_freearray (   L,
  b,
 
)    luaM_realloc_(L, (b), (n)*sizeof(*(b)), 0)

Definition at line 43 of file lmem.h.

◆ luaM_freemem

#define luaM_freemem (   L,
  b,
 
)    luaM_realloc_(L, (b), (s), 0)

Definition at line 41 of file lmem.h.

◆ luaM_growvector

#define luaM_growvector (   L,
  v,
  nelems,
  size,
  t,
  limit,
 
)
Value:
if ((nelems)+1 > (size)) \
((v)=cast(t *, luaM_growaux_(L,v,&(size),sizeof(t),limit,e)))
#define cast(t, exp)
Definition: llimits.h:111
void * luaM_growaux_(lua_State *L, void *block, int *size, size_t size_elem, int limit, const char *what)

Definition at line 52 of file lmem.h.

◆ luaM_malloc

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

Definition at line 45 of file lmem.h.

◆ luaM_new

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

Definition at line 46 of file lmem.h.

◆ luaM_newobject

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

Definition at line 50 of file lmem.h.

◆ luaM_newvector

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

Definition at line 47 of file lmem.h.

◆ luaM_reallocv

#define luaM_reallocv (   L,
  b,
  on,
  n,
 
)
Value:
(((sizeof(n) >= sizeof(size_t) && cast(size_t, (n)) + 1 > MAX_SIZET/(e)) \
? luaM_toobig(L) : cast_void(0)) , \
luaM_realloc_(L, (b), (on)*(e), (n)*(e)))
#define cast_void(i)
Definition: llimits.h:113
#define MAX_SIZET
Definition: llimits.h:39
void * luaM_realloc_(lua_State *L, void *block, size_t oldsize, size_t size)
void luaM_toobig(lua_State *L)

Definition at line 30 of file lmem.h.

◆ luaM_reallocvchar

#define luaM_reallocvchar (   L,
  b,
  on,
 
)     cast(char *, luaM_realloc_(L, (b), (on)*sizeof(char), (n)*sizeof(char)))

Definition at line 38 of file lmem.h.

◆ luaM_reallocvector

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

Definition at line 56 of file lmem.h.

Function Documentation

◆ luaM_growaux_()

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

◆ luaM_realloc_()

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

◆ luaM_toobig()

void luaM_toobig ( lua_State L)