pub struct Transform;Trait Implementations§
Source§impl UllbcPass for Transform
impl UllbcPass for Transform
Source§fn should_run(&self, options: &TranslateOptions) -> bool
fn should_run(&self, options: &TranslateOptions) -> bool
Whether the pass should run.
Source§fn transform_body(&self, ctx: &mut TransformCtx, b: &mut ExprBody)
fn transform_body(&self, ctx: &mut TransformCtx, b: &mut ExprBody)
Transform a body.
Source§fn transform_function(&self, ctx: &mut TransformCtx, decl: &mut FunDecl)
fn transform_function(&self, ctx: &mut TransformCtx, decl: &mut FunDecl)
Transform a function declaration. This forwards to
transform_body by default.Source§fn transform_item(&self, ctx: &mut TransformCtx, item: ItemRefMut<'_>)
fn transform_item(&self, ctx: &mut TransformCtx, item: ItemRefMut<'_>)
Transform an item. This forwards to
transform_function by default.Source§fn apply_preceding_passes(
&mut self,
_ctx: &mut TransformCtx,
_passes: &[CowBox<dyn UllbcPass>],
)
fn apply_preceding_passes( &mut self, _ctx: &mut TransformCtx, _passes: &[CowBox<dyn UllbcPass>], )
Some passes carry function bodies, which must also be transformed. This is called before
the batch of passes starts, with all the passes that come before this one. Rougly only
useful for passes that inline some functions into others.
Source§fn finalize(&self, _ctx: &mut TransformCtx)
fn finalize(&self, _ctx: &mut TransformCtx)
Run after all the fused passes in the current block are done.
Auto Trait Implementations§
impl Freeze for Transform
impl RefUnwindSafe for Transform
impl Send for Transform
impl Sync for Transform
impl Unpin for Transform
impl UnsafeUnpin for Transform
impl UnwindSafe for Transform
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
§impl<I, T> ExtractContext<I, ()> for T
impl<I, T> ExtractContext<I, ()> for T
§fn extract_context(self, _original_input: I)
fn extract_context(self, _original_input: I)
Given the context attached to a nom error, and given the original
input to the nom parser, extract more the useful context information. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<I> RecreateContext<I> for I
impl<I> RecreateContext<I> for I
§fn recreate_context(_original_input: I, tail: I) -> I
fn recreate_context(_original_input: I, tail: I) -> I
Given the original input, as well as the context reported by nom,
recreate a context in the original string where the error occurred. Read more