4 size_t psi_t_alignment(token_t t
);
5 size_t psi_t_size(token_t t
);
7 static inline size_t psi_align(size_t s
, size_t a
) {
8 return ((s
- 1) | (a
- 1)) + 1;
11 static inline size_t psi_offset_padding(size_t diff
, size_t alignment
) {
12 if (diff
&& diff
<= psi_align(diff
, alignment
)) {
19 static inline void psi_do_set(zval
*return_value
, set_value
*set
)
21 decl_arg
*set_arg
= set
->vars
->vars
[0]->arg
;
23 zval_dtor(return_value
);
24 set
->func
->handler(return_value
, set
, set_arg
->let
);
27 int psi_internal_type(impl_type
*type
);
28 zend_internal_arg_info
*psi_internal_arginfo(impl
*impl
);
29 size_t psi_num_min_args(impl
*impl
);
31 void psi_call(zend_execute_data
*execute_data
, zval
*return_value
, impl
*impl
);