Imported Upstream version 6.4.0.137

Former-commit-id: 943baa9f16a098c33e129777827f3a9d20da00d6
This commit is contained in:
Xamarin Public Jenkins (auto-signing)
2019-07-26 19:53:28 +00:00
parent e9207cf623
commit ef583813eb
2712 changed files with 74169 additions and 40587 deletions

View File

@ -177,7 +177,19 @@ namespace System.Reflection.Emit {
Console.Error.WriteLine ("WARNING: {0}", message);
}
public override string FullyQualifiedName {get { return fqname;}}
public override string FullyQualifiedName {
get {
string fullyQualifiedName = fqname;
if (fullyQualifiedName == null)
return null;
if (assemblyb.AssemblyDir != null) {
fullyQualifiedName = Path.Combine (assemblyb.AssemblyDir, fullyQualifiedName);
fullyQualifiedName = Path.GetFullPath (fullyQualifiedName);
}
return fullyQualifiedName;
}
}
public bool IsTransient () {
return transient;
@ -1094,78 +1106,41 @@ namespace System.Reflection.Emit {
}
public override FieldInfo ResolveField (int metadataToken, Type [] genericTypeArguments, Type [] genericMethodArguments) {
ResolveTokenError error;
IntPtr handle = ResolveFieldToken (_impl, metadataToken, ptrs_from_types (genericTypeArguments), ptrs_from_types (genericMethodArguments), out error);
if (handle == IntPtr.Zero)
throw resolve_token_exception (metadataToken, error, "Field");
else
return FieldInfo.GetFieldFromHandle (new RuntimeFieldHandle (handle));
return RuntimeModule.ResolveField (this, _impl, metadataToken, genericTypeArguments, genericMethodArguments);
}
public override MemberInfo ResolveMember (int metadataToken, Type [] genericTypeArguments, Type [] genericMethodArguments) {
ResolveTokenError error;
MemberInfo m = ResolveMemberToken (_impl, metadataToken, ptrs_from_types (genericTypeArguments), ptrs_from_types (genericMethodArguments), out error);
if (m == null)
throw resolve_token_exception (metadataToken, error, "MemberInfo");
else
return m;
return RuntimeModule.ResolveMember (this, _impl, metadataToken, genericTypeArguments, genericMethodArguments);
}
internal MemberInfo ResolveOrGetRegisteredToken (int metadataToken, Type [] genericTypeArguments, Type [] genericMethodArguments)
{
ResolveTokenError error;
MemberInfo m = ResolveMemberToken (_impl, metadataToken, ptrs_from_types (genericTypeArguments), ptrs_from_types (genericMethodArguments), out error);
MemberInfo m = RuntimeModule.ResolveMemberToken (_impl, metadataToken, RuntimeModule.ptrs_from_types (genericTypeArguments), RuntimeModule.ptrs_from_types (genericMethodArguments), out error);
if (m != null)
return m;
m = GetRegisteredToken (metadataToken) as MemberInfo;
if (m == null)
throw resolve_token_exception (metadataToken, error, "MemberInfo");
throw RuntimeModule.resolve_token_exception (Name, metadataToken, error, "MemberInfo");
else
return m;
}
public override MethodBase ResolveMethod (int metadataToken, Type [] genericTypeArguments, Type [] genericMethodArguments) {
ResolveTokenError error;
IntPtr handle = ResolveMethodToken (_impl, metadataToken, ptrs_from_types (genericTypeArguments), ptrs_from_types (genericMethodArguments), out error);
if (handle == IntPtr.Zero)
throw resolve_token_exception (metadataToken, error, "MethodBase");
else
return RuntimeMethodInfo.GetMethodFromHandleNoGenericCheck (new RuntimeMethodHandle (handle));
return RuntimeModule.ResolveMethod (this, _impl, metadataToken, genericTypeArguments, genericMethodArguments);
}
public override string ResolveString (int metadataToken) {
ResolveTokenError error;
string s = ResolveStringToken (_impl, metadataToken, out error);
if (s == null)
throw resolve_token_exception (metadataToken, error, "string");
else
return s;
return RuntimeModule.ResolveString (this, _impl, metadataToken);
}
public override byte[] ResolveSignature (int metadataToken) {
ResolveTokenError error;
byte[] res = ResolveSignature (_impl, metadataToken, out error);
if (res == null)
throw resolve_token_exception (metadataToken, error, "signature");
else
return res;
return RuntimeModule.ResolveSignature (this, _impl, metadataToken);
}
public override Type ResolveType (int metadataToken, Type [] genericTypeArguments, Type [] genericMethodArguments) {
ResolveTokenError error;
IntPtr handle = ResolveTypeToken (_impl, metadataToken, ptrs_from_types (genericTypeArguments), ptrs_from_types (genericMethodArguments), out error);
if (handle == IntPtr.Zero)
throw resolve_token_exception (metadataToken, error, "Type");
else
return Type.GetTypeFromHandle (new RuntimeTypeHandle (handle));
return RuntimeModule.ResolveType (this, _impl, metadataToken, genericTypeArguments, genericMethodArguments);
}
public override bool Equals (object obj)
@ -1233,13 +1208,9 @@ namespace System.Reflection.Emit {
public override int MetadataToken {
get {
return get_MetadataToken (this);
return RuntimeModule.get_MetadataToken (this);
}
}
internal override IntPtr GetImpl () {
return _impl;
}
}
internal class ModuleBuilderTokenGenerator : TokenGenerator {