private static void PrintResults(File file, MetricVisitor metricAnalyzer, TextWriter writer)
{
writer.WriteLine ("File: " + file.FullPath);
writer.WriteLine (" - Total AST nodes: " + metricAnalyzer.TotalNodes);
writer.WriteLine (" - Echo statements: " + metricAnalyzer.EchoStatements);
writer.WriteLine (" - Sql query strings: " + metricAnalyzer.PotentialSQLQueries);
writer.WriteLine (" - Functions: " + file.Functions.Count);
foreach (var function in file.Functions.Values) {
writer.WriteLine (" - " + function);
}
writer.WriteLine (" - Classes: " + file.Classes.Count);
foreach (var classDef in file.Classes.Values.SelectMany(classDefinition => classDefinition)) {
writer.WriteLine (" - " + classDef.Name + " " + classDef.StartLine + " " + classDef.EndLine);
writer.WriteLine (" - Methods: " + classDef.Methods.Count);
}
writer.WriteLine (" - Interfaces: " + file.Interfaces.Count);
foreach (var interfaceDef in file.Interfaces.Values.SelectMany(interfaceDef => interfaceDef)) {
writer.WriteLine (" - " + interfaceDef.Name + " " + interfaceDef.StartLine + " " + interfaceDef.EndLine);
writer.WriteLine (" - Methods: " + interfaceDef.Methods.Count);
}
writer.WriteLine (" - Closures: " + file.Closures.Length);
foreach (var closure in file.Closures) {
writer.WriteLine (" - " + closure);
}
writer.WriteLine ();
}