1 /* 2 +----------------------------------------------------------------------+ 3 | Zend Engine | 4 +----------------------------------------------------------------------+ 5 | Copyright (c) 1998-2014 Zend Technologies Ltd. (http://www.zend.com) | 6 +----------------------------------------------------------------------+ 7 | This source file is subject to version 2.00 of the Zend license, | 8 | that is bundled with this package in the file LICENSE, and is | 9 | available through the world-wide-web at the following url: | 10 | http://www.zend.com/license/2_00.txt. | 11 | If you did not receive a copy of the Zend license and are unable to | 12 | obtain it through the world-wide-web, please send a note to | 13 | license@zend.com so we can mail you a copy immediately. | 14 +----------------------------------------------------------------------+ 15 | Authors: Andi Gutmans <andi@zend.com> | 16 | Zeev Suraski <zeev@zend.com> | 17 +----------------------------------------------------------------------+ 18 */ 19 20 /* $Id$ */ 21 22 #ifndef ZEND_DYNAMIC_ARRAY_H 23 #define ZEND_DYNAMIC_ARRAY_H 24 25 typedef struct _dynamic_array { 26 char *array; 27 unsigned int element_size; 28 unsigned int last_used; 29 unsigned int allocated; 30 } dynamic_array; 31 32 BEGIN_EXTERN_C() 33 ZEND_API int zend_dynamic_array_init(dynamic_array *da, unsigned int element_size, unsigned int size); 34 ZEND_API void *zend_dynamic_array_push(dynamic_array *da); 35 ZEND_API void *zend_dynamic_array_pop(dynamic_array *da); 36 ZEND_API void *zend_dynamic_array_get_element(dynamic_array *da, unsigned int index); 37 END_EXTERN_C() 38 39 #endif /* ZEND_DYNAMIC_ARRAY_H */ 40 41 /* 42 * Local variables: 43 * tab-width: 4 44 * c-basic-offset: 4 45 * indent-tabs-mode: t 46 * End: 47 */ 48