System.Reflection.Emit.OpCodes.Stobj Field

Copies a value of a specified type from the evaluation stack into a supplied memory address.

Syntax

public static readonly OpCode Stobj

Remarks

The following table lists the instruction's hexadecimal and Microsoft Intermediate Language (MSIL) assembly format, along with a brief reference summary:

81 < T >

stobj class

Stores a value of type class from the stack into memory.

The stack transitional behavior, in sequential order, is:

[The 'ordered' type of list has not been implemented in the ECMA stylesheet.]

The stobj instruction copies the value type object into the address specified by the address (a pointer of type native int, *, or &). The number of bytes copied depends on the size of the class represented by class, a metadata token representing a value type.

The operation of the stobj instruction can be altered by an immediately preceding OpCodes.Volatile or OpCodes.Unaligned prefix instruction.

TypeLoadException is thrown if class cannot be found. This is typically detected when Microsoft Intermediate Language (MSIL) instructions are converted to native code rather than at run time.

The following ILGenerator.Emit(OpCode) method overload can use the stobj opcode:

  • ILGenerator.Emit(OpCode, Type)

Requirements

Namespace: System.Reflection.Emit
Assembly: mscorlib (in mscorlib.dll)
Assembly Versions: 1.0.5000.0, 2.0.0.0, 4.0.0.0