Struct Map

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

Wraps isl_map.

Fields§

§ptr: uintptr_t§should_free_on_drop: bool

Implementations§

Source§

impl Map

Source

pub fn domain_tuple_dim(&self) -> i32

Wraps isl_map_domain_tuple_dim.

Source

pub fn range_tuple_dim(&self) -> i32

Wraps isl_map_range_tuple_dim.

Source

pub fn dim(&self, type_: DimType) -> i32

Wraps isl_map_dim.

Source

pub fn get_ctx(&self) -> Context

Wraps isl_map_get_ctx.

Source

pub fn get_space(&self) -> Space

Wraps isl_map_get_space.

Source

pub fn has_tuple_name(&self, type_: DimType) -> bool

Wraps isl_map_has_tuple_name.

Source

pub fn get_tuple_name(&self, type_: DimType) -> &str

Wraps isl_map_get_tuple_name.

Source

pub fn set_tuple_name(self, type_: DimType, s: &str) -> Map

Wraps isl_map_set_tuple_name.

Source

pub fn has_dim_name(&self, type_: DimType, pos: u32) -> bool

Wraps isl_map_has_dim_name.

Source

pub fn get_dim_name(&self, type_: DimType, pos: u32) -> &str

Wraps isl_map_get_dim_name.

Source

pub fn set_dim_name(self, type_: DimType, pos: u32, s: &str) -> Map

Wraps isl_map_set_dim_name.

Source

pub fn set_dim_id(self, type_: DimType, pos: u32, id: Id) -> Map

Wraps isl_map_set_dim_id.

Source

pub fn has_dim_id(&self, type_: DimType, pos: u32) -> bool

Wraps isl_map_has_dim_id.

Source

pub fn get_dim_id(&self, type_: DimType, pos: u32) -> Id

Wraps isl_map_get_dim_id.

Source

pub fn set_domain_tuple_id(self, id: Id) -> Map

Wraps isl_map_set_domain_tuple_id.

Source

pub fn set_range_tuple_id(self, id: Id) -> Map

Wraps isl_map_set_range_tuple_id.

Source

pub fn set_tuple_id(self, type_: DimType, id: Id) -> Map

Wraps isl_map_set_tuple_id.

Source

pub fn reset_tuple_id(self, type_: DimType) -> Map

Wraps isl_map_reset_tuple_id.

Source

pub fn has_domain_tuple_id(&self) -> bool

Wraps isl_map_has_domain_tuple_id.

Source

pub fn has_range_tuple_id(&self) -> bool

Wraps isl_map_has_range_tuple_id.

Source

pub fn has_tuple_id(&self, type_: DimType) -> bool

Wraps isl_map_has_tuple_id.

Source

pub fn get_domain_tuple_id(&self) -> Id

Wraps isl_map_get_domain_tuple_id.

Source

pub fn get_range_tuple_id(&self) -> Id

Wraps isl_map_get_range_tuple_id.

Source

pub fn get_tuple_id(&self, type_: DimType) -> Id

Wraps isl_map_get_tuple_id.

Source

pub fn reset_user(self) -> Map

Wraps isl_map_reset_user.

Source

pub fn find_dim_by_id(&self, type_: DimType, id: &Id) -> i32

Wraps isl_map_find_dim_by_id.

Source

pub fn find_dim_by_name(&self, type_: DimType, name: &str) -> i32

Wraps isl_map_find_dim_by_name.

Source

pub fn remove_redundancies(self) -> Map

Wraps isl_map_remove_redundancies.

Source

pub fn simple_hull(self) -> BasicMap

Wraps isl_map_simple_hull.

Source

pub fn unshifted_simple_hull(self) -> BasicMap

Wraps isl_map_unshifted_simple_hull.

Source

pub fn plain_unshifted_simple_hull(self) -> BasicMap

Wraps isl_map_plain_unshifted_simple_hull.

Source

pub fn read_from_str(ctx: &Context, str_: &str) -> Map

Wraps isl_map_read_from_str.

Source

pub fn dump(&self)

Wraps isl_map_dump.

Source

pub fn to_str(&self) -> &str

Wraps isl_map_to_str.

Source

pub fn sum(self, map2: Map) -> Map

Wraps isl_map_sum.

Source

pub fn neg(self) -> Map

Wraps isl_map_neg.

Source

pub fn floordiv_val(self, d: Val) -> Map

Wraps isl_map_floordiv_val.

Source

pub fn lexmin(self) -> Map

Wraps isl_map_lexmin.

Source

pub fn lexmax(self) -> Map

Wraps isl_map_lexmax.

Source

pub fn universe(space: Space) -> Map

Wraps isl_map_universe.

Source

pub fn nat_universe(space: Space) -> Map

Wraps isl_map_nat_universe.

Source

pub fn empty(space: Space) -> Map

Wraps isl_map_empty.

Source

pub fn identity(space: Space) -> Map

Wraps isl_map_identity.

Source

pub fn lex_lt_first(space: Space, n: u32) -> Map

Wraps isl_map_lex_lt_first.

Source

pub fn lex_le_first(space: Space, n: u32) -> Map

Wraps isl_map_lex_le_first.

Source

pub fn lex_lt(set_space: Space) -> Map

Wraps isl_map_lex_lt.

Source

pub fn lex_le(set_space: Space) -> Map

Wraps isl_map_lex_le.

Source

pub fn lex_gt_first(space: Space, n: u32) -> Map

Wraps isl_map_lex_gt_first.

Source

pub fn lex_ge_first(space: Space, n: u32) -> Map

Wraps isl_map_lex_ge_first.

Source

pub fn lex_gt(set_space: Space) -> Map

Wraps isl_map_lex_gt.

Source

pub fn lex_ge(set_space: Space) -> Map

Wraps isl_map_lex_ge.

Source

pub fn free(self) -> Map

Wraps isl_map_free.

Source

pub fn copy(&self) -> Map

Wraps isl_map_copy.

Source

pub fn reverse(self) -> Map

Wraps isl_map_reverse.

Source

pub fn domain_reverse(self) -> Map

Wraps isl_map_domain_reverse.

Source

pub fn range_reverse(self) -> Map

Wraps isl_map_range_reverse.

Source

pub fn union(self, map2: Map) -> Map

Wraps isl_map_union.

Source

pub fn union_disjoint(self, map2: Map) -> Map

Wraps isl_map_union_disjoint.

Source

pub fn intersect_domain(self, set: Set) -> Map

Wraps isl_map_intersect_domain.

Source

pub fn intersect_range(self, set: Set) -> Map

Wraps isl_map_intersect_range.

Source

pub fn intersect_domain_factor_domain(self, factor: Map) -> Map

Wraps isl_map_intersect_domain_factor_domain.

Source

pub fn intersect_domain_factor_range(self, factor: Map) -> Map

Wraps isl_map_intersect_domain_factor_range.

Source

pub fn intersect_range_factor_domain(self, factor: Map) -> Map

Wraps isl_map_intersect_range_factor_domain.

Source

pub fn intersect_range_factor_range(self, factor: Map) -> Map

Wraps isl_map_intersect_range_factor_range.

Source

pub fn intersect_domain_wrapped_domain(self, domain: Set) -> Map

Wraps isl_map_intersect_domain_wrapped_domain.

Source

pub fn intersect_range_wrapped_domain(self, domain: Set) -> Map

Wraps isl_map_intersect_range_wrapped_domain.

Source

pub fn apply_domain(self, map2: Map) -> Map

Wraps isl_map_apply_domain.

Source

pub fn apply_range(self, map2: Map) -> Map

Wraps isl_map_apply_range.

Source

pub fn product(self, map2: Map) -> Map

Wraps isl_map_product.

Source

pub fn domain_product(self, map2: Map) -> Map

Wraps isl_map_domain_product.

Source

pub fn range_product(self, map2: Map) -> Map

Wraps isl_map_range_product.

Source

pub fn flat_product(self, map2: Map) -> Map

Wraps isl_map_flat_product.

Source

pub fn flat_domain_product(self, map2: Map) -> Map

Wraps isl_map_flat_domain_product.

Source

pub fn flat_range_product(self, map2: Map) -> Map

Wraps isl_map_flat_range_product.

Source

pub fn domain_is_wrapping(&self) -> bool

Wraps isl_map_domain_is_wrapping.

Source

pub fn range_is_wrapping(&self) -> bool

Wraps isl_map_range_is_wrapping.

Source

pub fn is_product(&self) -> bool

Wraps isl_map_is_product.

Source

pub fn factor_domain(self) -> Map

Wraps isl_map_factor_domain.

Source

pub fn factor_range(self) -> Map

Wraps isl_map_factor_range.

Source

pub fn domain_factor_domain(self) -> Map

Wraps isl_map_domain_factor_domain.

Source

pub fn domain_factor_range(self) -> Map

Wraps isl_map_domain_factor_range.

Source

pub fn range_factor_domain(self) -> Map

Wraps isl_map_range_factor_domain.

Source

pub fn range_factor_range(self) -> Map

Wraps isl_map_range_factor_range.

Source

pub fn intersect(self, map2: Map) -> Map

Wraps isl_map_intersect.

Source

pub fn intersect_params(self, params: Set) -> Map

Wraps isl_map_intersect_params.

Source

pub fn subtract(self, map2: Map) -> Map

Wraps isl_map_subtract.

Source

pub fn subtract_domain(self, dom: Set) -> Map

Wraps isl_map_subtract_domain.

Source

pub fn subtract_range(self, dom: Set) -> Map

Wraps isl_map_subtract_range.

Source

pub fn complement(self) -> Map

Wraps isl_map_complement.

Source

pub fn fix_input_si(self, input: u32, value: i32) -> Map

Wraps isl_map_fix_input_si.

Source

pub fn fix_si(self, type_: DimType, pos: u32, value: i32) -> Map

Wraps isl_map_fix_si.

Source

pub fn fix_val(self, type_: DimType, pos: u32, v: Val) -> Map

Wraps isl_map_fix_val.

Source

pub fn lower_bound_si(self, type_: DimType, pos: u32, value: i32) -> Map

Wraps isl_map_lower_bound_si.

Source

pub fn lower_bound_val(self, type_: DimType, pos: u32, value: Val) -> Map

Wraps isl_map_lower_bound_val.

Source

pub fn upper_bound_si(self, type_: DimType, pos: u32, value: i32) -> Map

Wraps isl_map_upper_bound_si.

Source

pub fn upper_bound_val(self, type_: DimType, pos: u32, value: Val) -> Map

Wraps isl_map_upper_bound_val.

Source

pub fn deltas(self) -> Set

Wraps isl_map_deltas.

Source

pub fn deltas_map(self) -> Map

Wraps isl_map_deltas_map.

Source

pub fn detect_equalities(self) -> Map

Wraps isl_map_detect_equalities.

Source

pub fn affine_hull(self) -> BasicMap

Wraps isl_map_affine_hull.

Source

pub fn convex_hull(self) -> BasicMap

Wraps isl_map_convex_hull.

Source

pub fn polyhedral_hull(self) -> BasicMap

Wraps isl_map_polyhedral_hull.

Source

pub fn add_dims(self, type_: DimType, n: u32) -> Map

Wraps isl_map_add_dims.

Source

pub fn insert_dims(self, type_: DimType, pos: u32, n: u32) -> Map

Wraps isl_map_insert_dims.

Source

pub fn move_dims( self, dst_type: DimType, dst_pos: u32, src_type: DimType, src_pos: u32, n: u32, ) -> Map

Wraps isl_map_move_dims.

Source

pub fn project_out_param_id(self, id: Id) -> Map

Wraps isl_map_project_out_param_id.

Source

pub fn project_out(self, type_: DimType, first: u32, n: u32) -> Map

Wraps isl_map_project_out.

Source

pub fn project_out_all_params(self) -> Map

Wraps isl_map_project_out_all_params.

Source

pub fn remove_unknown_divs(self) -> Map

Wraps isl_map_remove_unknown_divs.

Source

pub fn remove_divs(self) -> Map

Wraps isl_map_remove_divs.

Source

pub fn eliminate(self, type_: DimType, first: u32, n: u32) -> Map

Wraps isl_map_eliminate.

Source

pub fn remove_dims(self, type_: DimType, first: u32, n: u32) -> Map

Wraps isl_map_remove_dims.

Source

pub fn remove_divs_involving_dims( self, type_: DimType, first: u32, n: u32, ) -> Map

Wraps isl_map_remove_divs_involving_dims.

Source

pub fn remove_inputs(self, first: u32, n: u32) -> Map

Wraps isl_map_remove_inputs.

Source

pub fn order_ge( self, type1: DimType, pos1: i32, type2: DimType, pos2: i32, ) -> Map

Wraps isl_map_order_ge.

Source

pub fn order_le( self, type1: DimType, pos1: i32, type2: DimType, pos2: i32, ) -> Map

Wraps isl_map_order_le.

Source

pub fn equate(self, type1: DimType, pos1: i32, type2: DimType, pos2: i32) -> Map

Wraps isl_map_equate.

Source

pub fn oppose(self, type1: DimType, pos1: i32, type2: DimType, pos2: i32) -> Map

Wraps isl_map_oppose.

Source

pub fn order_lt( self, type1: DimType, pos1: i32, type2: DimType, pos2: i32, ) -> Map

Wraps isl_map_order_lt.

Source

pub fn order_gt( self, type1: DimType, pos1: i32, type2: DimType, pos2: i32, ) -> Map

Wraps isl_map_order_gt.

Source

pub fn wrap(self) -> Set

Wraps isl_map_wrap.

Source

pub fn flatten(self) -> Map

Wraps isl_map_flatten.

Source

pub fn flatten_domain(self) -> Map

Wraps isl_map_flatten_domain.

Source

pub fn flatten_range(self) -> Map

Wraps isl_map_flatten_range.

Source

pub fn params(self) -> Set

Wraps isl_map_params.

Source

pub fn domain(self) -> Set

Wraps isl_map_domain.

Source

pub fn range(self) -> Set

Wraps isl_map_range.

Source

pub fn domain_map(self) -> Map

Wraps isl_map_domain_map.

Source

pub fn range_map(self) -> Map

Wraps isl_map_range_map.

Source

pub fn from_basic_map(bmap: BasicMap) -> Map

Wraps isl_map_from_basic_map.

Source

pub fn from_domain(set: Set) -> Map

Wraps isl_map_from_domain.

Source

pub fn from_range(set: Set) -> Map

Wraps isl_map_from_range.

Source

pub fn from_domain_and_range(domain: Set, range: Set) -> Map

Wraps isl_map_from_domain_and_range.

Source

pub fn sample(self) -> BasicMap

Wraps isl_map_sample.

Source

pub fn plain_is_empty(&self) -> bool

Wraps isl_map_plain_is_empty.

Source

pub fn plain_is_universe(&self) -> bool

Wraps isl_map_plain_is_universe.

Source

pub fn is_empty(&self) -> bool

Wraps isl_map_is_empty.

Source

pub fn is_subset(&self, map2: &Map) -> bool

Wraps isl_map_is_subset.

Source

pub fn is_strict_subset(&self, map2: &Map) -> bool

Wraps isl_map_is_strict_subset.

Source

pub fn is_equal(&self, map2: &Map) -> bool

Wraps isl_map_is_equal.

Source

pub fn is_disjoint(&self, map2: &Map) -> bool

Wraps isl_map_is_disjoint.

Source

pub fn plain_is_single_valued(&self) -> bool

Wraps isl_map_plain_is_single_valued.

Source

pub fn is_single_valued(&self) -> bool

Wraps isl_map_is_single_valued.

Source

pub fn plain_is_injective(&self) -> bool

Wraps isl_map_plain_is_injective.

Source

pub fn is_injective(&self) -> bool

Wraps isl_map_is_injective.

Source

pub fn is_bijective(&self) -> bool

Wraps isl_map_is_bijective.

Source

pub fn is_identity(&self) -> bool

Wraps isl_map_is_identity.

Source

pub fn is_translation(&self) -> i32

Wraps isl_map_is_translation.

Source

pub fn has_equal_space(&self, map2: &Map) -> bool

Wraps isl_map_has_equal_space.

Source

pub fn can_zip(&self) -> bool

Wraps isl_map_can_zip.

Source

pub fn zip(self) -> Map

Wraps isl_map_zip.

Source

pub fn can_curry(&self) -> bool

Wraps isl_map_can_curry.

Source

pub fn curry(self) -> Map

Wraps isl_map_curry.

Source

pub fn can_range_curry(&self) -> bool

Wraps isl_map_can_range_curry.

Source

pub fn range_curry(self) -> Map

Wraps isl_map_range_curry.

Source

pub fn can_uncurry(&self) -> bool

Wraps isl_map_can_uncurry.

Source

pub fn uncurry(self) -> Map

Wraps isl_map_uncurry.

Source

pub fn make_disjoint(self) -> Map

Wraps isl_map_make_disjoint.

Source

pub fn compute_divs(self) -> Map

Wraps isl_map_compute_divs.

Source

pub fn align_divs(self) -> Map

Wraps isl_map_align_divs.

Source

pub fn drop_constraints_involving_dims( self, type_: DimType, first: u32, n: u32, ) -> Map

Wraps isl_map_drop_constraints_involving_dims.

Source

pub fn drop_constraints_not_involving_dims( self, type_: DimType, first: u32, n: u32, ) -> Map

Wraps isl_map_drop_constraints_not_involving_dims.

Source

pub fn involves_dims(&self, type_: DimType, first: u32, n: u32) -> bool

Wraps isl_map_involves_dims.

Source

pub fn plain_get_val_if_fixed(&self, type_: DimType, pos: u32) -> Val

Wraps isl_map_plain_get_val_if_fixed.

Source

pub fn gist(self, context: Map) -> Map

Wraps isl_map_gist.

Source

pub fn gist_domain(self, context: Set) -> Map

Wraps isl_map_gist_domain.

Source

pub fn gist_range(self, context: Set) -> Map

Wraps isl_map_gist_range.

Source

pub fn gist_params(self, context: Set) -> Map

Wraps isl_map_gist_params.

Source

pub fn gist_basic_map(self, context: BasicMap) -> Map

Wraps isl_map_gist_basic_map.

Source

pub fn get_range_stride_info(&self, pos: i32) -> StrideInfo

Wraps isl_map_get_range_stride_info.

Source

pub fn get_range_lattice_tile(&self) -> FixedBox

Wraps isl_map_get_range_lattice_tile.

Source

pub fn get_range_simple_fixed_box_hull(&self) -> FixedBox

Wraps isl_map_get_range_simple_fixed_box_hull.

Source

pub fn coalesce(self) -> Map

Wraps isl_map_coalesce.

Source

pub fn plain_is_equal(&self, map2: &Map) -> bool

Wraps isl_map_plain_is_equal.

Source

pub fn get_hash(&self) -> u32

Wraps isl_map_get_hash.

Source

pub fn n_basic_map(&self) -> i32

Wraps isl_map_n_basic_map.

Source

pub fn fixed_power_val(self, exp: Val) -> Map

Wraps isl_map_fixed_power_val.

Source

pub fn lex_le_map(self, map2: Map) -> Map

Wraps isl_map_lex_le_map.

Source

pub fn lex_lt_map(self, map2: Map) -> Map

Wraps isl_map_lex_lt_map.

Source

pub fn lex_ge_map(self, map2: Map) -> Map

Wraps isl_map_lex_ge_map.

Source

pub fn lex_gt_map(self, map2: Map) -> Map

Wraps isl_map_lex_gt_map.

Source

pub fn align_params(self, model: Space) -> Map

Wraps isl_map_align_params.

Source

pub fn drop_unused_params(self) -> Map

Wraps isl_map_drop_unused_params.

Source

pub fn from_aff(aff: Aff) -> Map

Wraps isl_map_from_aff.

Source

pub fn dim_min(self, pos: i32) -> PwAff

Wraps isl_map_dim_min.

Source

pub fn dim_max(self, pos: i32) -> PwAff

Wraps isl_map_dim_max.

Source

pub fn do_not_free_on_drop(&mut self)

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

Trait Implementations§

Source§

impl Drop for Map

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementations§

§

impl Freeze for Map

§

impl RefUnwindSafe for Map

§

impl Send for Map

§

impl Sync for Map

§

impl Unpin for Map

§

impl UnwindSafe for Map

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.