@@ -6,7 +6,7 @@ use proc_macro2::{Ident, Span};
66use quote:: quote;
77use syn:: punctuated:: Punctuated ;
88use syn:: token:: Comma ;
9- use syn:: { parse_macro_input, parse_str, FnArg , ItemFn } ;
9+ use syn:: { parse_macro_input, parse_str, FnArg , ItemFn , NestedMeta , AttributeArgs , Meta } ;
1010
1111#[ proc_macro_attribute]
1212pub fn php_function ( _attr : TokenStream , input : TokenStream ) -> TokenStream {
@@ -50,6 +50,13 @@ pub fn php_minit_function(_attr: TokenStream, input: TokenStream) -> TokenStream
5050 #[ no_mangle]
5151 #( #attrs) *
5252 pub extern "C" fn #name( #inputs) -> :: std:: os:: raw:: c_int {
53+ unsafe {
54+ :: phper_sys:: zend_register_ini_entries(
55+ INI_ENTRIES . with( |i| i. as_ptr( ) as * const :: phper_sys:: zend_ini_entry_def) ,
56+ module_number
57+ ) ;
58+ }
59+
5360 let f = |#inner_inputs| #ret {
5461 #body
5562 } ;
@@ -80,6 +87,10 @@ pub fn php_mshutdown_function(_attr: TokenStream, input: TokenStream) -> TokenSt
8087 #[ no_mangle]
8188 #( #attrs) *
8289 pub extern "C" fn #name( #inputs) -> :: std:: os:: raw:: c_int {
90+ unsafe {
91+ :: phper_sys:: zend_unregister_ini_entries( module_number) ;
92+ }
93+
8394 let f = |#inner_inputs| #ret {
8495 #body
8596 } ;
@@ -180,6 +191,11 @@ pub fn php_minfo_function(_attr: TokenStream, input: TokenStream) -> TokenStream
180191 result. into ( )
181192}
182193
194+ //#[proc_macro_attribute]
195+ //pub fn php_ini(_attr: TokenStream, input: TokenStream) -> TokenStream {
196+ // input
197+ //}
198+
183199fn internal_function_parameters ( inputs : & mut Punctuated < FnArg , Comma > ) {
184200 inputs. push ( parse_str ( "execute_data: *mut ::phper_sys::zend_execute_data" ) . unwrap ( ) ) ;
185201 inputs. push ( parse_str ( "return_value: *mut ::phper_sys::zval" ) . unwrap ( ) ) ;
0 commit comments