Bus.Dispatch.AssemblyScanner.FindMethodsInAssemblyFromTypes C# (CSharp) Method

FindMethodsInAssemblyFromTypes() private method

private FindMethodsInAssemblyFromTypes ( Predicate typeCondition, string methodName, Type[]>.Func genericTypeArguments ) : List
typeCondition Predicate
methodName string
genericTypeArguments Type[]>.Func
return List
        private List<MethodInfo> FindMethodsInAssemblyFromTypes(Predicate<Type> typeCondition, string methodName, Func<Type, Type[]> genericTypeArguments)
        {
            var methods = new List<MethodInfo>();
            var assemblies = GetAssemblies();
            foreach (var assembly in assemblies)
            {
                foreach (var type in assembly.GetTypes())
                {
                    if (typeCondition(type))
                        methods.Add(type.GetMethod(methodName, genericTypeArguments(type)));
                }
            }
            return methods;
        }