private static ParsedSourceFilesCollection ParseProjectSourceFiles(Project targetProject) { var results = new ParsedSourceFilesCollection(); foreach (var document in targetProject.Documents) { var tree = document.GetSyntaxTreeAsync().Result; if (tree.HasCompilationUnitRoot) { var root = tree.GetCompilationUnitRoot(); var model = document.GetSemanticModelAsync().Result; var semanticInterpreter = new SemanticCache(targetProject, model); var elements = ParseFileContent(root, semanticInterpreter); var relativePathToFile = targetProject.GetRelativePathToFile(document.FilePath); results[relativePathToFile] = new SourceFileParsingInfo(relativePathToFile, elements); } } return results; }