#[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§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.