model: intro `MModule::first_real_mmodule` to get the first non-fictive module
[nit.git] / src / metrics / mendel_metrics.nit
index 814f8cb..1ee1db2 100644 (file)
 #  in Proceedings of the 16th IEEE International Conference on Program Comprehension (OCPC'08)
 module mendel_metrics
 
-import model
 import metrics_base
 import mclasses_metrics
-import phase
-import frontend
+import modelize
 
 redef class ToolContext
-       var mendel_metrics_phase = new MendelMetricsPhase(self, null)
+       var mendel_metrics_phase: Phase = new MendelMetricsPhase(self, null)
 end
 
 private class MendelMetricsPhase
@@ -104,7 +102,8 @@ private class MendelMetricsPhase
                end
 
                if csv then
-                       var csvh = new CSVDocument
+                       var csvh = new CsvDocument
+                       csvh.format = new CsvFormat('"', ';', "\n")
                        csvh.header = ["povr", "ovr", "pext", "ext", "pspe", "spe", "prep", "rep", "eq"]
                        for mclass in mclasses do
                                var povr = mclass.is_pure_overrider(vis).object_id
@@ -116,7 +115,7 @@ private class MendelMetricsPhase
                                var prep = mclass.is_pure_replacer(vis).object_id
                                var rep = mclass.is_replacer(vis).object_id
                                var eq = mclass.is_equal(vis).object_id
-                               csvh.add_line(povr, ovr, pext, ext, pspe, spe, prep, rep, eq)
+                               csvh.add_record(povr, ovr, pext, ext, pspe, spe, prep, rep, eq)
                        end
                        csvh.save("{out}/inheritance_behaviour.csv")
                end