pub struct MirBuilder { /* private fields */ }Expand description
Builder for constructing MIR from HIR
Implementations§
Source§impl MirBuilder
impl MirBuilder
Sourcepub fn new(id: FunctionId, name: Symbol, return_ty: Ty, span: Span) -> Self
pub fn new(id: FunctionId, name: Symbol, return_ty: Ty, span: Span) -> Self
Create a new MIR builder for a function
Sourcepub fn with_attributes(
id: FunctionId,
name: Symbol,
return_ty: Ty,
attributes: FunctionAttributes,
span: Span,
) -> Self
pub fn with_attributes( id: FunctionId, name: Symbol, return_ty: Ty, attributes: FunctionAttributes, span: Span, ) -> Self
Create a new MIR builder with function attributes
Sourcepub fn build_function(hir_func: &Function) -> (FunctionMIR, Vec<FunctionMIR>)
pub fn build_function(hir_func: &Function) -> (FunctionMIR, Vec<FunctionMIR>)
Build MIR for a HIR function
Sourcepub fn build_function_with_enums(
hir_func: &Function,
variant_index_map: &HashMap<(String, String), u128>,
) -> (FunctionMIR, Vec<FunctionMIR>)
pub fn build_function_with_enums( hir_func: &Function, variant_index_map: &HashMap<(String, String), u128>, ) -> (FunctionMIR, Vec<FunctionMIR>)
Build MIR for a HIR function, with enum variant index map for match lowering. Returns (main_function, closure_functions).
Auto Trait Implementations§
impl Freeze for MirBuilder
impl RefUnwindSafe for MirBuilder
impl Send for MirBuilder
impl Sync for MirBuilder
impl Unpin for MirBuilder
impl UnwindSafe for MirBuilder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more