diff options
Diffstat (limited to 'Zend/zend.h')
| -rw-r--r-- | Zend/zend.h | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/Zend/zend.h b/Zend/zend.h index c55e3a3b83..619ac2a050 100644 --- a/Zend/zend.h +++ b/Zend/zend.h @@ -177,11 +177,19 @@ typedef struct _zend_object { typedef unsigned int zend_object_handle; +typedef struct _zend_object_handlers zend_object_handlers; + +typedef struct _zend_object_value { + zend_object_handle handle; + zend_object_handlers *handlers; +} zend_object_value; + typedef zend_object *(*get_address_t)(zend_object_handle handle); /* Don't return zval ** so that we can't change it */ typedef zval **(*get_property_address_t)(zend_object_handle handle, zval *offset, int type); typedef void (*add_ref_t)(zend_object_handle handle); typedef void (*del_ref_t)(zend_object_handle handle); typedef void (*delete_obj_t)(zend_object_handle handle); +typedef zend_object_value (*clone_obj_t)(zend_object_handle handle); typedef struct _zend_object_handlers { get_address_t get_address; @@ -189,13 +197,9 @@ typedef struct _zend_object_handlers { add_ref_t add_ref; del_ref_t del_ref; delete_obj_t delete_obj; + clone_obj_t clone_obj; } zend_object_handlers; -typedef struct _zend_object_value { - zend_object_handle handle; - zend_object_handlers handlers; -} zend_object_value; - #include "zend_objects.h" typedef union _zvalue_value { |
