pub struct AssemblerConfig {
pub evm_version: EvmVersion,
pub optimization: OptimizationMode,
pub evm_ir_stack_schedule: bool,
pub evm_ir_layout_passes: bool,
}Expand description
Configuration for EVM bytecode assembly.
Fields§
§evm_version: EvmVersionEVM version to target when selecting hardfork-gated opcodes.
optimization: OptimizationModeOptimization mode for alternate byte encodings.
evm_ir_stack_schedule: boolRun the experimental EVM IR StackSchedule pass in the assembler bridge.
Off by default. See StructuredAsmProgram::optimize_with_evm_ir for why
the pass is a verified near no-op on the bridge’s operand-cleared IR.
evm_ir_layout_passes: boolRun EVM IR layout/code-size passes in the assembler bridge.
Kept separate from evm_ir_stack_schedule so the experimental scheduler
flag remains bytecode-neutral.
Trait Implementations§
Source§impl Clone for AssemblerConfig
impl Clone for AssemblerConfig
Source§fn clone(&self) -> AssemblerConfig
fn clone(&self) -> AssemblerConfig
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for AssemblerConfig
Source§impl Debug for AssemblerConfig
impl Debug for AssemblerConfig
Source§impl Default for AssemblerConfig
impl Default for AssemblerConfig
Source§fn default() -> AssemblerConfig
fn default() -> AssemblerConfig
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for AssemblerConfig
impl RefUnwindSafe for AssemblerConfig
impl Send for AssemblerConfig
impl Sync for AssemblerConfig
impl Unpin for AssemblerConfig
impl UnsafeUnpin for AssemblerConfig
impl UnwindSafe for AssemblerConfig
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, R> CollectAndApply<T, R> for T
impl<T, R> CollectAndApply<T, R> for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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