Merge: doc: fixed some typos and other misc. corrections
[nit.git] / src / metrics / tables_metrics.nit
index dd1d8eb..eac5853 100644 (file)
 # Metrics on table generation
 module tables_metrics
 
-import model
-private import metrics_base
+import metrics_base
+
+redef class ToolContext
+       var tables_metrics_phase: Phase = new TablesMetricsPhase(self, null)
+end
+
+private class TablesMetricsPhase
+       super Phase
+       redef fun process_mainmodule(mainmodule, given_mmodules)
+       do
+               if not toolcontext.opt_tables.value and not toolcontext.opt_all.value then return
+               compute_tables_metrics(mainmodule)
+       end
+end
 
 # Print class tables metrics for the classes of the program main
 fun compute_tables_metrics(main: MModule)
 do
-       var model = main.model
-
        var nc = 0 # Number of runtime classes
        var nl = 0 # Number of usages of class definitions (a class definition can be used more than once)
        var nhp = 0 # Number of usages of properties (a property can be used more than once)