pub struct TranspilerRunnerBuilder { /* private fields */ }Expand description
Builder for creating a configured transpiler runner.
Implementations§
Source§impl TranspilerRunnerBuilder
impl TranspilerRunnerBuilder
pub fn new(app_bin_path: impl AsRef<Path>) -> Self
pub fn with_cycles(self, cycles: usize) -> Self
pub fn maybe_cycles(self, cycles: Option<usize>) -> Self
pub fn with_text_path(self, text_path: impl AsRef<Path>) -> Self
pub fn maybe_text_path(self, text_path: Option<impl AsRef<Path>>) -> Self
pub fn with_flamegraph(self, flamegraph: FlamegraphConfig) -> Self
Sourcepub fn with_machine_profile(self, profile: MachineProfile) -> Self
pub fn with_machine_profile(self, profile: MachineProfile) -> Self
Selects one of the platform-supported machine profiles for bytecode preprocessing.
The default is MachineProfile::FullUnsigned, which preserves the historical
airbender-host transpiler behavior. Non-default profiles currently require
interpreter execution; combining them with Self::with_jit returns an error.
Sourcepub fn with_unstable_raw_decoder<D>(self, name: &'static str) -> Selfwhere
D: DecodingOptions,
pub fn with_unstable_raw_decoder<D>(self, name: &'static str) -> Selfwhere
D: DecodingOptions,
Selects a raw upstream decoder configuration.
This method intentionally exposes riscv_transpiler internals and is not
covered by Airbender Platform’s stability guarantees. It is intended for
advanced users who already accept that upstream Airbender APIs can change
without a platform-level compatibility layer. Raw decoders currently require
interpreter execution; combining them with Self::with_jit returns an error.
If the decoder emits instructions that the host runner does not implement,
execution may panic instead of returning a structured error.
name is used only for diagnostics, so callers should pass a short domain
name that will make sense in error messages.
pub fn with_jit(self) -> Self
pub fn build(self) -> Result<TranspilerRunner>
Auto Trait Implementations§
impl Freeze for TranspilerRunnerBuilder
impl RefUnwindSafe for TranspilerRunnerBuilder
impl Send for TranspilerRunnerBuilder
impl Sync for TranspilerRunnerBuilder
impl Unpin for TranspilerRunnerBuilder
impl UnwindSafe for TranspilerRunnerBuilder
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
§impl<T> CudaVariable<T> for T
impl<T> CudaVariable<T> for T
§impl<T> CudaVariableMut<T> for T
impl<T> CudaVariableMut<T> for T
§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>
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>
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