Type Alias ext_php_rs::zend::ZendObjectHandlers
source · pub type ZendObjectHandlers = zend_object_handlers;Expand description
A set of functions associated with a PHP class.
Aliased Type§
struct ZendObjectHandlers {Show 25 fields
pub offset: i32,
pub free_obj: Option<unsafe extern "C" fn(_: *mut _zend_object)>,
pub dtor_obj: Option<unsafe extern "C" fn(_: *mut _zend_object)>,
pub clone_obj: Option<unsafe extern "C" fn(_: *mut _zend_object) -> *mut _zend_object>,
pub read_property: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zend_string, _: i32, _: *mut *mut c_void, _: *mut _zval_struct) -> *mut _zval_struct>,
pub write_property: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zend_string, _: *mut _zval_struct, _: *mut *mut c_void) -> *mut _zval_struct>,
pub read_dimension: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zval_struct, _: i32, _: *mut _zval_struct) -> *mut _zval_struct>,
pub write_dimension: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zval_struct, _: *mut _zval_struct)>,
pub get_property_ptr_ptr: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zend_string, _: i32, _: *mut *mut c_void) -> *mut _zval_struct>,
pub has_property: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zend_string, _: i32, _: *mut *mut c_void) -> i32>,
pub unset_property: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zend_string, _: *mut *mut c_void)>,
pub has_dimension: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zval_struct, _: i32) -> i32>,
pub unset_dimension: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zval_struct)>,
pub get_properties: Option<unsafe extern "C" fn(_: *mut _zend_object) -> *mut _zend_array>,
pub get_method: Option<unsafe extern "C" fn(_: *mut *mut _zend_object, _: *mut _zend_string, _: *const _zval_struct) -> *mut _zend_function>,
pub get_constructor: Option<unsafe extern "C" fn(_: *mut _zend_object) -> *mut _zend_function>,
pub get_class_name: Option<unsafe extern "C" fn(_: *const _zend_object) -> *mut _zend_string>,
pub cast_object: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zval_struct, _: i32) -> i32>,
pub count_elements: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut i64) -> i32>,
pub get_debug_info: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut i32) -> *mut _zend_array>,
pub get_closure: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut *mut _zend_class_entry, _: *mut *mut _zend_function, _: *mut *mut _zend_object, _: bool) -> i32>,
pub get_gc: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut *mut _zval_struct, _: *mut i32) -> *mut _zend_array>,
pub do_operation: Option<unsafe extern "C" fn(_: u8, _: *mut _zval_struct, _: *mut _zval_struct, _: *mut _zval_struct) -> i32>,
pub compare: Option<unsafe extern "C" fn(_: *mut _zval_struct, _: *mut _zval_struct) -> i32>,
pub get_properties_for: Option<unsafe extern "C" fn(_: *mut _zend_object, _: u32) -> *mut _zend_array>,
}Fields§
§offset: i32§free_obj: Option<unsafe extern "C" fn(_: *mut _zend_object)>§dtor_obj: Option<unsafe extern "C" fn(_: *mut _zend_object)>§clone_obj: Option<unsafe extern "C" fn(_: *mut _zend_object) -> *mut _zend_object>§read_property: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zend_string, _: i32, _: *mut *mut c_void, _: *mut _zval_struct) -> *mut _zval_struct>§write_property: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zend_string, _: *mut _zval_struct, _: *mut *mut c_void) -> *mut _zval_struct>§read_dimension: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zval_struct, _: i32, _: *mut _zval_struct) -> *mut _zval_struct>§write_dimension: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zval_struct, _: *mut _zval_struct)>§get_property_ptr_ptr: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zend_string, _: i32, _: *mut *mut c_void) -> *mut _zval_struct>§has_property: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zend_string, _: i32, _: *mut *mut c_void) -> i32>§unset_property: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zend_string, _: *mut *mut c_void)>§has_dimension: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zval_struct, _: i32) -> i32>§unset_dimension: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zval_struct)>§get_properties: Option<unsafe extern "C" fn(_: *mut _zend_object) -> *mut _zend_array>§get_method: Option<unsafe extern "C" fn(_: *mut *mut _zend_object, _: *mut _zend_string, _: *const _zval_struct) -> *mut _zend_function>§get_constructor: Option<unsafe extern "C" fn(_: *mut _zend_object) -> *mut _zend_function>§get_class_name: Option<unsafe extern "C" fn(_: *const _zend_object) -> *mut _zend_string>§cast_object: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut _zval_struct, _: i32) -> i32>§count_elements: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut i64) -> i32>§get_debug_info: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut i32) -> *mut _zend_array>§get_closure: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut *mut _zend_class_entry, _: *mut *mut _zend_function, _: *mut *mut _zend_object, _: bool) -> i32>§get_gc: Option<unsafe extern "C" fn(_: *mut _zend_object, _: *mut *mut _zval_struct, _: *mut i32) -> *mut _zend_array>§do_operation: Option<unsafe extern "C" fn(_: u8, _: *mut _zval_struct, _: *mut _zval_struct, _: *mut _zval_struct) -> i32>§compare: Option<unsafe extern "C" fn(_: *mut _zval_struct, _: *mut _zval_struct) -> i32>§get_properties_for: Option<unsafe extern "C" fn(_: *mut _zend_object, _: u32) -> *mut _zend_array>Implementations§
source§impl ZendObjectHandlers
impl ZendObjectHandlers
sourcepub fn new<T: RegisteredClass>() -> ZendObjectHandlers
pub fn new<T: RegisteredClass>() -> ZendObjectHandlers
Creates a new set of object handlers based on the standard object handlers.
sourcepub unsafe fn init<T: RegisteredClass>(ptr: *mut ZendObjectHandlers)
pub unsafe fn init<T: RegisteredClass>(ptr: *mut ZendObjectHandlers)
Initializes a given set of object handlers by copying the standard
object handlers into the memory location, as well as setting up the
T type destructor.
Parameters
ptr- Pointer to memory location to copy the standard handlers to.
Safety
Caller must guarantee that the ptr given is a valid memory location.