Example #1
0
        public static bool RequiresDataFlowAnalysis(IMethodSymbol method)
        {
            if (method.GetDynamicallyAccessedMemberTypes() != DynamicallyAccessedMemberTypes.None)
            {
                return(true);
            }

            if (GetMethodReturnValueAnnotation(method) != DynamicallyAccessedMemberTypes.None)
            {
                return(true);
            }

            foreach (var parameter in method.Parameters)
            {
                if (GetMethodParameterAnnotation(parameter) != DynamicallyAccessedMemberTypes.None)
                {
                    return(true);
                }
            }

            foreach (var typeParameter in method.TypeParameters)
            {
                if (typeParameter.GetDynamicallyAccessedMemberTypes() != DynamicallyAccessedMemberTypes.None)
                {
                    return(true);
                }
            }

            return(false);
        }