Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
Module.cs
Go to the documentation of this file.
5
6namespace System.Reflection;
7
9{
10 public static readonly TypeFilter FilterTypeName = (Type m, object c) => FilterTypeNameImpl(m, c, StringComparison.Ordinal);
11
12 public static readonly TypeFilter FilterTypeNameIgnoreCase = (Type m, object c) => FilterTypeNameImpl(m, c, StringComparison.OrdinalIgnoreCase);
13
14 public virtual Assembly Assembly
15 {
16 get
17 {
19 }
20 }
21
22 [RequiresAssemblyFiles("Returns <Unknown> for modules with no file path")]
23 public virtual string FullyQualifiedName
24 {
25 get
26 {
28 }
29 }
30
31 [RequiresAssemblyFiles("Returns <Unknown> for modules with no file path")]
32 public virtual string Name
33 {
34 get
35 {
37 }
38 }
39
40 public virtual int MDStreamVersion
41 {
42 get
43 {
45 }
46 }
47
48 public virtual Guid ModuleVersionId
49 {
50 get
51 {
53 }
54 }
55
56 public virtual string ScopeName
57 {
58 get
59 {
61 }
62 }
63
65
67
68 public virtual int MetadataToken
69 {
70 get
71 {
73 }
74 }
75
77 {
79 }
80
85
86 public virtual bool IsResource()
87 {
89 }
90
91 public virtual bool IsDefined(Type attributeType, bool inherit)
92 {
94 }
95
100
101 public virtual object[] GetCustomAttributes(bool inherit)
102 {
104 }
105
106 public virtual object[] GetCustomAttributes(Type attributeType, bool inherit)
107 {
109 }
110
111 [RequiresUnreferencedCode("Methods might be removed")]
112 public MethodInfo? GetMethod(string name)
113 {
114 if (name == null)
115 {
116 throw new ArgumentNullException("name");
117 }
118 return GetMethodImpl(name, BindingFlags.Instance | BindingFlags.Static | BindingFlags.Public, null, CallingConventions.Any, null, null);
119 }
120
121 [RequiresUnreferencedCode("Methods might be removed")]
122 public MethodInfo? GetMethod(string name, Type[] types)
123 {
124 return GetMethod(name, BindingFlags.Instance | BindingFlags.Static | BindingFlags.Public, null, CallingConventions.Any, types, null);
125 }
126
127 [RequiresUnreferencedCode("Methods might be removed")]
129 {
130 if (name == null)
131 {
132 throw new ArgumentNullException("name");
133 }
134 if (types == null)
135 {
136 throw new ArgumentNullException("types");
137 }
138 for (int i = 0; i < types.Length; i++)
139 {
140 if (types[i] == null)
141 {
142 throw new ArgumentNullException("types");
143 }
144 }
146 }
147
148 [RequiresUnreferencedCode("Methods might be removed")]
153
154 [RequiresUnreferencedCode("Methods might be removed")]
156 {
157 return GetMethods(BindingFlags.Instance | BindingFlags.Static | BindingFlags.Public);
158 }
159
160 [RequiresUnreferencedCode("Methods might be removed")]
162 {
164 }
165
166 [RequiresUnreferencedCode("Fields might be removed")]
167 public FieldInfo? GetField(string name)
168 {
169 return GetField(name, BindingFlags.Instance | BindingFlags.Static | BindingFlags.Public);
170 }
171
172 [RequiresUnreferencedCode("Fields might be removed")]
173 public virtual FieldInfo? GetField(string name, BindingFlags bindingAttr)
174 {
176 }
177
178 [RequiresUnreferencedCode("Fields might be removed")]
180 {
181 return GetFields(BindingFlags.Instance | BindingFlags.Static | BindingFlags.Public);
182 }
183
184 [RequiresUnreferencedCode("Fields might be removed")]
186 {
188 }
189
190 [RequiresUnreferencedCode("Types might be removed")]
191 public virtual Type[] GetTypes()
192 {
194 }
195
196 [RequiresUnreferencedCode("Types might be removed")]
197 public virtual Type? GetType(string className)
198 {
199 return GetType(className, throwOnError: false, ignoreCase: false);
200 }
201
202 [RequiresUnreferencedCode("Types might be removed")]
203 public virtual Type? GetType(string className, bool ignoreCase)
204 {
205 return GetType(className, throwOnError: false, ignoreCase);
206 }
207
208 [RequiresUnreferencedCode("Types might be removed")]
209 public virtual Type? GetType(string className, bool throwOnError, bool ignoreCase)
210 {
212 }
213
214 [RequiresUnreferencedCode("Types might be removed")]
215 public virtual Type[] FindTypes(TypeFilter? filter, object? filterCriteria)
216 {
217 Type[] types = GetTypes();
218 int num = 0;
219 for (int i = 0; i < types.Length; i++)
220 {
221 if (filter != null && !filter(types[i], filterCriteria))
222 {
223 types[i] = null;
224 }
225 else
226 {
227 num++;
228 }
229 }
230 if (num == types.Length)
231 {
232 return types;
233 }
234 Type[] array = new Type[num];
235 num = 0;
236 for (int j = 0; j < types.Length; j++)
237 {
238 if (types[j] != null)
239 {
240 array[num++] = types[j];
241 }
242 }
243 return array;
244 }
245
246 [RequiresUnreferencedCode("Trimming changes metadata tokens")]
248 {
249 return ResolveField(metadataToken, null, null);
250 }
251
252 [RequiresUnreferencedCode("Trimming changes metadata tokens")]
257
258 [RequiresUnreferencedCode("Trimming changes metadata tokens")]
260 {
261 return ResolveMember(metadataToken, null, null);
262 }
263
264 [RequiresUnreferencedCode("Trimming changes metadata tokens")]
269
270 [RequiresUnreferencedCode("Trimming changes metadata tokens")]
272 {
273 return ResolveMethod(metadataToken, null, null);
274 }
275
276 [RequiresUnreferencedCode("Trimming changes metadata tokens")]
281
282 [RequiresUnreferencedCode("Trimming changes metadata tokens")]
283 public virtual byte[] ResolveSignature(int metadataToken)
284 {
286 }
287
288 [RequiresUnreferencedCode("Trimming changes metadata tokens")]
289 public virtual string ResolveString(int metadataToken)
290 {
292 }
293
294 [RequiresUnreferencedCode("Trimming changes metadata tokens")]
296 {
297 return ResolveType(metadataToken, null, null);
298 }
299
300 [RequiresUnreferencedCode("Trimming changes metadata tokens")]
305
307 {
309 }
310
311 public override bool Equals(object? o)
312 {
313 return base.Equals(o);
314 }
315
316 public override int GetHashCode()
317 {
318 return base.GetHashCode();
319 }
320
321 [MethodImpl(MethodImplOptions.AggressiveInlining)]
322 public static bool operator ==(Module? left, Module? right)
323 {
324 if ((object)right == null)
325 {
326 if ((object)left != null)
327 {
328 return false;
329 }
330 return true;
331 }
332 if ((object)left == right)
333 {
334 return true;
335 }
336 return left?.Equals(right) ?? false;
337 }
338
339 public static bool operator !=(Module? left, Module? right)
340 {
341 return !(left == right);
342 }
343
344 public override string ToString()
345 {
346 return ScopeName;
347 }
348
350 {
351 if (!(filterCriteria is string text))
352 {
354 }
355 if (text.Length > 0 && text[^1] == '*')
356 {
357 ReadOnlySpan<char> value = text.AsSpan(0, text.Length - 1);
358 return cls.Name.AsSpan().StartsWith(value, comparison);
359 }
360 return cls.Name.Equals(text, comparison);
361 }
362}
static Exception ByDesign
FieldInfo[] GetFields()
Definition Module.cs:179
virtual string ScopeName
Definition Module.cs:57
MethodInfo? GetMethod(string name, Type[] types)
Definition Module.cs:122
static bool operator!=(Module? left, Module? right)
Definition Module.cs:339
virtual int MDStreamVersion
Definition Module.cs:41
virtual string FullyQualifiedName
Definition Module.cs:24
virtual ? Type GetType(string className, bool throwOnError, bool ignoreCase)
Definition Module.cs:209
static readonly TypeFilter FilterTypeNameIgnoreCase
Definition Module.cs:12
virtual Type[] GetTypes()
Definition Module.cs:191
static bool operator==(Module? left, Module? right)
Definition Module.cs:322
FieldInfo? ResolveField(int metadataToken)
Definition Module.cs:247
virtual IEnumerable< CustomAttributeData > CustomAttributes
Definition Module.cs:66
virtual ? MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder? binder, CallingConventions callConvention, Type[]? types, ParameterModifier[]? modifiers)
Definition Module.cs:149
virtual FieldInfo[] GetFields(BindingFlags bindingFlags)
Definition Module.cs:185
MethodBase? ResolveMethod(int metadataToken)
Definition Module.cs:271
virtual Type[] FindTypes(TypeFilter? filter, object? filterCriteria)
Definition Module.cs:215
override string ToString()
Definition Module.cs:344
static readonly TypeFilter FilterTypeName
Definition Module.cs:10
virtual bool IsDefined(Type attributeType, bool inherit)
Definition Module.cs:91
virtual ? Type GetType(string className, bool ignoreCase)
Definition Module.cs:203
virtual Guid ModuleVersionId
Definition Module.cs:49
Type ResolveType(int metadataToken)
Definition Module.cs:295
virtual bool IsResource()
Definition Module.cs:86
virtual IList< CustomAttributeData > GetCustomAttributesData()
Definition Module.cs:96
virtual Type ResolveType(int metadataToken, Type[]? genericTypeArguments, Type[]? genericMethodArguments)
Definition Module.cs:301
override bool Equals(object? o)
Definition Module.cs:311
virtual ? MethodBase ResolveMethod(int metadataToken, Type[]? genericTypeArguments, Type[]? genericMethodArguments)
Definition Module.cs:277
virtual string ResolveString(int metadataToken)
Definition Module.cs:289
static bool FilterTypeNameImpl(Type cls, object filterCriteria, StringComparison comparison)
Definition Module.cs:349
virtual ? FieldInfo ResolveField(int metadataToken, Type[]? genericTypeArguments, Type[]? genericMethodArguments)
Definition Module.cs:253
override int GetHashCode()
Definition Module.cs:316
MethodInfo? GetMethod(string name, BindingFlags bindingAttr, Binder? binder, CallingConventions callConvention, Type[] types, ParameterModifier[]? modifiers)
Definition Module.cs:128
FieldInfo? GetField(string name)
Definition Module.cs:167
virtual MethodInfo[] GetMethods(BindingFlags bindingFlags)
Definition Module.cs:161
virtual object[] GetCustomAttributes(bool inherit)
Definition Module.cs:101
virtual ? MemberInfo ResolveMember(int metadataToken, Type[]? genericTypeArguments, Type[]? genericMethodArguments)
Definition Module.cs:265
virtual void GetObjectData(SerializationInfo info, StreamingContext context)
Definition Module.cs:306
MethodInfo? GetMethod(string name)
Definition Module.cs:112
virtual ModuleHandle GetModuleHandleImpl()
Definition Module.cs:76
virtual ? Type GetType(string className)
Definition Module.cs:197
MethodInfo[] GetMethods()
Definition Module.cs:155
virtual void GetPEKind(out PortableExecutableKinds peKind, out ImageFileMachine machine)
Definition Module.cs:81
MemberInfo? ResolveMember(int metadataToken)
Definition Module.cs:259
virtual string Name
Definition Module.cs:33
virtual byte[] ResolveSignature(int metadataToken)
Definition Module.cs:283
virtual ? FieldInfo GetField(string name, BindingFlags bindingAttr)
Definition Module.cs:173
virtual object[] GetCustomAttributes(Type attributeType, bool inherit)
Definition Module.cs:106
static string InvalidFilterCriteriaException_CritString
Definition SR.cs:1840
Definition SR.cs:7
delegate bool TypeFilter(Type m, object? filterCriteria)
static readonly ModuleHandle EmptyHandle