use nix build & meson & zlog

This commit is contained in:
Rongsong Shen 2025-11-03 18:19:59 +08:00
parent 0123623742
commit 346768a144
60 changed files with 13739 additions and 0 deletions

32
src/include/zarray.h Normal file
View file

@ -0,0 +1,32 @@
#if !defined(_ZARRAY_H_)
#define _ZARRAY_H_ 1
#include "mylock.h"
#include "xlist.h"
typedef void (*zarray_item_killer_t)(void*);
typedef int (*zarray_iter_fn_t)(void*, void*);
typedef struct {
mylock_t lock;
int count;
int pos;
int caps;
int delta;
zarray_item_killer_t killer;
void** data;
} zarray_t;
extern int zarray_init(zarray_t*, int,
zarray_item_killer_t);
extern int zarray_store(zarray_t*, void*);
extern int zarray_clear(zarray_t*, int);
extern int zarray_iter_ex(zarray_t*, xlist_t*, void*);
extern int zarray_iter(zarray_t*, zarray_iter_fn_t, void*);
extern int zarray_del(zarray_t*, int);
extern int zarray_put(zarray_t*, int, void*);
extern void* zarray_get(zarray_t*, int);
extern void zarray_fini(zarray_t*);
#endif