diff options
Diffstat (limited to 'Zend/zend_API.h')
-rw-r--r-- | Zend/zend_API.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/Zend/zend_API.h b/Zend/zend_API.h index 541218b676..661c1b5fcf 100644 --- a/Zend/zend_API.h +++ b/Zend/zend_API.h @@ -653,7 +653,7 @@ typedef struct _zend_fcall_info_cache { BEGIN_EXTERN_C() ZEND_API extern zend_fcall_info_cache empty_fcall_info_cache; -/* Build zend_call_info/cache from a zval* +/** Build zend_call_info/cache from a zval* * * Caller is responsible to provide a return value, otherwise the we will crash. * fci->retval_ptr_ptr = NULL; @@ -662,7 +662,15 @@ ZEND_API extern zend_fcall_info_cache empty_fcall_info_cache; * fci->params = NULL; */ ZEND_API int zend_fcall_info_init(zval *callable, zend_fcall_info *fci, zend_fcall_info_cache *fcc TSRMLS_DC); + +/** Set or clear the arguments in the zend_call_info struct taking care of + * refcount. If args is NULL and arguments are set then those are cleared. + */ ZEND_API int zend_fcall_info_args(zend_fcall_info *fci, zval *args TSRMLS_DC); + +/** Call a function using information created by zend_fcall_info_init()/args(). + * If args is given then those replace the arguement info in fci is temporarily. + */ ZEND_API int zend_fcall_info_call(zend_fcall_info *fci, zend_fcall_info_cache *fcc, zval **retval, zval *args TSRMLS_DC); ZEND_API int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache TSRMLS_DC); |