Mercurial > repo
view src/ploki/variable.h @ 11562:6b0304dcec5c draft
<oerjan> ` cd bin; cp welcome \xd0\xb4\xd0\xbe\xd0\xb1\xd1\x80\xd0\xbe-\xd0\xbf\xd0\xbe\xd0\xb6\xd0\xb0\xd0\xbb\xd0\xbe\xd0\xb2\xd0\xb0\xd1\x82\xd1\x8c; sled \xd0\xb4\xd0\xbe\xd0\xb1\xd1\x80\xd0\xbe-\xd0\xbf\xd0\xbe\xd0\xb6\xd0\xb0\xd0\xbb\xd0\xbe\xd0\xb2\xd0\xb0\xd1\x82\xd1\x8c//s,welcome,welcome.ru,
author | HackEso <hackeso@esolangs.org> |
---|---|
date | Wed, 16 May 2018 04:46:17 +0100 |
parents | ac0403686959 |
children |
line wrap: on
line source
#ifndef VARIABLE_H_ #define VARIABLE_H_ #include "config.h" #include "strhash.h" #include <stddef.h> typedef size_t t_vr_cookie; #define VR_NO_COOKIE ((size_t)-1) typedef struct { void **data; size_t size, length; t_strhash *hash; void (*del)(void *); } t_vr_container; t_vr_container *vr_new(void (*)(void *)); void vr_delete(t_vr_container *); t_vr_cookie vr_exists(const t_vr_container *, const char *, size_t); t_vr_cookie vr_register(t_vr_container *, const char *, size_t, void *); void vr_freeze(t_vr_container *); ATTR_PURE void *vr_data(const t_vr_container *, t_vr_cookie); #if !DEBUG_P #define vr_data(vc, c) ((vc)->data[c]) #endif #endif /* VARIABLE_H_ */