@@ -28,7 +28,6 @@ use std::{
2828 ffi:: { CStr , CString } ,
2929 marker:: PhantomData ,
3030 mem:: { size_of, transmute, zeroed} ,
31- os:: raw:: c_char,
3231 ptr:: null_mut,
3332 rc:: Rc ,
3433} ;
@@ -137,15 +136,12 @@ impl FunctionEntry {
137136 let mut infos = Vec :: new ( ) ;
138137
139138 let require_arg_count = arguments. iter ( ) . filter ( |arg| arg. required ) . count ( ) ;
140- infos. push ( create_zend_arg_info (
141- require_arg_count as * const c_char ,
142- false ,
143- ) ) ;
139+ infos. push ( phper_zend_begin_arg_info_ex ( false , require_arg_count) ) ;
144140
145141 for arg in arguments {
146- infos. push ( create_zend_arg_info (
147- arg. name . as_ptr ( ) . cast ( ) ,
142+ infos. push ( phper_zend_arg_info (
148143 arg. pass_by_ref ,
144+ arg. name . as_ptr ( ) . cast ( ) ,
149145 ) ) ;
150146 }
151147
@@ -287,12 +283,12 @@ impl Argument {
287283}
288284
289285#[ repr( transparent) ]
290- pub struct ZendFunction {
286+ pub struct ZendFunc {
291287 inner : zend_function ,
292288}
293289
294- impl ZendFunction {
295- pub ( crate ) unsafe fn from_mut_ptr < ' a > ( ptr : * mut zend_function ) -> & ' a mut ZendFunction {
290+ impl ZendFunc {
291+ pub ( crate ) unsafe fn from_mut_ptr < ' a > ( ptr : * mut zend_function ) -> & ' a mut ZendFunc {
296292 let ptr = ptr as * mut Self ;
297293 ptr. as_mut ( ) . expect ( "ptr shouldn't be null" )
298294 }
@@ -446,55 +442,6 @@ unsafe extern "C" fn invoke(execute_data: *mut zend_execute_data, return_value:
446442 handler. call ( execute_data, transmute ( arguments) , return_value) ;
447443}
448444
449- pub ( crate ) const fn create_zend_arg_info (
450- name : * const c_char , _pass_by_ref : bool ,
451- ) -> zend_internal_arg_info {
452- #[ cfg( phper_major_version = "8" ) ]
453- {
454- zend_internal_arg_info {
455- name,
456- type_ : zend_type {
457- ptr : null_mut ( ) ,
458- type_mask : 0 ,
459- } ,
460- default_value : null_mut ( ) ,
461- }
462- }
463-
464- #[ cfg( all(
465- phper_major_version = "7" ,
466- any(
467- phper_minor_version = "4" ,
468- phper_minor_version = "3" ,
469- phper_minor_version = "2" ,
470- )
471- ) ) ]
472- {
473- #[ allow( clippy:: unnecessary_cast) ]
474- zend_internal_arg_info {
475- name,
476- type_ : 0 as crate :: sys:: zend_type ,
477- pass_by_reference : _pass_by_ref as zend_uchar ,
478- is_variadic : 0 ,
479- }
480- }
481-
482- #[ cfg( all(
483- phper_major_version = "7" ,
484- any( phper_minor_version = "1" , phper_minor_version = "0" )
485- ) ) ]
486- {
487- zend_internal_arg_info {
488- name,
489- class_name : std:: ptr:: null ( ) ,
490- type_hint : 0 ,
491- allow_null : 0 ,
492- pass_by_reference : _pass_by_ref as zend_uchar ,
493- is_variadic : 0 ,
494- }
495- }
496- }
497-
498445/// Call user function by name.
499446///
500447/// # Examples
0 commit comments