pub struct ModuleView<'ctx, 'str> { /* private fields */ }Expand description
Whole-module immutable provider.
Implementations§
Trait Implementations§
Source§impl<'ctx, 'str> Clone for ModuleView<'ctx, 'str>
impl<'ctx, 'str> Clone for ModuleView<'ctx, 'str>
Source§fn clone(&self) -> ModuleView<'ctx, 'str>
fn clone(&self) -> ModuleView<'ctx, 'str>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl<'ctx, 'str> Copy for ModuleView<'ctx, 'str>
Source§impl<'ctx, 'str: 'ctx> QCodeView<'ctx, 'str> for ModuleView<'ctx, 'str>
impl<'ctx, 'str: 'ctx> QCodeView<'ctx, 'str> for ModuleView<'ctx, 'str>
fn interface(self, id: FunctionId) -> &'ctx FunctionInterface<'str>
fn function(self, id: FunctionId) -> &'ctx FunctionBody<'str>
Source§fn owner(self) -> Option<FunctionId>
fn owner(self) -> Option<FunctionId>
The single function this view is scoped to, if any. A whole-module view
returns
None (it may read every function); a function-pass BodyView
returns its owner, so callers can avoid a cross-function read that the
locality guard would panic on (e.g. rendering a foreign SymbolicRef::Block
falls back to the numeric form instead of resolving its name).fn instruction(self, id: InstructionId) -> &'ctx Instruction<'str>
fn contains_instruction(self, id: InstructionId) -> bool
fn block(self, id: BlockId) -> &'ctx BasicBlock<'str>
fn contains_block(self, id: BlockId) -> bool
fn block_param(self, id: BlockParamId) -> &'ctx BlockParam<'str>
fn contains_block_param(self, id: BlockParamId) -> bool
fn edge(self, function: FunctionId, id: EdgeId) -> &'ctx EdgeData
fn temp_space(self, id: TempSpaceId) -> &'ctx TempSpace
fn contains_temp_space(self, id: TempSpaceId) -> bool
fn temp(self, id: TempId) -> &'ctx Temp<'str>
fn contains_temp(self, id: TempId) -> bool
fn type_of(self, id: ValueId) -> TypeId
fn stored_type_of(self, id: ValueId) -> Option<TypeId>
fn block_ref(self, id: BlockId) -> BlockRef<'str, 'ctx, Self>where
Self: Sized,
fn insn_ref(self, id: InstructionId) -> InstructionRef<'str, 'ctx, Self>where
Self: Sized,
fn param_ref(self, id: BlockParamId) -> BlockParamRef<'str, 'ctx, Self>where
Self: Sized,
fn function_ref(self, id: FunctionId) -> FunctionRef<'str, 'ctx, Self>where
Self: Sized,
fn temp_space_ref(self, id: TempSpaceId) -> TempSpaceRef<'str, 'ctx, Self>where
Self: Sized,
fn temp_ref(self, id: TempId) -> TempRef<'str, 'ctx, Self>where
Self: Sized,
Auto Trait Implementations§
impl<'ctx, 'str> Freeze for ModuleView<'ctx, 'str>
impl<'ctx, 'str> RefUnwindSafe for ModuleView<'ctx, 'str>
impl<'ctx, 'str> Send for ModuleView<'ctx, 'str>
impl<'ctx, 'str> Sync for ModuleView<'ctx, 'str>
impl<'ctx, 'str> Unpin for ModuleView<'ctx, 'str>
impl<'ctx, 'str> UnsafeUnpin for ModuleView<'ctx, 'str>
impl<'ctx, 'str> UnwindSafe for ModuleView<'ctx, 'str>
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