Struct p8n_types::BasicBlock
source · pub struct BasicBlock {
pub uuid: Uuid,
pub mnemonics: Range<MnemonicIndex>,
pub node: NodeIndex,
pub area: Area,
pub statements: Range<usize>,
}Expand description
An uninterrupted sequence of machine code. Basic blocks cover a continuous address range.
Fields
uuid: UuidFixed UUID of this basic block. Never changes.
mnemonics: Range<MnemonicIndex>Range of indices into the functions mnmonic list.
node: NodeIndexNode this basic block occupies in the functions control flow graph.
area: AreaBytes covered byte the basic block.
statements: Range<usize>Range of indices into the functions IL statement list.
Implementations
sourceimpl BasicBlock
impl BasicBlock
Trait Implementations
sourceimpl Clone for BasicBlock
impl Clone for BasicBlock
sourcefn clone(&self) -> BasicBlock
fn clone(&self) -> BasicBlock
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moresourceimpl Debug for BasicBlock
impl Debug for BasicBlock
sourceimpl<'a> IntoStatementRange for &'a BasicBlock
impl<'a> IntoStatementRange for &'a BasicBlock
sourcefn into_statement_range(self, _: &Function) -> Range<usize>
fn into_statement_range(self, _: &Function) -> Range<usize>
Converts Self into a range of statements for function
func.sourceimpl PartialEq<BasicBlock> for BasicBlock
impl PartialEq<BasicBlock> for BasicBlock
sourcefn eq(&self, other: &BasicBlock) -> bool
fn eq(&self, other: &BasicBlock) -> bool
impl Eq for BasicBlock
impl StructuralEq for BasicBlock
impl StructuralPartialEq for BasicBlock
Auto Trait Implementations
impl RefUnwindSafe for BasicBlock
impl Send for BasicBlock
impl Sync for BasicBlock
impl Unpin for BasicBlock
impl UnwindSafe for BasicBlock
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
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
sourceimpl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.