To whom it may concern, sharing port to Rust of what PHP ext_skel generated in C
Shows how to
- export Rust function to C
- declare Rust struct with nested unions for C (FFI)
- have global C struct _zend_module_entry in Rust and pass pointer to C
- uses cdylib and prefer-dynamic (and link-arg=-undefined link-arg=dynamic_lookup on OSX)
- call Zend API from Rust shared library
- port C Zend macro to Rust (e.g. RETURN_STR and PHP_FE_END)
I’m looking for reviews and feedback
I have so far avoided PHP in my career; Do I understand correctly that your template shows how to program Rust modules, that can then be called from PHP? Impressive!
That is a massively interesting strategy to get PHP-coders interested in more robust programming languages!
You are providing the “ gateway drug to safety” for them.
P.S. I had to look up “THIMC” (“To whom it may concern”); acronyms aren’t always clear, especially for non-native speakers, or across culture boundaries