pub struct MirContext {
pub functions: IndexMap<FunctionId, FunctionMIR>,
pub structs: Vec<Struct>,
pub enums: Vec<Enum>,
pub consts: Vec<Const>,
pub statics: Vec<Static>,
pub extern_fns: Vec<Function>,
pub traits: Vec<Trait>,
pub impls: Vec<Impl>,
pub type_aliases: HashMap<String, Ty>,
}Expand description
MIR context - holds all MIR for a compilation unit
Fields§
§functions: IndexMap<FunctionId, FunctionMIR>All functions
structs: Vec<Struct>Struct definitions
enums: Vec<Enum>Enum definitions
consts: Vec<Const>Constant definitions
statics: Vec<Static>Static variable definitions
extern_fns: Vec<Function>Extern function declarations
traits: Vec<Trait>Trait definitions
impls: Vec<Impl>Impl blocks
type_aliases: HashMap<String, Ty>Type aliases (name → resolved HIR type)
Implementations§
Source§impl MirContext
impl MirContext
Sourcepub fn add_function(&mut self, func: FunctionMIR) -> FunctionId
pub fn add_function(&mut self, func: FunctionMIR) -> FunctionId
Add a function to the context
Sourcepub fn get_function(&self, id: FunctionId) -> Option<&FunctionMIR>
pub fn get_function(&self, id: FunctionId) -> Option<&FunctionMIR>
Get a function by ID
Sourcepub fn get_function_mut(&mut self, id: FunctionId) -> Option<&mut FunctionMIR>
pub fn get_function_mut(&mut self, id: FunctionId) -> Option<&mut FunctionMIR>
Get a mutable function by ID
Trait Implementations§
Source§impl Clone for MirContext
impl Clone for MirContext
Source§fn clone(&self) -> MirContext
fn clone(&self) -> MirContext
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for MirContext
impl Debug for MirContext
Auto Trait Implementations§
impl Freeze for MirContext
impl RefUnwindSafe for MirContext
impl Send for MirContext
impl Sync for MirContext
impl Unpin for MirContext
impl UnwindSafe for MirContext
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