Struct Mat

Source
pub struct Mat {
    pub ptr: uintptr_t,
    pub should_free_on_drop: bool,
}
Expand description

Wraps isl_mat.

Fields§

§ptr: uintptr_t§should_free_on_drop: bool

Implementations§

Source§

impl Mat

Source

pub fn drop_cols(self, col: u32, n: u32) -> Mat

Wraps isl_mat_drop_cols.

Source

pub fn col_add(&self, dst_col: i32, src_col: i32)

Wraps isl_mat_col_add.

Source

pub fn concat(self, bot: Mat) -> Mat

Wraps isl_mat_concat.

Source

pub fn rows(&self) -> i32

Wraps isl_mat_rows.

Source

pub fn right_kernel(self) -> Mat

Wraps isl_mat_right_kernel.

Source

pub fn drop_rows(self, row: u32, n: u32) -> Mat

Wraps isl_mat_drop_rows.

Source

pub fn cols(&self) -> i32

Wraps isl_mat_cols.

Source

pub fn get_ctx(&self) -> Context

Wraps isl_mat_get_ctx.

Source

pub fn swap_rows(self, i: u32, j: u32) -> Mat

Wraps isl_mat_swap_rows.

Source

pub fn transpose(self) -> Mat

Wraps isl_mat_transpose.

Source

pub fn move_cols(self, dst_col: u32, src_col: u32, n: u32) -> Mat

Wraps isl_mat_move_cols.

Source

pub fn diagonal(self, mat2: Mat) -> Mat

Wraps isl_mat_diagonal.

Source

pub fn normalize(self) -> Mat

Wraps isl_mat_normalize.

Source

pub fn row_basis(self) -> Mat

Wraps isl_mat_row_basis.

Source

pub fn extend(self, n_row: u32, n_col: u32) -> Mat

Wraps isl_mat_extend.

Source

pub fn add_zero_rows(self, n: u32) -> Mat

Wraps isl_mat_add_zero_rows.

Source

pub fn insert_zero_cols(self, first: u32, n: u32) -> Mat

Wraps isl_mat_insert_zero_cols.

Source

pub fn swap_cols(self, i: u32, j: u32) -> Mat

Wraps isl_mat_swap_cols.

Source

pub fn lin_to_aff(self) -> Mat

Wraps isl_mat_lin_to_aff.

Source

pub fn unimodular_complete(self, row: i32) -> Mat

Wraps isl_mat_unimodular_complete.

Source

pub fn insert_cols(self, col: u32, n: u32) -> Mat

Wraps isl_mat_insert_cols.

Source

pub fn add_zero_cols(self, n: u32) -> Mat

Wraps isl_mat_add_zero_cols.

Source

pub fn vec_product(self, vec: Vec) -> Vec

Wraps isl_mat_vec_product.

Source

pub fn vec_inverse_product(self, vec: Vec) -> Vec

Wraps isl_mat_vec_inverse_product.

Source

pub fn from_row_vec(vec: Vec) -> Mat

Wraps isl_mat_from_row_vec.

Source

pub fn get_element_val(&self, row: i32, col: i32) -> Val

Wraps isl_mat_get_element_val.

Source

pub fn initial_non_zero_cols(&self) -> i32

Wraps isl_mat_initial_non_zero_cols.

Source

pub fn insert_rows(self, row: u32, n: u32) -> Mat

Wraps isl_mat_insert_rows.

Source

pub fn inverse_product(self, right: Mat) -> Mat

Wraps isl_mat_inverse_product.

Source

pub fn copy(&self) -> Mat

Wraps isl_mat_copy.

Source

pub fn identity(ctx: &Context, n_row: u32) -> Mat

Wraps isl_mat_identity.

Source

pub fn row_basis_extension(self, mat2: Mat) -> Mat

Wraps isl_mat_row_basis_extension.

Source

pub fn is_equal(&self, mat2: &Mat) -> bool

Wraps isl_mat_is_equal.

Source

pub fn product(self, right: Mat) -> Mat

Wraps isl_mat_product.

Source

pub fn vec_concat(self, bot: Vec) -> Mat

Wraps isl_mat_vec_concat.

Source

pub fn aff_direct_sum(self, right: Mat) -> Mat

Wraps isl_mat_aff_direct_sum.

Source

pub fn set_element_val(self, row: i32, col: i32, v: Val) -> Mat

Wraps isl_mat_set_element_val.

Source

pub fn insert_zero_rows(self, row: u32, n: u32) -> Mat

Wraps isl_mat_insert_zero_rows.

Source

pub fn free(self) -> Mat

Wraps isl_mat_free.

Source

pub fn normalize_row(self, row: i32) -> Mat

Wraps isl_mat_normalize_row.

Source

pub fn right_inverse(self) -> Mat

Wraps isl_mat_right_inverse.

Source

pub fn alloc(ctx: &Context, n_row: u32, n_col: u32) -> Mat

Wraps isl_mat_alloc.

Source

pub fn add_rows(self, n: u32) -> Mat

Wraps isl_mat_add_rows.

Source

pub fn has_linearly_independent_rows(&self, mat2: &Mat) -> bool

Wraps isl_mat_has_linearly_independent_rows.

Source

pub fn rank(&self) -> i32

Wraps isl_mat_rank.

Source

pub fn set_element_si(self, row: i32, col: i32, v: i32) -> Mat

Wraps isl_mat_set_element_si.

Source

pub fn dump(&self)

Wraps isl_mat_dump.

Source

pub fn do_not_free_on_drop(&mut self)

Does not call isl_mat_free() on being dropped. (For internal use only.)

Trait Implementations§

Source§

impl Drop for Mat

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementations§

§

impl Freeze for Mat

§

impl RefUnwindSafe for Mat

§

impl Send for Mat

§

impl Sync for Mat

§

impl Unpin for Mat

§

impl UnwindSafe for Mat

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.