Esempio n. 1
0
        internal static bool IsMatchFull(
            this PropertyInfo property,
            string name,
            Type returnType,
            Type[] parameterTypes,
            BindingFlags flags)
        {
            if (property == null)
            {
                return(false);
            }

            var getMethod = property.GetGetMethod((flags & BindingFlags.NonPublic) != 0);

            if (getMethod == null)
            {
                return(false);
            }

            return(property.Name.Equals(name, flags.GetComparison()) &&
                   DoesMatchFlags(getMethod, flags) &&
                   IsMatchExtended(getMethod, parameterTypes, callConvention: 0) &&
                   Util.DoTypesMatch(returnType, getMethod.ReturnType));
        }
Esempio n. 2
0
 internal static bool IsMatch(this FieldInfo field, string name, BindingFlags flags)
 {
     return((name?.Equals(field?.Name, flags.GetComparison()) ?? false) &&
            DoesMatchFlags(field, flags));
 }
Esempio n. 3
0
 internal static bool IsMatch(this Type type, string name, BindingFlags flags)
 {
     return((name?.Equals(type?.Name, flags.GetComparison()) ?? false) &&
            DoesMatchFlags(type, flags));
 }
Esempio n. 4
0
 internal static bool IsMatch(this EventInfo eventInfo, string name, BindingFlags flags)
 {
     return((name?.Equals(eventInfo?.Name, flags.GetComparison()) ?? false) &&
            DoesMatchFlags(eventInfo, flags));
 }
Esempio n. 5
0
 internal static bool IsMatch(this MemberInfo member, string name, BindingFlags flags)
 {
     return((name?.Equals(member?.Name, flags.GetComparison()) ?? false) &&
            DoesMatchFlags(member, flags));
 }