59 if (typeBuilderInstantiation ==
null)
93 for (
int i = 0; i <
m_inst.Length; i++)
108 if (typeInfo ==
null)
117 if (!
type.IsGenericTypeDefinition)
121 if (typeArguments ==
null)
125 foreach (
Type type2
in typeArguments)
168 string format = ((rank == 1) ?
"[]" : (
"[" +
new string(
',', rank - 1) +
"]"));
178 [UnconditionalSuppressMessage(
"ReflectionAnalysis",
"IL2055:UnrecognizedReflectionPattern", Justification =
"The entire TypeBuilderInstantiation is serving the MakeGenericType implementation. Currently this is not supported by linker. Once it is supported the outercall (Type.MakeGenericType)will validate that the types fullfill the necessary requirements of annotations on type parameters.As such the actual internals of the implementation are not interesting.")]
183 for (
int i = 0; i <
array.Length; i++)
188 array[i] = typeBuilderInstantiation.Substitute(substitutes);
192 array[i] = substitutes[
type.GenericParameterPosition];
239 [UnconditionalSuppressMessage(
"ReflectionAnalysis",
"IL2063:UnrecognizedReflectionPattern", Justification =
"Linker doesn't recognize always throwing method. https://github.com/mono/linker/issues/2025")]
366 [RequiresUnreferencedCode(
"If some of the generic arguments are annotated (either with DynamicallyAccessedMembersAttribute, or generic constraints), trimming can't validate that the requirements of those annotations are met.")]
static Type FormCompoundType(string format, Type baseType, int curIndex)
override bool IsDefined(Type attributeType, bool inherit)
override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers)
override string ToString()
override bool IsConstructedGenericType
override bool IsAssignableFrom([NotNullWhen(true)] TypeInfo typeInfo)
static Type MakeGenericType(Type type, Type[] typeArguments)
override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters)
override EventInfo[] GetEvents()
override FieldInfo GetField(string name, BindingFlags bindingAttr)
override bool IsValueTypeImpl()
override Type MakeArrayType(int rank)
override bool IsTypeDefinition
override bool IsPointerImpl()
override MethodInfo[] GetMethods(BindingFlags bindingAttr)
override bool IsPrimitiveImpl()
override string Namespace
override Type[] GetInterfaces()
TypeBuilderInstantiation(Type type, Type[] inst)
override Type[] GetNestedTypes(BindingFlags bindingAttr)
override Type MakePointerType()
override TypeAttributes GetAttributeFlagsImpl()
override RuntimeTypeHandle TypeHandle
override Type DeclaringType
override Type MakeGenericType(params Type[] inst)
override bool IsAssignableFrom([NotNullWhen(true)] Type c)
override bool ContainsGenericParameters
override Type UnderlyingSystemType
override PropertyInfo[] GetProperties(BindingFlags bindingAttr)
override MethodBase DeclaringMethod
override Type ReflectedType
override bool IsByRefImpl()
override bool IsGenericTypeDefinition
override string AssemblyQualifiedName
override object[] GetCustomAttributes(Type attributeType, bool inherit)
override EventInfo[] GetEvents(BindingFlags bindingAttr)
override Type GetInterface(string name, bool ignoreCase)
override Type MakeByRefType()
override bool IsCOMObjectImpl()
override bool IsGenericType
override MemberInfo[] GetMembers(BindingFlags bindingAttr)
override InterfaceMapping GetInterfaceMap([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicMethods|DynamicallyAccessedMemberTypes.NonPublicMethods)] Type interfaceType)
override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr)
override Type GetNestedType(string name, BindingFlags bindingAttr)
override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers)
override Type[] GetGenericArguments()
override Type GetGenericTypeDefinition()
override Type GetElementType()
override bool HasElementTypeImpl()
override int GenericParameterPosition
override bool IsArrayImpl()
override bool IsGenericParameter
override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers)
override FieldInfo[] GetFields(BindingFlags bindingAttr)
override Type MakeArrayType()
Type Substitute(Type[] substitutes)
override bool IsSubclassOf(Type c)
override EventInfo GetEvent(string name, BindingFlags bindingAttr)
override object[] GetCustomAttributes(bool inherit)
override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr)
override string ToString()
static string Format(string resourceFormat, object p1)
static string Arg_NotGenericTypeDefinition
TypeAttributes Attributes
virtual Type MakeGenericType(params Type[] typeArguments)
override? Type DeclaringType
override? Type ReflectedType
DynamicallyAccessedMemberTypes