#[repr(u16)]pub enum PseudoInstruction {
AnnotationsPlaceholder = 256,
Jump {
delta: Arg<Label>,
},
JumpIfFalse {
delta: Arg<Label>,
},
JumpIfTrue {
delta: Arg<Label>,
},
JumpNoInterrupt {
delta: Arg<Label>,
},
LoadClosure {
i: Arg<u32>,
},
PopBlock = 262,
SetupCleanup {
delta: Arg<Label>,
},
SetupFinally {
delta: Arg<Label>,
},
SetupWith {
delta: Arg<Label>,
},
StoreFastMaybeNull {
var_num: Arg<u32>,
},
}Variants§
AnnotationsPlaceholder = 256
Jump
JumpIfFalse
JumpIfTrue
JumpNoInterrupt
LoadClosure
PopBlock = 262
SetupCleanup
SetupFinally
SetupWith
StoreFastMaybeNull
Implementations§
Source§impl PseudoInstruction
impl PseudoInstruction
Sourcepub const fn as_opcode(&self) -> PseudoOpcode
pub const fn as_opcode(&self) -> PseudoOpcode
Get the corresponding PseudoOpcode.
pub const fn label_arg(&self) -> Option<Arg<Label>>
pub const fn to_base(self) -> Option<PseudoInstruction>
pub const fn to_instrumented(self) -> Option<PseudoInstruction>
Sourcepub const fn is_instrumented(&self) -> bool
pub const fn is_instrumented(&self) -> bool
Returns true if this is any instrumented opcode.
pub const fn is_unconditional_jump(&self) -> bool
pub const fn is_block_push(&self) -> bool
pub const fn is_scope_exit(&self) -> bool
pub const fn is_terminator(&self) -> bool
pub const fn is_no_fallthrough(&self) -> bool
pub const fn has_target(&self) -> bool
pub const fn has_jump(&self) -> bool
pub const fn has_arg(&self) -> bool
pub const fn has_const(&self) -> bool
pub const fn has_eval_break(&self) -> bool
pub const fn is_assembler(&self) -> bool
pub const fn cache_entries(&self) -> usize
Sourcepub const fn deoptimize(&self) -> PseudoInstruction
pub const fn deoptimize(&self) -> PseudoInstruction
Map a specialized or instrumented opcode back to its adaptive (base) variant.
pub fn stack_effect_jump(&self, oparg: u32) -> i32
pub fn stack_effect_info(&self, oparg: u32) -> StackEffect
pub fn stack_effect(&self, oparg: u32) -> i32
Trait Implementations§
Source§impl Clone for PseudoInstruction
impl Clone for PseudoInstruction
Source§fn clone(&self) -> PseudoInstruction
fn clone(&self) -> PseudoInstruction
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 PseudoInstruction
Source§impl Debug for PseudoInstruction
impl Debug for PseudoInstruction
Source§impl From<PseudoInstruction> for PseudoOpcode
impl From<PseudoInstruction> for PseudoOpcode
Source§fn from(instr: PseudoInstruction) -> PseudoOpcode
fn from(instr: PseudoInstruction) -> PseudoOpcode
Converts to this type from the input type.
Source§impl From<PseudoInstruction> for AnyInstruction
impl From<PseudoInstruction> for AnyInstruction
Source§fn from(value: PseudoInstruction) -> AnyInstruction
fn from(value: PseudoInstruction) -> AnyInstruction
Converts to this type from the input type.
Source§impl From<PseudoOpcode> for PseudoInstruction
impl From<PseudoOpcode> for PseudoInstruction
Source§fn from(opcode: PseudoOpcode) -> PseudoInstruction
fn from(opcode: PseudoOpcode) -> PseudoInstruction
Converts to this type from the input type.
Source§impl TryFrom<u16> for PseudoInstruction
impl TryFrom<u16> for PseudoInstruction
Source§type Error = MarshalError
type Error = MarshalError
The type returned in the event of a conversion error.
Source§fn try_from(
value: u16,
) -> Result<PseudoInstruction, <PseudoInstruction as TryFrom<u16>>::Error>
fn try_from( value: u16, ) -> Result<PseudoInstruction, <PseudoInstruction as TryFrom<u16>>::Error>
Performs the conversion.
Auto Trait Implementations§
impl Freeze for PseudoInstruction
impl RefUnwindSafe for PseudoInstruction
impl Send for PseudoInstruction
impl Sync for PseudoInstruction
impl Unpin for PseudoInstruction
impl UnsafeUnpin for PseudoInstruction
impl UnwindSafe for PseudoInstruction
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> ErasedDestructor for Twhere
T: 'static,
impl<T> Helper for T
Source§impl<T, U> ImaginaryInto<U> for Twhere
U: ImaginaryFrom<T>,
impl<T, U> ImaginaryInto<U> for Twhere
U: ImaginaryFrom<T>,
fn imaginary_into(self) -> U
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