Skip to main content

CompoundOpCode

Enum CompoundOpCode 

Source
#[repr(u8)]
pub enum CompoundOpCode {
Show 28 variants arglist = 0, ceq = 1, cgt = 2, cgt_un = 3, clt = 4, clt_un = 5, ldftn(MetadataToken), ldvirtftn(MetadataToken), ldarg(u16), ldarga(u16), starg(u16), ldloc(u16), ldloca(u16), stloc(u16), localloc = 15, endfilter = 17, unaligned = 18, volatile = 19, tail = 20, initobj(MetadataToken), constrained(MetadataToken), cpblk = 23, initblk = 24, no_chk(SkipFaultCheckFlags), rethrow = 26, sizeof(MetadataToken), refanytype = 29, readonly = 30,
}

Variants§

§

arglist = 0

Return argument list handle for the current method.

§

ceq = 1

Push 1 (of type int32) if value1 equals value2, else push 0.

§

cgt = 2

Push 1 (of type int32) if value1 greater that value2, else push 0.

§

cgt_un = 3

Push 1 (of type int32) if value1 greater that value2, unsigned or unordered, else push 0.

§

clt = 4

Push 1 (of type int32) if value1 lower than value2, else push 0.

§

clt_un = 5

Push 1 (of type int32) if value1 lower than value2, unsigned or unordered, else push 0.

§

ldftn(MetadataToken)

Push a pointer to a method referenced by method, on the stack.

§

ldvirtftn(MetadataToken)

Push address of virtual method on the stack.

§

ldarg(u16)

Load argument numbered num onto the stack.

§

ldarga(u16)

Fetch the address of argument argNum.

§

starg(u16)

Store value to the argument numbered num.

§

ldloc(u16)

Load local variable of index indx onto stack.

§

ldloca(u16)

Load address of local variable with index indx.

§

stloc(u16)

Pop a value from stack into local variable indx.

§

localloc = 15

Allocate space from the local memory pool.

§

endfilter = 17

End an exception handling filter clause.

§

unaligned = 18

Subsequent pointer instruction might be unaligned.

§

volatile = 19

Subsequent pointer reference is volatile.

§

tail = 20

Subsequent call terminates current method.

§

initobj(MetadataToken)

Initialize the value at address dest.

§

constrained(MetadataToken)

Call a virtual method on a type constrained to be type T.

§

cpblk = 23

Copy data from memory to memory.

§

initblk = 24

Set all bytes in a block of memory to a given byte value.

§

no_chk(SkipFaultCheckFlags)

The specified fault check(s) normally performed as part of the execution of the subsequent instruction can/shall be skipped.

§

rethrow = 26

Rethrow the current exception.

§

sizeof(MetadataToken)

Push the size, in bytes, of a type as an unsigned int32.

§

refanytype = 29

Push the type token stored in a typed reference.

§

readonly = 30

Specify that the subsequent array address operation performs no type check at runtime, and that it returns a controlled-mutability managed pointer.

Implementations§

Source§

impl CompoundOpCode

Source

pub fn read(stream: &mut Cursor<&[u8]>, _: &()) -> Result<Self>

Trait Implementations§

Source§

impl Clone for CompoundOpCode

Source§

fn clone(&self) -> CompoundOpCode

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for CompoundOpCode

Source§

impl Debug for CompoundOpCode

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for CompoundOpCode

Source§

fn eq(&self, other: &CompoundOpCode) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for CompoundOpCode

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.