api refactoring
[m6w6/ext-psi] / src / engine.h
index 83f64f14b6507b0519a473c1183354cc98b30629..e8d86ff6c898c9620d3eee0256a5e80a15ec00c7 100644 (file)
@@ -1,9 +1,6 @@
 #ifndef _PSI_ENGINE_H
 #define _PSI_ENGINE_H
 
-size_t psi_t_alignment(token_t t);
-size_t psi_t_size(token_t t);
-
 static inline size_t psi_align(size_t s, size_t a) {
        return ((s - 1) | (a - 1)) + 1;
 }
@@ -21,13 +18,14 @@ static inline void psi_do_set(zval *return_value, set_value *set)
        decl_arg *set_arg = set->vars->vars[0]->arg;
 
        zval_dtor(return_value);
-       set->func->handler(return_value, set, set_arg->let ? set_arg->let->ptr : set_arg->ptr);
+       set->func->handler(return_value, set, set_arg->let);
 }
 
 int psi_internal_type(impl_type *type);
 zend_internal_arg_info *psi_internal_arginfo(impl *impl);
 size_t psi_num_min_args(impl *impl);
 
-void psi_call(zend_execute_data *execute_data, zval *return_value, impl *impl);
+ZEND_RESULT_CODE psi_call(zend_execute_data *execute_data, zval *return_value, impl *impl);
+ZEND_RESULT_CODE psi_callback(let_callback *cb, void *retval, unsigned argc, void **argv);
 
 #endif