diff options
author | Søren Sandmann Pedersen <sandmann@redhat.com> | 2008-11-07 22:27:14 -0500 |
---|---|---|
committer | Søren Sandmann Pedersen <sandmann@redhat.com> | 2008-11-07 22:27:14 -0500 |
commit | 1b5354132fc61321b116ea7a199a751cfbc51014 (patch) | |
tree | f65d32476136f1be6268fc77a33ad9399cd6ad99 /libnul.h | |
parent | 662988df0e35415a479fca3fc244a881bb3a296e (diff) |
Add simple pointer array
Diffstat (limited to 'libnul.h')
-rw-r--r-- | libnul.h | 20 |
1 files changed, 20 insertions, 0 deletions
@@ -22,6 +22,26 @@ #include <stdint.h> #include <glib.h> +/* From glib */ + +/* Provide convenience macros for handling structure + * fields through their offsets. + */ + +#if defined(__GNUC__) && __GNUC__ >= 4 +# define NUL_STRUCT_OFFSET(struct_type, member) \ + ((gssize) __builtin_offsetof (struct_type, member)) +#else +# define NUL_STRUCT_OFFSET(struct_type, member) \ + ((gssize) ((guint8*) &((struct_type*) 0)->member)) +#endif + +/* Pointer arrays */ +void **nul_parr_new (void); +void **nul_parr_append (void **arr, gpointer data); +gsize nul_parr_len (void **arr); +void nul_parr_free (void **arr); + typedef union { uint32_t v_uint32; |