Struct mlir_sys::MlirExternalPassCallbacks
source · #[repr(C)]pub struct MlirExternalPassCallbacks {
pub construct: Option<unsafe extern "C" fn(userData: *mut c_void)>,
pub destruct: Option<unsafe extern "C" fn(userData: *mut c_void)>,
pub initialize: Option<unsafe extern "C" fn(ctx: MlirContext, userData: *mut c_void) -> MlirLogicalResult>,
pub clone: Option<unsafe extern "C" fn(userData: *mut c_void) -> *mut c_void>,
pub run: Option<unsafe extern "C" fn(op: MlirOperation, pass: MlirExternalPass, userData: *mut c_void)>,
}
Expand description
Structure of external MlirPass
callbacks.
All callbacks are required to be set unless otherwise specified.
Fields§
§construct: Option<unsafe extern "C" fn(userData: *mut c_void)>
This callback is called from the pass is created. This is analogous to a C++ pass constructor.
destruct: Option<unsafe extern "C" fn(userData: *mut c_void)>
This callback is called when the pass is destroyed This is analogous to a C++ pass destructor.
initialize: Option<unsafe extern "C" fn(ctx: MlirContext, userData: *mut c_void) -> MlirLogicalResult>
This callback is optional. The callback is called before the pass is run, allowing a chance to initialize any complex state necessary for running the pass. See Pass::initialize(MLIRContext *).
clone: Option<unsafe extern "C" fn(userData: *mut c_void) -> *mut c_void>
This callback is called when the pass is cloned. See Pass::clonePass().
run: Option<unsafe extern "C" fn(op: MlirOperation, pass: MlirExternalPass, userData: *mut c_void)>
This callback is called when the pass is run. See Pass::runOnOperation().
Trait Implementations§
source§impl Clone for MlirExternalPassCallbacks
impl Clone for MlirExternalPassCallbacks
source§fn clone(&self) -> MlirExternalPassCallbacks
fn clone(&self) -> MlirExternalPassCallbacks
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for MlirExternalPassCallbacks
impl Debug for MlirExternalPassCallbacks
impl Copy for MlirExternalPassCallbacks
Auto Trait Implementations§
impl RefUnwindSafe for MlirExternalPassCallbacks
impl Send for MlirExternalPassCallbacks
impl Sync for MlirExternalPassCallbacks
impl Unpin for MlirExternalPassCallbacks
impl UnwindSafe for MlirExternalPassCallbacks
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more