Imported Upstream version 4.6.0.125

Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
This commit is contained in:
Xamarin Public Jenkins (auto-signing)
2016-08-03 10:59:49 +00:00
parent a569aebcfd
commit e79aa3c0ed
17047 changed files with 3137615 additions and 392334 deletions

View File

@ -149,6 +149,16 @@ namespace System.Reflection {
return sbName.ToString();
}
public override Delegate CreateDelegate (Type delegateType)
{
return Delegate.CreateDelegate (delegateType, this);
}
public override Delegate CreateDelegate (Type delegateType, object target)
{
return Delegate.CreateDelegate (delegateType, target, this);
}
public override String ToString()
{
return ReturnType.FormatTypeName() + " " + FormatNameAndSig(false);
@ -428,7 +438,7 @@ namespace System.Reflection {
foreach (Type type in methodInstantiation) {
if (type == null)
throw new ArgumentNullException ();
if (!(type is MonoType))
if (!(type is RuntimeType))
hasUserType = true;
}
@ -492,9 +502,16 @@ namespace System.Reflection {
return CustomAttributeData.GetCustomAttributes (this);
}
#if MOBILE
static int get_core_clr_security_level ()
{
return 1;
}
#else
//seclevel { transparent = 0, safe-critical = 1, critical = 2}
[MethodImplAttribute(MethodImplOptions.InternalCall)]
public extern int get_core_clr_security_level ();
#endif
public override bool IsSecurityTransparent {
get { return get_core_clr_security_level () == 0; }
@ -741,5 +758,27 @@ namespace System.Reflection {
public override IList<CustomAttributeData> GetCustomAttributesData () {
return CustomAttributeData.GetCustomAttributes (this);
}
#if MOBILE
static int get_core_clr_security_level ()
{
return 1;
}
#else
[MethodImplAttribute(MethodImplOptions.InternalCall)]
public extern int get_core_clr_security_level ();
#endif
public override bool IsSecurityTransparent {
get { return get_core_clr_security_level () == 0; }
}
public override bool IsSecurityCritical {
get { return get_core_clr_security_level () > 0; }
}
public override bool IsSecuritySafeCritical {
get { return get_core_clr_security_level () == 1; }
}
}
}