IsGenericInstanceOfCompareExchange() public static method

public static IsGenericInstanceOfCompareExchange ( MethodReference methodReference ) : bool
methodReference Mono.Cecil.MethodReference
return bool
 public static bool NeedsHiddenMethodInfo(MethodReference method, MethodCallType callType, bool isConstructor)
 {
     if (IntrinsicRemap.ShouldRemap(method))
     {
         return(false);
     }
     if (method.DeclaringType.IsArray && ((isConstructor || (method.Name == "Set")) || ((method.Name == "Get") || (method.Name == "Address"))))
     {
         return(false);
     }
     if (method.DeclaringType.IsSystemArray() && ((method.Name == "GetGenericValueImpl") || (method.Name == "SetGenericValueImpl")))
     {
         return(false);
     }
     if (GenericsUtilities.IsGenericInstanceOfCompareExchange(method))
     {
         return(false);
     }
     if (GenericsUtilities.IsGenericInstanceOfExchange(method))
     {
         return(false);
     }
     if ((callType == MethodCallType.Virtual) && !CanDevirtualizeMethodCall(method.Resolve()))
     {
         return(false);
     }
     return(true);
 }
示例#2
0
 private static bool MethodNeedsWritten(MethodReference method)
 {
     if (IsGetOrSetGenericValueImplOnArray(method))
     {
         return(false);
     }
     if (GenericsUtilities.IsGenericInstanceOfCompareExchange(method))
     {
         return(false);
     }
     if (GenericsUtilities.IsGenericInstanceOfExchange(method))
     {
         return(false);
     }
     if (method.IsStripped())
     {
         return(false);
     }
     return(MethodCanBeDirectlyCalled(method.Resolve()));
 }