pub struct MirCode {
pub strings: IndexVec<StrId, CString>,
pub functions: IndexVec<FuncId, Function>,
pub statics: IndexVec<StaticId, Static>,
pub extern_mods: HashMap<ExternModId, ExternMod>,
pub enums: HashMap<EnumId, EnumLayout>,
pub source_ranges: HashMap<OpId, SourceRange>,
pub instr_names: HashMap<OpId, String>,
/* private fields */
}
Fields
strings: IndexVec<StrId, CString>
functions: IndexVec<FuncId, Function>
statics: IndexVec<StaticId, Static>
extern_mods: HashMap<ExternModId, ExternMod>
enums: HashMap<EnumId, EnumLayout>
source_ranges: HashMap<OpId, SourceRange>
instr_names: HashMap<OpId, String>
Implementations
sourceimpl MirCode
impl MirCode
pub fn new() -> Self
pub fn start_block(&mut self, block: BlockId) -> Result<(), StartBlockError>
pub fn end_block(&mut self, block: BlockId) -> Result<(), EndBlockError>
pub fn first_unended_block(&self, func: &Function) -> Option<BlockId>
pub fn check_all_blocks_ended(&self, func: &Function)
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for MirCode
impl Send for MirCode
impl Sync for MirCode
impl Unpin for MirCode
impl UnwindSafe for MirCode
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more