Enum p8n_types::Statements
source · Expand description
A possibly compressed IL sequence.
Variants
Bitcode(Bitcode)
Compressed binary encoding for IL statements.
Vector(Vec<Statement>)
Uncompressed statement vector for processing.
Implementations
sourceimpl Statements
impl Statements
sourcepub fn iter_range<'a>(&'a self, rgn: Range<usize>) -> StatementsIter<'a>
pub fn iter_range<'a>(&'a self, rgn: Range<usize>) -> StatementsIter<'a>
Creates an iterator over IL statements inside rgn.
sourcepub fn rewrite<F: FnMut(&mut Statement, &mut Names, &mut Strings, &mut Segments) -> Result<RewriteControl> + Sized>(
&mut self,
rgn: Range<usize>,
names: &mut Names,
strings: &mut Strings,
segments: &mut Segments,
f: F
) -> Result<Range<usize>>
pub fn rewrite<F: FnMut(&mut Statement, &mut Names, &mut Strings, &mut Segments) -> Result<RewriteControl> + Sized>(
&mut self,
rgn: Range<usize>,
names: &mut Names,
strings: &mut Strings,
segments: &mut Segments,
f: F
) -> Result<Range<usize>>
Mutate all IL statements in rgn using f.
sourcepub fn insert(
&mut self,
pos: usize,
stmts: Vec<Statement>
) -> Result<Range<usize>>
pub fn insert(
&mut self,
pos: usize,
stmts: Vec<Statement>
) -> Result<Range<usize>>
Inserts IL statements stmts at position pos.
sourcepub fn append<I: IntoIterator<Item = Statement> + Sized>(
&mut self,
i: I
) -> Result<Range<usize>>
pub fn append<I: IntoIterator<Item = Statement> + Sized>(
&mut self,
i: I
) -> Result<Range<usize>>
Appends all IL statements in i to the instance.
Trait Implementations
sourceimpl Clone for Statements
impl Clone for Statements
sourcefn clone(&self) -> Statements
fn clone(&self) -> Statements
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 Statements
impl Debug for Statements
sourceimpl Default for Statements
impl Default for Statements
sourcefn default() -> Statements
fn default() -> Statements
Returns the “default value” for a type. Read more
Auto Trait Implementations
impl RefUnwindSafe for Statements
impl Send for Statements
impl Sync for Statements
impl Unpin for Statements
impl UnwindSafe for Statements
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