123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- #ifndef ZEND_VARIABLES_H
- #define ZEND_VARIABLES_H
- BEGIN_EXTERN_C()
- ZEND_API void _zval_dtor_func(zval *zvalue ZEND_FILE_LINE_DC);
- static zend_always_inline void _zval_dtor(zval *zvalue ZEND_FILE_LINE_DC)
- {
- if (zvalue->type <= IS_BOOL) {
- return;
- }
- _zval_dtor_func(zvalue ZEND_FILE_LINE_RELAY_CC);
- }
- ZEND_API void _zval_copy_ctor_func(zval *zvalue ZEND_FILE_LINE_DC);
- static zend_always_inline void _zval_copy_ctor(zval *zvalue ZEND_FILE_LINE_DC)
- {
- if (zvalue->type <= IS_BOOL) {
- return;
- }
- _zval_copy_ctor_func(zvalue ZEND_FILE_LINE_RELAY_CC);
- }
- ZEND_API int zval_copy_static_var(zval **p TSRMLS_DC, int num_args, va_list args, zend_hash_key *key);
- ZEND_API int zend_print_variable(zval *var);
- ZEND_API void _zval_ptr_dtor(zval **zval_ptr ZEND_FILE_LINE_DC);
- ZEND_API void _zval_internal_dtor(zval *zvalue ZEND_FILE_LINE_DC);
- ZEND_API void _zval_internal_ptr_dtor(zval **zvalue ZEND_FILE_LINE_DC);
- ZEND_API void _zval_dtor_wrapper(zval *zvalue);
- #define zval_copy_ctor(zvalue) _zval_copy_ctor((zvalue) ZEND_FILE_LINE_CC)
- #define zval_dtor(zvalue) _zval_dtor((zvalue) ZEND_FILE_LINE_CC)
- #define zval_ptr_dtor(zval_ptr) _zval_ptr_dtor((zval_ptr) ZEND_FILE_LINE_CC)
- #define zval_internal_dtor(zvalue) _zval_internal_dtor((zvalue) ZEND_FILE_LINE_CC)
- #define zval_internal_ptr_dtor(zvalue) _zval_internal_ptr_dtor((zvalue) ZEND_FILE_LINE_CC)
- #define zval_dtor_wrapper _zval_dtor_wrapper
- #if ZEND_DEBUG
- ZEND_API void _zval_copy_ctor_wrapper(zval *zvalue);
- ZEND_API void _zval_ptr_dtor_wrapper(zval **zval_ptr);
- ZEND_API void _zval_internal_dtor_wrapper(zval *zvalue);
- ZEND_API void _zval_internal_ptr_dtor_wrapper(zval **zvalue);
- #define zval_copy_ctor_wrapper _zval_copy_ctor_wrapper
- #define zval_ptr_dtor_wrapper _zval_ptr_dtor_wrapper
- #define zval_internal_dtor_wrapper _zval_internal_dtor_wrapper
- #define zval_internal_ptr_dtor_wrapper _zval_internal_ptr_dtor_wrapper
- #else
- #define zval_copy_ctor_wrapper _zval_copy_ctor_func
- #define zval_ptr_dtor_wrapper _zval_ptr_dtor
- #define zval_internal_dtor_wrapper _zval_internal_dtor
- #define zval_internal_ptr_dtor_wrapper _zval_internal_ptr_dtor
- #endif
- ZEND_API void zval_add_ref(zval **p);
- END_EXTERN_C()
- #define ZVAL_DESTRUCTOR (void (*)(void *)) zval_dtor_wrapper
- #define ZVAL_PTR_DTOR (void (*)(void *)) zval_ptr_dtor_wrapper
- #define ZVAL_INTERNAL_DTOR (void (*)(void *)) zval_internal_dtor_wrapper
- #define ZVAL_INTERNAL_PTR_DTOR (void (*)(void *)) zval_internal_ptr_dtor_wrapper
- #define ZVAL_COPY_CTOR (void (*)(void *)) zval_copy_ctor_wrapper
- #endif
|