pub struct Symbols {
pub functions: HashMap<String, FunctionId>,
pub blocks: HashMap<String, BlockId>,
pub ssa: HashMap<String, InstructionId>,
pub varnodes: HashMap<String, VarnodeId>,
pub temps: HashMap<String, TempId>,
pub block_params: HashMap<String, BlockParamId>,
}Expand description
Names produced while lowering a program, so callers can recover the ids by the identifier that appeared in the source. Block/param/ssa/varnode names are last-write-wins across functions, matching the macro’s shared-name behavior.
Fields§
§functions: HashMap<String, FunctionId>§blocks: HashMap<String, BlockId>§ssa: HashMap<String, InstructionId>§varnodes: HashMap<String, VarnodeId>§temps: HashMap<String, TempId>§block_params: HashMap<String, BlockParamId>Implementations§
Source§impl Symbols
impl Symbols
pub fn function(&self, name: &str) -> FunctionId
pub fn block(&self, name: &str) -> BlockId
pub fn ssa(&self, name: &str) -> InstructionId
pub fn varnode(&self, name: &str) -> VarnodeId
pub fn temp(&self, name: &str) -> TempId
pub fn block_param(&self, name: &str) -> BlockParamId
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Symbols
impl RefUnwindSafe for Symbols
impl Send for Symbols
impl Sync for Symbols
impl Unpin for Symbols
impl UnsafeUnpin for Symbols
impl UnwindSafe for Symbols
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