summaryrefslogtreecommitdiff
path: root/Zend/zend_variables.h
diff options
context:
space:
mode:
authorMarcus Boerger <helly@php.net>2003-08-24 17:32:47 +0000
committerMarcus Boerger <helly@php.net>2003-08-24 17:32:47 +0000
commit19ec7a09fc332d1430bd1488861ef72cb227fca6 (patch)
tree4daef239378b7fc77c1e0bc952aea7c77dc04dc6 /Zend/zend_variables.h
parentcec053f70763e9974b48836e37adcc03a8f052b6 (diff)
downloadphp-git-19ec7a09fc332d1430bd1488861ef72cb227fca6.tar.gz
- Provide appropriate way to destroy internal zval's.
- Allow internal zval's of type string and disallow complex types. - Define the default string for extensions at class level instead of ctor.
Diffstat (limited to 'Zend/zend_variables.h')
-rw-r--r--Zend/zend_variables.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/Zend/zend_variables.h b/Zend/zend_variables.h
index 9d43fcbde8..a37671e6f8 100644
--- a/Zend/zend_variables.h
+++ b/Zend/zend_variables.h
@@ -29,21 +29,31 @@ BEGIN_EXTERN_C()
ZEND_API int _zval_copy_ctor(zval *zvalue ZEND_FILE_LINE_DC);
ZEND_API void _zval_dtor(zval *zvalue ZEND_FILE_LINE_DC);
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);
#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)
#if ZEND_DEBUG
ZEND_API int _zval_copy_ctor_wrapper(zval *zvalue);
ZEND_API void _zval_dtor_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_dtor_wrapper _zval_dtor_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
#define zval_dtor_wrapper _zval_dtor
#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
END_EXTERN_C()
@@ -53,6 +63,8 @@ ZEND_API void zval_add_ref(zval **p);
#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