Merge pull request #33 from m6w6/fix-19
[m6w6/ext-pq] / src / php_pq_callback.h
1 /*
2 +--------------------------------------------------------------------+
3 | PECL :: pq |
4 +--------------------------------------------------------------------+
5 | Redistribution and use in source and binary forms, with or without |
6 | modification, are permitted provided that the conditions mentioned |
7 | in the accompanying LICENSE file are met. |
8 +--------------------------------------------------------------------+
9 | Copyright (c) 2013, Michael Wallner <mike@php.net> |
10 +--------------------------------------------------------------------+
11 */
12
13 #ifndef PHP_PQ_CALLBACK_H
14 #define PHP_PQ_CALLBACK_H
15
16 #include <Zend/zend_interfaces.h>
17
18 typedef struct php_pq_callback {
19 zend_fcall_info fci;
20 zend_fcall_info_cache fcc;
21 struct php_pq_callback *recursion;
22 } php_pq_callback_t;
23
24 extern void php_pq_callback_dtor(php_pq_callback_t *cb);
25 extern void php_pq_callback_addref(php_pq_callback_t *cb);
26 extern zval *php_pq_callback_to_zval(php_pq_callback_t *cb, zval *tmp);
27 extern zval *php_pq_callback_to_zval_no_addref(php_pq_callback_t *cb, zval *tmp);
28 extern zend_bool php_pq_callback_is_locked(php_pq_callback_t *cb);
29 extern void php_pq_callback_recurse(php_pq_callback_t *old, php_pq_callback_t *new);
30 extern zend_bool php_pq_callback_is_enabled(php_pq_callback_t *cb);
31 extern void php_pq_callback_disable(php_pq_callback_t *cb);
32 extern void php_pq_callback_recurse_ex(php_pq_callback_t *old, php_pq_callback_t *new);
33 extern zend_bool php_pq_callback_is_recurrent(php_pq_callback_t *cb);
34
35 #endif
36
37 /*
38 * Local variables:
39 * tab-width: 4
40 * c-basic-offset: 4
41 * End:
42 * vim600: noet sw=4 ts=4 fdm=marker
43 * vim<600: noet sw=4 ts=4
44 */