Mercurial > dovecot > core-2.2
view src/lib/array-decl.h @ 9178:13bbdd7b15b8 HEAD
Defined ARRAY_TYPE(uint).
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Thu, 30 Apr 2009 14:48:54 -0400 |
parents | 9d0037a997f4 |
children | a097ef0a9d6d |
line wrap: on
line source
#ifndef ARRAY_DECL_H #define ARRAY_DECL_H #define ARRAY_DEFINE(name, array_type) union { struct array arr; array_type const *const *v; array_type **v_modifiable; } name #define ARRAY_INIT { { 0, 0 } } #define ARRAY_DEFINE_TYPE(name, array_type) \ union array ## __ ## name { struct array arr; array_type const *const *v; array_type **v_modifiable; } #define ARRAY_TYPE(name) \ union array ## __ ## name struct array { buffer_t *buffer; size_t element_size; }; ARRAY_DEFINE_TYPE(string, char *); ARRAY_DEFINE_TYPE(const_string, const char *); ARRAY_DEFINE_TYPE(uint32_t, uint32_t); ARRAY_DEFINE_TYPE(uint, unsigned int); ARRAY_DEFINE_TYPE(void_array, void *); #endif