pub struct JitBuffer { /* private fields */ }Expand description
The staged assembly.
Implementations§
Source§impl JitBuffer
impl JitBuffer
Sourcepub fn mark_patch_hole(&mut self, hole_n: u8)
pub fn mark_patch_hole(&mut self, hole_n: u8)
Append a stencil instance; the returned Label is its address for
continuation holes (including back-edges to earlier pieces).
Mark hole n of the LAST pushed piece for post-finish patching
(the self-call entry slot).
Sourcepub fn pieces_pushed(&self) -> usize
pub fn pieces_pushed(&self) -> usize
How many stencil pieces have been pushed so far (the index the next
push_stencil will occupy). Used to assert PASS-1/PASS-2 agreement.
pub fn push_stencil( &mut self, stencil: &'static Stencil, holes: &[HoleValue], ) -> Label
Sourcepub fn label(&self, index: usize) -> Label
pub fn label(&self, index: usize) -> Label
The label of the piece at index — usable for FORWARD references
(validated when finish runs).
Sourcepub fn finish(self) -> Result<JitChain, BufferError>
pub fn finish(self) -> Result<JitChain, BufferError>
Lay out, map, patch against the final base, write once, seal.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for JitBuffer
impl RefUnwindSafe for JitBuffer
impl Send for JitBuffer
impl Sync for JitBuffer
impl Unpin for JitBuffer
impl UnsafeUnpin for JitBuffer
impl UnwindSafe for JitBuffer
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