Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
GenericTypeParameterBuilder.cs
Go to the documentation of this file.
3
5
7{
9
11
13
14 public override string Name => m_type.Name;
15
16 public override Module Module => m_type.Module;
17
18 public override bool IsByRefLike => false;
19
20 public override int MetadataToken => m_type.MetadataToken;
21
22 public override Guid GUID
23 {
24 get
25 {
26 throw new NotSupportedException();
27 }
28 }
29
30 public override Assembly Assembly => m_type.Assembly;
31
33 {
34 get
35 {
36 throw new NotSupportedException();
37 }
38 }
39
40 public override string? FullName => null;
41
42 public override string? Namespace => null;
43
44 public override string? AssemblyQualifiedName => null;
45
46 public override Type? BaseType => m_type.BaseType;
47
48 public override bool IsTypeDefinition => false;
49
50 public override bool IsSZArray => false;
51
52 public override Type UnderlyingSystemType => this;
53
54 public override bool IsGenericTypeDefinition => false;
55
56 public override bool IsGenericType => false;
57
58 public override bool IsGenericParameter => true;
59
60 public override bool IsConstructedGenericType => false;
61
63
65
67
69
70 public override bool IsAssignableFrom([NotNullWhen(true)] TypeInfo? typeInfo)
71 {
72 if (typeInfo == null)
73 {
74 return false;
75 }
76 return IsAssignableFrom(typeInfo.AsType());
77 }
78
83
84 public override string ToString()
85 {
86 return m_type.Name;
87 }
88
89 public override bool Equals(object? o)
90 {
91 GenericTypeParameterBuilder genericTypeParameterBuilder = o as GenericTypeParameterBuilder;
92 if (genericTypeParameterBuilder == null)
93 {
94 return false;
95 }
96 return (object)genericTypeParameterBuilder.m_type == m_type;
97 }
98
99 public override int GetHashCode()
100 {
101 return m_type.GetHashCode();
102 }
103
104 public override Type MakePointerType()
105 {
106 return SymbolType.FormCompoundType("*", this, 0);
107 }
108
109 public override Type MakeByRefType()
110 {
111 return SymbolType.FormCompoundType("&", this, 0);
112 }
113
114 public override Type MakeArrayType()
115 {
116 return SymbolType.FormCompoundType("[]", this, 0);
117 }
118
119 public override Type MakeArrayType(int rank)
120 {
121 string rankString = TypeInfo.GetRankString(rank);
122 return SymbolType.FormCompoundType(rankString, this, 0) as SymbolType;
123 }
124
125 [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.All)]
126 public override object InvokeMember(string name, BindingFlags invokeAttr, Binder? binder, object? target, object?[]? args, ParameterModifier[]? modifiers, CultureInfo? culture, string[]? namedParameters)
127 {
128 throw new NotSupportedException();
129 }
130
131 [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.NonPublicConstructors)]
132 protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder? binder, CallingConventions callConvention, Type[] types, ParameterModifier[]? modifiers)
133 {
134 throw new NotSupportedException();
135 }
136
137 [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.NonPublicConstructors)]
138 public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr)
139 {
140 throw new NotSupportedException();
141 }
142
143 [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicMethods | DynamicallyAccessedMemberTypes.NonPublicMethods)]
144 protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder? binder, CallingConventions callConvention, Type[]? types, ParameterModifier[]? modifiers)
145 {
146 throw new NotSupportedException();
147 }
148
149 [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicMethods | DynamicallyAccessedMemberTypes.NonPublicMethods)]
150 public override MethodInfo[] GetMethods(BindingFlags bindingAttr)
151 {
152 throw new NotSupportedException();
153 }
154
155 [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields)]
156 public override FieldInfo GetField(string name, BindingFlags bindingAttr)
157 {
158 throw new NotSupportedException();
159 }
160
161 [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields)]
162 public override FieldInfo[] GetFields(BindingFlags bindingAttr)
163 {
164 throw new NotSupportedException();
165 }
166
167 [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.Interfaces)]
168 [UnconditionalSuppressMessage("ReflectionAnalysis", "IL2063:UnrecognizedReflectionPattern", Justification = "Linker doesn't recognize always throwing method. https://github.com/mono/linker/issues/2025")]
169 [return: DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.Interfaces)]
170 public override Type GetInterface(string name, bool ignoreCase)
171 {
172 throw new NotSupportedException();
173 }
174
175 [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.Interfaces)]
176 public override Type[] GetInterfaces()
177 {
178 throw new NotSupportedException();
179 }
180
181 [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicEvents | DynamicallyAccessedMemberTypes.NonPublicEvents)]
182 public override EventInfo GetEvent(string name, BindingFlags bindingAttr)
183 {
184 throw new NotSupportedException();
185 }
186
187 [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicEvents)]
188 public override EventInfo[] GetEvents()
189 {
190 throw new NotSupportedException();
191 }
192
193 [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties)]
194 protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder? binder, Type? returnType, Type[]? types, ParameterModifier[]? modifiers)
195 {
196 throw new NotSupportedException();
197 }
198
199 [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties)]
200 public override PropertyInfo[] GetProperties(BindingFlags bindingAttr)
201 {
202 throw new NotSupportedException();
203 }
204
205 [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicNestedTypes | DynamicallyAccessedMemberTypes.NonPublicNestedTypes)]
206 public override Type[] GetNestedTypes(BindingFlags bindingAttr)
207 {
208 throw new NotSupportedException();
209 }
210
211 [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicNestedTypes | DynamicallyAccessedMemberTypes.NonPublicNestedTypes)]
212 public override Type GetNestedType(string name, BindingFlags bindingAttr)
213 {
214 throw new NotSupportedException();
215 }
216
217 [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.NonPublicConstructors | DynamicallyAccessedMemberTypes.PublicMethods | DynamicallyAccessedMemberTypes.NonPublicMethods | DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicNestedTypes | DynamicallyAccessedMemberTypes.NonPublicNestedTypes | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties | DynamicallyAccessedMemberTypes.PublicEvents | DynamicallyAccessedMemberTypes.NonPublicEvents)]
218 public override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr)
219 {
220 throw new NotSupportedException();
221 }
222
223 public override InterfaceMapping GetInterfaceMap([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicMethods | DynamicallyAccessedMemberTypes.NonPublicMethods)] Type interfaceType)
224 {
225 throw new NotSupportedException();
226 }
227
228 [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicEvents | DynamicallyAccessedMemberTypes.NonPublicEvents)]
229 public override EventInfo[] GetEvents(BindingFlags bindingAttr)
230 {
231 throw new NotSupportedException();
232 }
233
234 [DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors | DynamicallyAccessedMemberTypes.NonPublicConstructors | DynamicallyAccessedMemberTypes.PublicMethods | DynamicallyAccessedMemberTypes.NonPublicMethods | DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicNestedTypes | DynamicallyAccessedMemberTypes.NonPublicNestedTypes | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties | DynamicallyAccessedMemberTypes.PublicEvents | DynamicallyAccessedMemberTypes.NonPublicEvents)]
235 public override MemberInfo[] GetMembers(BindingFlags bindingAttr)
236 {
237 throw new NotSupportedException();
238 }
239
241 {
242 return TypeAttributes.Public;
243 }
244
245 protected override bool IsArrayImpl()
246 {
247 return false;
248 }
249
250 protected override bool IsByRefImpl()
251 {
252 return false;
253 }
254
255 protected override bool IsPointerImpl()
256 {
257 return false;
258 }
259
260 protected override bool IsPrimitiveImpl()
261 {
262 return false;
263 }
264
265 protected override bool IsCOMObjectImpl()
266 {
267 return false;
268 }
269
270 public override Type GetElementType()
271 {
272 throw new NotSupportedException();
273 }
274
275 protected override bool HasElementTypeImpl()
276 {
277 return false;
278 }
279
280 public override Type[] GetGenericArguments()
281 {
282 throw new InvalidOperationException();
283 }
284
286 {
287 throw new InvalidOperationException();
288 }
289
290 [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.")]
291 public override Type MakeGenericType(params Type[] typeArguments)
292 {
294 }
295
296 protected override bool IsValueTypeImpl()
297 {
298 return false;
299 }
300
301 public override bool IsAssignableFrom([NotNullWhen(true)] Type? c)
302 {
303 throw new NotSupportedException();
304 }
305
306 public override bool IsSubclassOf(Type c)
307 {
308 throw new NotSupportedException();
309 }
310
311 public override object[] GetCustomAttributes(bool inherit)
312 {
313 throw new NotSupportedException();
314 }
315
316 public override object[] GetCustomAttributes(Type attributeType, bool inherit)
317 {
318 throw new NotSupportedException();
319 }
320
321 public override bool IsDefined(Type attributeType, bool inherit)
322 {
323 throw new NotSupportedException();
324 }
325
326 public void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute)
327 {
328 m_type.SetGenParamCustomAttribute(con, binaryAttribute);
329 }
330
332 {
333 m_type.SetGenParamCustomAttribute(customBuilder);
334 }
335
336 public void SetBaseTypeConstraint([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.All)] Type? baseTypeConstraint)
337 {
338 AssemblyBuilder.CheckContext(baseTypeConstraint);
339 m_type.SetParent(baseTypeConstraint);
340 }
341
342 public void SetInterfaceConstraints(params Type[]? interfaceConstraints)
343 {
344 AssemblyBuilder.CheckContext(interfaceConstraints);
345 m_type.SetInterfaces(interfaceConstraints);
346 }
347
348 public void SetGenericParameterAttributes(GenericParameterAttributes genericParameterAttributes)
349 {
350 m_type.SetGenParamAttributes(genericParameterAttributes);
351 }
352}
static void CheckContext(params Type[][] typess)
override EventInfo[] GetEvents(BindingFlags bindingAttr)
override Type[] GetNestedTypes(BindingFlags bindingAttr)
override bool IsAssignableFrom([NotNullWhen(true)] TypeInfo? typeInfo)
override MemberInfo[] GetMembers(BindingFlags bindingAttr)
override InterfaceMapping GetInterfaceMap([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicMethods|DynamicallyAccessedMemberTypes.NonPublicMethods)] Type interfaceType)
void SetBaseTypeConstraint([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.All)] Type? baseTypeConstraint)
override MethodInfo[] GetMethods(BindingFlags bindingAttr)
void SetGenericParameterAttributes(GenericParameterAttributes genericParameterAttributes)
override Type MakeGenericType(params Type[] typeArguments)
override object InvokeMember(string name, BindingFlags invokeAttr, Binder? binder, object? target, object?[]? args, ParameterModifier[]? modifiers, CultureInfo? culture, string[]? namedParameters)
override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder? binder, CallingConventions callConvention, Type[] types, ParameterModifier[]? modifiers)
override EventInfo GetEvent(string name, BindingFlags bindingAttr)
override FieldInfo GetField(string name, BindingFlags bindingAttr)
override bool IsAssignableFrom([NotNullWhen(true)] Type? c)
override MemberInfo[] GetMember(string name, MemberTypes type, BindingFlags bindingAttr)
override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder? binder, CallingConventions callConvention, Type[]? types, ParameterModifier[]? modifiers)
override object[] GetCustomAttributes(Type attributeType, bool inherit)
void SetCustomAttribute(ConstructorInfo con, byte[] binaryAttribute)
void SetCustomAttribute(CustomAttributeBuilder customBuilder)
override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr)
override PropertyInfo[] GetProperties(BindingFlags bindingAttr)
override bool IsDefined(Type attributeType, bool inherit)
override Type GetInterface(string name, bool ignoreCase)
override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder? binder, Type? returnType, Type[]? types, ParameterModifier[]? modifiers)
override FieldInfo[] GetFields(BindingFlags bindingAttr)
void SetInterfaceConstraints(params Type[]? interfaceConstraints)
override Type GetNestedType(string name, BindingFlags bindingAttr)
static Type FormCompoundType(string format, Type baseType, int curIndex)
void SetParent([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.All)] Type? parent)
void SetGenParamAttributes(GenericParameterAttributes genericParameterAttributes)
void SetInterfaces(params Type[] interfaces)
override? MethodBase DeclaringMethod
void SetGenParamCustomAttribute(ConstructorInfo con, byte[] binaryAttribute)
override GenericParameterAttributes GenericParameterAttributes
virtual Type AsType()
Definition TypeInfo.cs:106
static string GetRankString(int rank)
Definition TypeInfo.cs:192
static string Format(string resourceFormat, object p1)
Definition SR.cs:118
static string Arg_NotGenericTypeDefinition
Definition SR.cs:348
Definition SR.cs:7
override int GetHashCode()
Definition Type.cs:1122
virtual bool ContainsGenericParameters
Definition Type.cs:336