pub trait KluData:
Sealed
+ Copy
+ PartialEq
+ Debug
+ Default
+ Mul
+ Sub
+ Add
+ AddAssign
+ Div
+ ComplexFloat<Real = f64>
+ 'static {
// Required methods
unsafe fn klu_solve<I: KluIndex>(
symbolic: *mut I::KluSymbolic,
numeric: *mut I::KluNumeric,
rhs_dimension: I,
number_rhs: I,
rhs_data: *mut Self,
common: *mut I::KluCommon,
) -> bool;
unsafe fn klu_tsolve<I: KluIndex>(
symbolic: *mut I::KluSymbolic,
numeric: *mut I::KluNumeric,
rhs_dimension: I,
number_rhs: I,
rhs_data: *mut Self,
common: *mut I::KluCommon,
) -> bool;
unsafe fn klu_factor<I: KluIndex>(
colum_offsets: *const I,
row_indices: *const I,
data: *mut Self,
symbolic: *mut I::KluSymbolic,
common: *mut I::KluCommon,
) -> *mut I::KluNumeric;
unsafe fn klu_refactor<I: KluIndex>(
colum_offsets: *const I,
row_indices: *const I,
data: *mut Self,
symbolic: *mut I::KluSymbolic,
numeric: *mut I::KluNumeric,
common: *mut I::KluCommon,
) -> bool;
unsafe fn klu_free_numeric<I: KluIndex>(
numeric: *mut *mut I::KluNumeric,
common: *mut I::KluCommon,
);
unsafe fn klu_rcond<I: KluIndex>(
symbolic: *mut I::KluSymbolic,
numeric: *mut I::KluNumeric,
common: *mut I::KluCommon,
) -> bool;
}Expand description
Values that can be used by the KLU solver. The functions of this trait are all unsafe because they directly call the underlying C implementation.
Required Methods§
unsafe fn klu_solve<I: KluIndex>( symbolic: *mut I::KluSymbolic, numeric: *mut I::KluNumeric, rhs_dimension: I, number_rhs: I, rhs_data: *mut Self, common: *mut I::KluCommon, ) -> bool
unsafe fn klu_tsolve<I: KluIndex>( symbolic: *mut I::KluSymbolic, numeric: *mut I::KluNumeric, rhs_dimension: I, number_rhs: I, rhs_data: *mut Self, common: *mut I::KluCommon, ) -> bool
unsafe fn klu_factor<I: KluIndex>( colum_offsets: *const I, row_indices: *const I, data: *mut Self, symbolic: *mut I::KluSymbolic, common: *mut I::KluCommon, ) -> *mut I::KluNumeric
unsafe fn klu_refactor<I: KluIndex>( colum_offsets: *const I, row_indices: *const I, data: *mut Self, symbolic: *mut I::KluSymbolic, numeric: *mut I::KluNumeric, common: *mut I::KluCommon, ) -> bool
unsafe fn klu_free_numeric<I: KluIndex>( numeric: *mut *mut I::KluNumeric, common: *mut I::KluCommon, )
unsafe fn klu_rcond<I: KluIndex>( symbolic: *mut I::KluSymbolic, numeric: *mut I::KluNumeric, common: *mut I::KluCommon, ) -> bool
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.