Struct ext_php_rs::php::module::ModuleBuilder [−][src]
pub struct ModuleBuilder { /* fields omitted */ }
Expand description
Builds a Zend extension. Must be called from within an external function called get_module
,
returning a mutable pointer to a ModuleEntry
.
use ext_php_rs::{
php::module::{ModuleEntry, ModuleBuilder},
info_table_start, info_table_end, info_table_row
};
#[no_mangle]
pub extern "C" fn php_module_info(_module: *mut ModuleEntry) {
info_table_start!();
info_table_row!("column 1", "column 2");
info_table_end!();
}
#[no_mangle]
pub extern "C" fn get_module() -> *mut ModuleEntry {
ModuleBuilder::new("ext-name", "ext-version")
.info_function(php_module_info)
.build()
.unwrap()
.into_raw()
}
Implementations
Creates a new module builder with a given name and version.
Arguments
name
- The name of the extension.version
- The current version of the extension. TBD: Deprecate in favour of theCargo.toml
version?
Sets the shutdown function for the extension.
Arguments
func
- The function to be called on shutdown.
Sets the request startup function for the extension.
Arguments
func
- The function to be called when startup is requested.
Sets the request shutdown function for the extension.
Arguments
func
- The function to be called when shutdown is requested.
Sets the extension information function for the extension.
Arguments
func
- The function to be called to retrieve the information about the extension.
Builds the extension and returns a ModuleEntry
.
Returns a result containing the module entry if successful.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for ModuleBuilder
impl !Send for ModuleBuilder
impl !Sync for ModuleBuilder
impl Unpin for ModuleBuilder
impl UnwindSafe for ModuleBuilder
Blanket Implementations
Mutably borrows from an owned value. Read more