annotate ploki/variable.h @ 4221:19624cfb341a

<mauke> cp ploki/ploki bin/
author HackBot
date Fri, 20 Dec 2013 22:11:30 +0000
parents 7a6bc310b732
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4215
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
1 #ifndef VARIABLE_H_
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
2 #define VARIABLE_H_
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
3
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
4 #include "config.h"
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
5 #include "strhash.h"
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
6
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
7 #include <stddef.h>
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
8
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
9 typedef size_t t_vr_cookie;
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
10 #define VR_NO_COOKIE ((size_t)-1)
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
11
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
12 typedef struct {
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
13 void **data;
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
14 size_t size, length;
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
15 t_strhash *hash;
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
16 void (*del)(void *);
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
17 } t_vr_container;
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
18
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
19 t_vr_container *vr_new(void (*)(void *));
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
20 void vr_delete(t_vr_container *);
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
21
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
22 t_vr_cookie vr_exists(const t_vr_container *, const char *, size_t);
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
23 t_vr_cookie vr_register(t_vr_container *, const char *, size_t, void *);
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
24
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
25 void vr_freeze(t_vr_container *);
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
26
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
27 ATTR_PURE
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
28 void *vr_data(const t_vr_container *, t_vr_cookie);
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
29
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
30 #if !DEBUG_P
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
31 #define vr_data(vc, c) ((vc)->data[c])
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
32 #endif
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
33
7a6bc310b732 <shachaf> tar xjf ploki-0.6.5.1.tar.bz2
HackBot
parents:
diff changeset
34 #endif /* VARIABLE_H_ */