GetMethodGroup() public méthode

public GetMethodGroup ( MethodKey methodKey ) : MethodGroup
methodKey MethodKey
Résultat MethodGroup
Exemple #1
0
        public bool ShouldSkip(EventKey evt, InheritMap map, bool keepPublicApi, bool hidePrivateApi, bool markedOnly,
                               out string message)
        {
            // skip runtime special events
            if (evt.Event.IsRuntimeSpecialName)
            {
                message = "runtime special name";
                return(true);
            }

            var attribute = evt.Event.MarkedToRename();

            // skip runtime methods
            if (attribute != null)
            {
                message = "attribute";
                return(!attribute.Value);
            }

            var parent = evt.DeclaringType.MarkedToRename();

            if (parent != null)
            {
                message = "type attribute";
                return(!parent.Value);
            }

            if (markedOnly)
            {
                message = "MarkedOnly option in configuration";
                return(true);
            }

            if (ShouldForce(evt.TypeKey, TypeAffectFlags.AffectEvent, map))
            {
                message = "type rule in configuration";
                return(false);
            }

            if (forceEvents.IsMatch(evt, map))
            {
                message = "event rule in configuration";
                return(false);
            }

            if (ShouldSkip(evt.TypeKey, TypeAffectFlags.AffectEvent, map))
            {
                message = "type rule in configuration";
                return(true);
            }

            if (skipEvents.IsMatch(evt, map))
            {
                message = "event rule in configuration";
                return(true);
            }

            if (evt.Event.IsPublic() && (
                    evt.DeclaringType.IsTypePublic() ||
                    evt.Event.AddMethod != null && map.GetMethodGroup(new MethodKey(evt.Event.AddMethod))?.Methods?.FirstOrDefault(m => m.DeclaringType.IsTypePublic()) != null ||
                    evt.Event.RemoveMethod != null && map.GetMethodGroup(new MethodKey(evt.Event.RemoveMethod))?.Methods?.FirstOrDefault(m => m.DeclaringType.IsTypePublic()) != null
                    ))
            {
                message = "KeepPublicApi option in configuration";
                return(keepPublicApi);
            }

            message = "HidePrivateApi option in configuration";
            return(!hidePrivateApi);
        }
Exemple #2
0
        public bool ShouldSkipParams(MethodKey method, InheritMap map, bool keepPublicApi, bool hidePrivateApi,
                                     bool markedOnly, out string message)
        {
            var attribute = method.Method.MarkedToRename();

            // skip runtime methods
            if (attribute != null)
            {
                message = "attribute";
                return(!attribute.Value);
            }

            var parent = method.DeclaringType.MarkedToRename();

            if (parent != null)
            {
                message = "type attribute";
                return(!parent.Value);
            }

            if (markedOnly)
            {
                message = "MarkedOnly option in configuration";
                return(true);
            }

            if (ShouldForce(method.TypeKey, TypeAffectFlags.AffectMethod, map))
            {
                message = "type rule in configuration";
                return(false);
            }

            if (forceMethods.IsMatch(method, map))
            {
                message = "method rule in configuration";
                return(false);
            }

            if (ShouldSkip(method.TypeKey, TypeAffectFlags.AffectMethod, map))
            {
                message = "type rule in configuration";
                return(true);
            }

            if (skipMethods.IsMatch(method, map))
            {
                message = "method rule in configuration";
                return(true);
            }

            if (method.Method.IsPublic() && (
                    method.DeclaringType.IsTypePublic() ||
                    map.GetMethodGroup(method)?.Methods.FirstOrDefault(m => m.DeclaringType.IsTypePublic()) != null
                    ))
            {
                message = "KeepPublicApi option in configuration";
                return(keepPublicApi);
            }

            message = "HidePrivateApi option in configuration";
            return(!hidePrivateApi);
        }
Exemple #3
0
        public bool ShouldSkip(PropertyKey prop, InheritMap map, bool keepPublicApi, bool hidePrivateApi,
                               bool markedOnly, out string message)
        {
            if (prop.Property.IsRuntimeSpecialName)
            {
                message = "runtime special name";
                return(true);
            }

            var attribute = prop.Property.MarkedToRename();

            if (attribute != null)
            {
                message = "attribute";
                return(!attribute.Value);
            }

            var parent = prop.DeclaringType.MarkedToRename();

            if (parent != null)
            {
                message = "type attribute";
                return(!parent.Value);
            }

            if (markedOnly)
            {
                message = "MarkedOnly option in configuration";
                return(true);
            }

            if (ShouldForce(prop.TypeKey, TypeAffectFlags.AffectProperty, map))
            {
                message = "type rule in configuration";
                return(false);
            }

            if (forceProperties.IsMatch(prop, map))
            {
                message = "property rule in configuration";
                return(false);
            }

            if (ShouldSkip(prop.TypeKey, TypeAffectFlags.AffectProperty, map))
            {
                message = "type rule in configuration";
                return(true);
            }

            if (skipProperties.IsMatch(prop, map))
            {
                message = "property rule in configuration";
                return(true);
            }

            if (prop.Property.IsPublic() && (
                    prop.DeclaringType.IsTypePublic() ||
                    prop.Property.GetMethod != null && map.GetMethodGroup(new MethodKey(prop.Property.GetMethod))?.Methods?.FirstOrDefault(m => m.DeclaringType.IsTypePublic()) != null ||
                    prop.Property.SetMethod != null && map.GetMethodGroup(new MethodKey(prop.Property.SetMethod))?.Methods?.FirstOrDefault(m => m.DeclaringType.IsTypePublic()) != null
                    ))
            {
                message = "KeepPublicApi option in configuration";
                return(keepPublicApi);
            }

            message = "HidePrivateApi option in configuration";
            return(!hidePrivateApi);
        }