protected internal void EmitGetHelper(Operand op, Type desiredType, bool allowExplicitConversion)
{
if (desiredType.IsByRef)
{
EmitGetHelper_Ref(op, desiredType);
return;
}
if ((object)op == null)
{
if (desiredType.IsValueType)
throw new ArgumentNullException(nameof(op));
IL.Emit(OpCodes.Ldnull);
return;
}
EmitGetHelper_Conversion(op, desiredType, allowExplicitConversion ? Conversion.GetExplicit(op, desiredType, false, TypeMapper) : Conversion.GetImplicit(op, desiredType, false, TypeMapper));
}