Expand Minimize
This topic has not yet been rated - Rate this topic

OpCodes.Stelem_I2 Field

April 12, 2014

Replaces the array element at a given index with the int16 value on the evaluation stack.

Namespace:  System.Reflection.Emit
Assembly:  mscorlib (in mscorlib.dll)
'Declaration
Public Shared ReadOnly Stelem_I2 As OpCode

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

Format

Assembly Format

Description

9D

stelem.i2

Replaces an array element at the supplied index with the int16 value on the stack.

The stack transitional behavior, in sequential order, is:

  1. An object reference to an array, array, is pushed onto the stack.

  2. A valid index to an element in array is pushed onto the stack.

  3. A value is pushed onto the stack.

  4. The value, the index, and the array reference are popped from the stack; the value is put into the array element at the given index.

The stelem.i2 instruction replaces the value of the element index in the one-dimensional array array with the int16 value pushed onto the stack.

Arrays are objects and hence represented by a value of type O. The index is type native int.

NullReferenceException is thrown if array is a null reference.

IndexOutOfRangeException is thrown if index is negative, or larger than the bound of array.

ArrayTypeMismatchException is thrown if array does not hold elements of the required type.

The following Emit method overload can use the stelem.i2 opcode:

  • ILGenerator.Emit(OpCode)

Windows Phone OS

Supported in: 8.1, 8.0, 7.1

Windows Phone

Show:
© 2014 Microsoft. All rights reserved.