Files
mruby-mruby/include/mruby/mempool.h
T
Yukihiro "Matz" Matsumoto 6566099dbb mempool.c: remove mrb_state dependency from mempool library
mempool.h provide compatibility layer so that existing programs does not
need to update (but update recommended anyway, since compatibility layer
takes mrb_state that is not used at all).
2025-05-12 08:26:18 +09:00

20 lines
667 B
C

/*
** mempool.h - memory pool
**
** See Copyright Notice in mruby.h
*/
/* memory pool implementation */
typedef struct mempool mempool;
MRB_API struct mempool* mempool_open(void);
MRB_API void mempool_close(struct mempool*);
MRB_API void* mempool_alloc(struct mempool*, size_t);
MRB_API void* mempool_realloc(struct mempool*, void*, size_t oldlen, size_t newlen);
/* compatibility layer */
#define mrb_mempool mempool
#define mrb_mempool_open(m) mempool_open()
#define mrb_mempool_close(m) mempool_close(m)
#define mrb_mempool_alloc(m, size) mempool_alloc((m),(size))
#define mrb_mempool_realloc(m, ptr, oldlen, newlen) mempool_realloc((m),(ptr),(oldlen),(newlen))