Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ GetMethodImplCommon()

MethodInfo System.RuntimeType.GetMethodImplCommon ( string name,
int genericParameterCount,
BindingFlags bindingAttr,
Binder binder,
CallingConventions callConv,
Type[] types,
ParameterModifier[] modifiers )
inlineprivate

Definition at line 2376 of file RuntimeType.cs.

2377 {
2379 if (methodCandidates.Count == 0)
2380 {
2381 return null;
2382 }
2383 MethodBase[] match;
2384 if (types == null || types.Length == 0)
2385 {
2387 if (methodCandidates.Count == 1)
2388 {
2389 return methodInfo;
2390 }
2391 if (types == null)
2392 {
2393 for (int i = 1; i < methodCandidates.Count; i++)
2394 {
2397 {
2398 throw new AmbiguousMatchException(SR.Arg_AmbiguousMatchException);
2399 }
2400 }
2401 match = methodCandidates.ToArray();
2403 }
2404 }
2405 if (binder == null)
2406 {
2407 binder = Type.DefaultBinder;
2408 }
2410 match = methodCandidates.ToArray();
2411 return binder2.SelectMethod(bindingAttr, match, types, modifiers) as MethodInfo;
2412 }
static MethodBase FindMostDerivedNewSlotMeth(MethodBase[] match, int cMatches)
static bool CompareMethodSig(MethodBase m1, MethodBase m2)
ListBuilder< MethodInfo > GetMethodCandidates(string name, int genericParameterCount, BindingFlags bindingAttr, CallingConventions callConv, Type[] types, bool allowPrefixLookup)

References System.SR.Arg_AmbiguousMatchException, System.DefaultBinder.CompareMethodSig(), System.Collections.Generic.Dictionary< TKey, TValue >.Count, System.Type.DefaultBinder, System.DefaultBinder.FindMostDerivedNewSlotMeth(), System.RuntimeType.GetMethodCandidates(), and System.match.

Referenced by System.RuntimeType.GetMethodImpl(), and System.RuntimeType.GetMethodImpl().