Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ EmitStoreElement()

static void System.Linq.Expressions.Compiler.ILGen.EmitStoreElement ( this ILGenerator il,
Type type )
inlinestaticpackage

Definition at line 172 of file ILGen.cs.

173 {
174 switch (type.GetTypeCode())
175 {
176 case TypeCode.Boolean:
177 case TypeCode.SByte:
178 case TypeCode.Byte:
179 il.Emit(OpCodes.Stelem_I1);
180 return;
181 case TypeCode.Char:
182 case TypeCode.Int16:
183 case TypeCode.UInt16:
184 il.Emit(OpCodes.Stelem_I2);
185 return;
186 case TypeCode.Int32:
187 case TypeCode.UInt32:
188 il.Emit(OpCodes.Stelem_I4);
189 return;
190 case TypeCode.Int64:
191 case TypeCode.UInt64:
192 il.Emit(OpCodes.Stelem_I8);
193 return;
194 case TypeCode.Single:
195 il.Emit(OpCodes.Stelem_R4);
196 return;
197 case TypeCode.Double:
198 il.Emit(OpCodes.Stelem_R8);
199 return;
200 }
201 if (type.IsValueType)
202 {
203 il.Emit(OpCodes.Stelem, type);
204 }
205 else
206 {
207 il.Emit(OpCodes.Stelem_Ref);
208 }
209 }
static readonly OpCode Stelem_Ref
Definition OpCodes.cs:323
static readonly OpCode Stelem_I4
Definition OpCodes.cs:315
static readonly OpCode Stelem_I8
Definition OpCodes.cs:317
static readonly OpCode Stelem_I1
Definition OpCodes.cs:311
static readonly OpCode Stelem
Definition OpCodes.cs:327
static readonly OpCode Stelem_R4
Definition OpCodes.cs:319
static readonly OpCode Stelem_I2
Definition OpCodes.cs:313
static readonly OpCode Stelem_R8
Definition OpCodes.cs:321

References System.Reflection.Emit.ILGenerator.Emit(), System.Reflection.Emit.OpCodes.Stelem, System.Reflection.Emit.OpCodes.Stelem_I1, System.Reflection.Emit.OpCodes.Stelem_I2, System.Reflection.Emit.OpCodes.Stelem_I4, System.Reflection.Emit.OpCodes.Stelem_I8, System.Reflection.Emit.OpCodes.Stelem_R4, System.Reflection.Emit.OpCodes.Stelem_R8, System.Reflection.Emit.OpCodes.Stelem_Ref, and System.type.