private TypeMetricsWithMethodMetrics TypeAndMethods(PdbReader pdb, IMetadataHost host, INamedTypeDefinition type) { var typeAndMethods = new TypeMetricsWithMethodMetrics(); typeAndMethods.AddMethodReports(AnalyzeMethods(type, pdb, host)); typeAndMethods.Type = AnalyzeType(type, pdb, typeAndMethods.Methods); return typeAndMethods; }
internal void AddTypeReport(TypeMetricsWithMethodMetrics typeMertics) { if (!typeReports.ContainsKey(typeMertics.Type.FullName)) { typeReports.Add(typeMertics.Type.FullName, typeMertics); ShareTheKnowledgeWithMethodsOf(typeMertics); CommonKnowledge.UpdateFor(typeMertics.Type); } }
private void ShareTheKnowledgeWithMethodsOf(TypeMetricsWithMethodMetrics typeMertics) { typeMertics.Type.CommonKnowledge = CommonKnowledge; foreach (var method in typeMertics.Methods) { CommonKnowledge.UpdateFor(method); method.CommonKnowledge = CommonKnowledge; if (!methodToType.ContainsKey(method)) { methodToType.Add(method, typeMertics.Type); } } }
internal void AddTypeReport(TypeMetricsWithMethodMetrics typeMertics) { if (!typeReports.ContainsKey(typeMertics.Itself.FullName)) { typeReports.Add(typeMertics.Itself.FullName, typeMertics); ShareTheKnowledgeWithMethodsOf(typeMertics); CommonKnowledge.UpdateFor(typeMertics.Itself); } }
private void ShareTheKnowledgeWithMethodsOf(TypeMetricsWithMethodMetrics typeMertics) { typeMertics.Itself.CommonKnowledge = CommonKnowledge; foreach (var method in typeMertics.Methods) { CommonKnowledge.UpdateFor(method); method.CommonKnowledge = CommonKnowledge; } }