Jurassic.Compiler.DynamicILGenerator.StoreArrayElement C# (CSharp) Method

StoreArrayElement() public method

Pops the array, index and value off the stack and stores the value in the array.
public StoreArrayElement ( Type type ) : void
type System.Type The element type.
return void
        public override void StoreArrayElement(Type type)
        {
            if (type == null)
                throw new ArgumentNullException("type");

            switch (Type.GetTypeCode(type))
            {
                case TypeCode.Byte:
                case TypeCode.SByte:
                    Emit1ByteOpCode(0x9C, 3, 0);
                    break;
                case TypeCode.UInt16:
                case TypeCode.Int16:
                    Emit1ByteOpCode(0x9D, 3, 0);
                    break;
                case TypeCode.UInt32:
                case TypeCode.Int32:
                    Emit1ByteOpCode(0x9E, 3, 0);
                    break;
                case TypeCode.UInt64:
                case TypeCode.Int64:
                    Emit1ByteOpCode(0x9F, 3, 0);
                    break;
                case TypeCode.Single:
                    Emit1ByteOpCode(0xA0, 3, 0);
                    break;
                case TypeCode.Double:
                    Emit1ByteOpCode(0xA1, 3, 0);
                    break;
                default:
                    if (type.IsClass == true)
                        Emit1ByteOpCode(0xA2, 3, 0);
                    else
                    {
                        int token = this.GetToken(type);
                        Emit1ByteOpCodeInt32(0xA4, 3, 0, token);
                    }
                    break;
            }
            PopStackOperands(VESType.Object, VESType.Int32, ToVESType(type));
        }
DynamicILGenerator