private IEnumerable <TypeDependency> GetIllegalDependencies(string baseFolder, IEnumerable <string> sourceFiles, IEnumerable <string> referencedAssemblies) { var dependencyAnalyzerFactory = new DependencyAnalyzerFactory(DebugMessageHandler); var dependencyAnalyzer = dependencyAnalyzerFactory.CreateInProcess(baseFolder, _typeDependencyEnumerator); return(dependencyAnalyzer.AnalyzeProject(sourceFiles, referencedAssemblies).OfType <IllegalDependencyMessage>().Select(i => i.IllegalDependency)); }
private static IDependencyAnalyzer CreateAnalyzer(string configFolderPath, bool useOutOfProcessAnalyzer) { var typeDependencyEnumerator = new Roslyn2TypeDependencyEnumerator(LogTraceToConsole); var analyzerFactory = new DependencyAnalyzerFactory(LogTraceToConsole); return(useOutOfProcessAnalyzer ? analyzerFactory.CreateOutOfProcess(configFolderPath, ServiceAddressProvider.ServiceAddress) : analyzerFactory.CreateInProcess(configFolderPath, typeDependencyEnumerator)); }