internal override void EmitGet(CodeGen g) { g.EmitLdargHelper(index); if (IsReference) { g.EmitLdindHelper(Type); } }
internal override void EmitGet(CodeGen g) { g.EmitLdargHelper(_index); if (IsReference) { g.EmitLdindHelper(GetReturnType(g.TypeMapper)); } }
protected internal override void EmitGet(CodeGen g) { OperandExtensions.SetLeakedState(this, false); g.EmitLdargHelper(_index); if (IsReference) { g.EmitLdindHelper(GetReturnType(g.TypeMapper)); } }
internal override void EmitSet(CodeGen g, Operand value, bool allowExplicitConversion) { if (IsReference) { g.EmitLdargHelper(index); g.EmitStindHelper(Type, value, allowExplicitConversion); } else { g.EmitGetHelper(value, Type, allowExplicitConversion); g.EmitStargHelper(index); } }
internal override void EmitSet(CodeGen g, Operand value, bool allowExplicitConversion) { if (IsReference) { g.EmitLdargHelper(_index); g.EmitStindHelper(GetReturnType(g.TypeMapper), value, allowExplicitConversion); } else { g.EmitGetHelper(value, GetReturnType(g.TypeMapper), allowExplicitConversion); g.EmitStargHelper(_index); } }
protected internal override void EmitSet(CodeGen g, Operand value, bool allowExplicitConversion) { OperandExtensions.SetLeakedState(this, false); if (IsReference) { g.EmitLdargHelper(_index); g.EmitStindHelper(GetReturnType(g.TypeMapper), value, allowExplicitConversion); } else { g.EmitGetHelper(value, GetReturnType(g.TypeMapper), allowExplicitConversion); g.EmitStargHelper(_index); } }
internal override void EmitAddressOf(CodeGen g) { if (IsReference) { g.EmitLdargHelper(index); } else { if (index <= byte.MaxValue) { g.il.Emit(OpCodes.Ldarga_S, (byte)index); } else { g.il.Emit(OpCodes.Ldarga, index); } } }
protected internal override void EmitAddressOf(CodeGen g) { OperandExtensions.SetLeakedState(this, false); if (IsReference) { g.EmitLdargHelper(_index); } else { if (_index <= byte.MaxValue) { g.IL.Emit(OpCodes.Ldarga_S, (byte)_index); } else { g.IL.Emit(OpCodes.Ldarga, _index); } } }
internal override void EmitAddressOf(CodeGen g) { if (IsReference) { g.EmitLdargHelper(index); } else { if (index <= byte.MaxValue) g.il.Emit(OpCodes.Ldarga_S, (byte)index); else g.il.Emit(OpCodes.Ldarga, index); } }
internal override void EmitGet(CodeGen g) { g.EmitLdargHelper(index); if (IsReference) g.EmitLdindHelper(Type); }
protected internal override void EmitAddressOf(CodeGen g) { OperandExtensions.SetLeakedState(this, false); if (IsReference) { g.EmitLdargHelper(_index); } else { if (_index <= byte.MaxValue) g.IL.Emit(OpCodes.Ldarga_S, (byte)_index); else g.IL.Emit(OpCodes.Ldarga, _index); } }
protected internal override void EmitGet(CodeGen g) { OperandExtensions.SetLeakedState(this, false); g.EmitLdargHelper(_index); if (IsReference) g.EmitLdindHelper(GetReturnType(g.TypeMapper)); }