cairo_lang_semantic::expr::inference::conform

Trait InferenceConform

source
pub trait InferenceConform {
Show 13 methods // Required methods fn conform_ty( &mut self, ty0: TypeId, ty1: TypeId, ) -> InferenceResult<TypeId>; fn conform_ty_ex( &mut self, ty0: TypeId, ty1: TypeId, ty0_is_self: bool, ) -> InferenceResult<(TypeId, usize)>; fn conform_const( &mut self, ty0: ConstValueId, ty1: ConstValueId, ) -> InferenceResult<ConstValueId>; fn maybe_peel_snapshots( &mut self, ty0_is_self: bool, ty1: TypeId, ) -> (usize, TypeLongId); fn conform_generic_args( &mut self, gargs0: &[GenericArgumentId], gargs1: &[GenericArgumentId], ) -> InferenceResult<Vec<GenericArgumentId>>; fn conform_generic_arg( &mut self, garg0: GenericArgumentId, garg1: GenericArgumentId, ) -> InferenceResult<GenericArgumentId>; fn conform_impl( &mut self, impl0: ImplId, impl1: ImplId, ) -> InferenceResult<ImplId>; fn conform_traits( &mut self, trt0: ConcreteTraitId, trt1: ConcreteTraitId, ) -> InferenceResult<ConcreteTraitId>; fn conform_generic_function( &mut self, trt0: GenericFunctionId, trt1: GenericFunctionId, ) -> InferenceResult<GenericFunctionId>; fn ty_contains_var(&mut self, ty: TypeId, var: InferenceVar) -> bool; fn generic_args_contain_var( &mut self, generic_args: &[GenericArgumentId], var: InferenceVar, ) -> bool; fn impl_contains_var(&mut self, impl_id: ImplId, var: InferenceVar) -> bool; fn function_contains_var( &mut self, function_id: FunctionId, var: InferenceVar, ) -> bool;
}
Expand description

Functions for conforming semantic objects with each other.

Required Methods§

Implementors§