Merge: SharedPreferences: Nit API wrapping android SharedPreferences class
[nit.git] / tests / sav / nitmetrics_args1.res
index 287cb4c..4540753 100644 (file)
@@ -1,4 +1,3 @@
-Runtime error: Assert failed (../src/metrics/metrics_base.nit:223)
 *** METRICS ***
 
 # MModules metrics
@@ -10,103 +9,186 @@ Runtime error: Assert failed (../src/metrics/metrics_base.nit:223)
          max: base_simple3 (0)
          min: base_simple3 (0)
          std: 0.0
+         sum: 0
        mnop: number of parent modules
          avg: 0.0
          max: base_simple3 (0)
          min: base_simple3 (0)
          std: 0.0
+         sum: 0
        mnoc: number of child modules
-         avg: 0.0
-         max: base_simple3 (0)
-         min: base_simple3 (0)
+         avg: 1.0
+         max: base_simple3 (1)
+         min: base_simple3 (1)
          std: 0.0
+         sum: 1
        mnod: number of descendant modules
-         avg: 0.0
-         max: base_simple3 (0)
-         min: base_simple3 (0)
+         avg: 1.0
+         max: base_simple3 (1)
+         min: base_simple3 (1)
          std: 0.0
+         sum: 1
        mdit: depth in module tree
          avg: 0.0
          max: base_simple3 (0)
          min: base_simple3 (0)
          std: 0.0
+         sum: 0
        mnbi: number of introduction in module
          avg: 7.0
          max: base_simple3 (7)
          min: base_simple3 (7)
          std: 0.0
+         sum: 7
        mnbr: number of refinement in module
-         avg: 1.0
-         max: base_simple3 (1)
-         min: base_simple3 (1)
+         avg: 0.0
+         max: base_simple3 (0)
+         min: base_simple3 (0)
          std: 0.0
+         sum: 0
        mnbcc: number of concrete class in module (intro + redef)
          avg: 4.0
          max: base_simple3 (4)
          min: base_simple3 (4)
          std: 0.0
+         sum: 4
        mnbac: number of abstract class in module (intro + redef)
          avg: 0.0
          max: base_simple3 (0)
          min: base_simple3 (0)
          std: 0.0
+         sum: 0
        mnbic: number of interface in module (intro + redef)
-         avg: 2.0
-         max: base_simple3 (2)
-         min: base_simple3 (2)
+         avg: 1.0
+         max: base_simple3 (1)
+         min: base_simple3 (1)
          std: 0.0
+         sum: 1
 
- ## global metrics
+ ## project base_empty_module
+  `- group base_empty_module
        mnoa: number of ancestor modules
          avg: 0.0
-         max: base_simple3 (0)
-         min: base_simple3 (0)
+         max: base_empty_module (0)
+         min: base_empty_module (0)
          std: 0.0
+         sum: 0
        mnop: number of parent modules
          avg: 0.0
-         max: base_simple3 (0)
-         min: base_simple3 (0)
+         max: base_empty_module (0)
+         min: base_empty_module (0)
          std: 0.0
+         sum: 0
        mnoc: number of child modules
+         avg: 1.0
+         max: base_empty_module (1)
+         min: base_empty_module (1)
+         std: 0.0
+         sum: 1
+       mnod: number of descendant modules
+         avg: 1.0
+         max: base_empty_module (1)
+         min: base_empty_module (1)
+         std: 0.0
+         sum: 1
+       mdit: depth in module tree
+         avg: 0.0
+         max: base_empty_module (0)
+         min: base_empty_module (0)
+         std: 0.0
+         sum: 0
+       mnbi: number of introduction in module
+         avg: 1.0
+         max: base_empty_module (1)
+         min: base_empty_module (1)
+         std: 0.0
+         sum: 1
+       mnbr: number of refinement in module
+         avg: 0.0
+         max: base_empty_module (0)
+         min: base_empty_module (0)
+         std: 0.0
+         sum: 0
+       mnbcc: number of concrete class in module (intro + redef)
+         avg: 1.0
+         max: base_empty_module (1)
+         min: base_empty_module (1)
+         std: 0.0
+         sum: 1
+       mnbac: number of abstract class in module (intro + redef)
+         avg: 0.0
+         max: base_empty_module (0)
+         min: base_empty_module (0)
+         std: 0.0
+         sum: 0
+       mnbic: number of interface in module (intro + redef)
+         avg: 0.0
+         max: base_empty_module (0)
+         min: base_empty_module (0)
+         std: 0.0
+         sum: 0
+
+ ## global metrics
+       mnoa: number of ancestor modules
          avg: 0.0
          max: base_simple3 (0)
          min: base_simple3 (0)
          std: 0.0
-       mnod: number of descendant modules
+         sum: 0
+       mnop: number of parent modules
          avg: 0.0
          max: base_simple3 (0)
          min: base_simple3 (0)
          std: 0.0
+         sum: 0
+       mnoc: number of child modules
+         avg: 1.0
+         max: base_simple3 (1)
+         min: base_simple3 (1)
+         std: 0.0
+         sum: 2
+       mnod: number of descendant modules
+         avg: 1.0
+         max: base_simple3 (1)
+         min: base_simple3 (1)
+         std: 0.0
+         sum: 2
        mdit: depth in module tree
          avg: 0.0
          max: base_simple3 (0)
          min: base_simple3 (0)
          std: 0.0
+         sum: 0
        mnbi: number of introduction in module
-         avg: 14.0
+         avg: 4.0
          max: base_simple3 (7)
-         min: base_simple3 (7)
-         std: 7.0
+         min: base_empty_module (1)
+         std: 3.0
+         sum: 8
        mnbr: number of refinement in module
-         avg: 2.0
-         max: base_simple3 (1)
-         min: base_simple3 (1)
-         std: 1.0
+         avg: 0.0
+         max: base_simple3 (0)
+         min: base_simple3 (0)
+         std: 0.0
+         sum: 0
        mnbcc: number of concrete class in module (intro + redef)
-         avg: 8.0
+         avg: 2.0
          max: base_simple3 (4)
-         min: base_simple3 (4)
-         std: 4.0
+         min: base_empty_module (1)
+         std: 1.581
+         sum: 5
        mnbac: number of abstract class in module (intro + redef)
          avg: 0.0
          max: base_simple3 (0)
          min: base_simple3 (0)
          std: 0.0
+         sum: 0
        mnbic: number of interface in module (intro + redef)
-         avg: 4.0
-         max: base_simple3 (2)
-         min: base_simple3 (2)
-         std: 2.0
+         avg: 0.0
+         max: base_simple3 (1)
+         min: base_empty_module (0)
+         std: 0.707
+         sum: 1
 
 # MClasses metrics
 
@@ -117,288 +199,394 @@ Runtime error: Assert failed (../src/metrics/metrics_base.nit:223)
          max: Bool (1)
          min: Object (0)
          std: 0.926
+         sum: 6
        cnop: number of parent classes
          avg: 0.0
          max: Bool (1)
          min: Object (0)
          std: 0.926
+         sum: 6
        cnoc: number of child classes
          avg: 0.0
          max: Object (6)
          min: Bool (0)
          std: 2.268
+         sum: 6
        cnod: number of descendant classes
          avg: 0.0
          max: Object (6)
          min: Bool (0)
          std: 2.268
+         sum: 6
        cdit: depth in class tree
          avg: 0.0
          max: Bool (1)
          min: Object (0)
          std: 0.926
+         sum: 6
+       cnbp: number of accessible properties (inherited + local)
+         avg: 4.0
+         max: C (8)
+         min: Object (3)
+         std: 2.0
+         sum: 34
+       cnba: number of accessible attributes (inherited + local)
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
        cnbip: number of introduced properties
          avg: 2.0
-         max: C (7)
+         max: C (5)
          min: Bool (0)
-         std: 2.42
+         std: 1.69
+         sum: 16
        cnbrp: number of redefined properties
          avg: 0.0
          max: Object (0)
          min: Object (0)
          std: 0.0
+         sum: 0
        cnbhp: number of inherited properties
          avg: 2.0
          max: Bool (3)
          min: Object (0)
          std: 1.195
+         sum: 18
+
+ ## project base_empty_module
+  `- group base_empty_module
+       cnoa: number of ancestor classes
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cnop: number of parent classes
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cnoc: number of child classes
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cnod: number of descendant classes
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cdit: depth in class tree
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cnbp: number of accessible properties (inherited + local)
+         avg: 1.0
+         max: Object (1)
+         min: Object (1)
+         std: 0.0
+         sum: 1
+       cnba: number of accessible attributes (inherited + local)
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cnbip: number of introduced properties
+         avg: 1.0
+         max: Object (1)
+         min: Object (1)
+         std: 0.0
+         sum: 1
+       cnbrp: number of redefined properties
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cnbhp: number of inherited properties
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
 
  ## global metrics
        cnoa: number of ancestor classes
          avg: 0.0
          max: Bool (1)
          min: Object (0)
-         std: 0.926
+         std: 0.866
+         sum: 6
        cnop: number of parent classes
          avg: 0.0
          max: Bool (1)
          min: Object (0)
-         std: 0.926
+         std: 0.866
+         sum: 6
        cnoc: number of child classes
          avg: 0.0
          max: Object (6)
          min: Bool (0)
-         std: 2.268
+         std: 2.121
+         sum: 6
        cnod: number of descendant classes
          avg: 0.0
          max: Object (6)
          min: Bool (0)
-         std: 2.268
+         std: 2.121
+         sum: 6
        cdit: depth in class tree
          avg: 0.0
          max: Bool (1)
          min: Object (0)
-         std: 0.926
+         std: 0.866
+         sum: 6
+       cnbp: number of accessible properties (inherited + local)
+         avg: 4.0
+         max: C (8)
+         min: Object (1)
+         std: 2.151
+         sum: 35
+       cnba: number of accessible attributes (inherited + local)
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
        cnbip: number of introduced properties
          avg: 2.0
-         max: C (7)
+         max: C (5)
          min: Bool (0)
-         std: 2.42
+         std: 1.62
+         sum: 17
        cnbrp: number of redefined properties
          avg: 0.0
          max: Object (0)
          min: Object (0)
          std: 0.0
+         sum: 0
        cnbhp: number of inherited properties
          avg: 2.0
          max: Bool (3)
          min: Object (0)
-         std: 1.195
+         std: 1.323
+         sum: 18
 --- Poset metrics ---
 ## Module importation hierarchy
-Number of nodes: 1
-Number of edges: 1 (1.00 per node)
-Number of direct edges: 0 (0.0 per node)
+Number of nodes: 3
+Number of edges: 5 (1.66 per node)
+Number of direct edges: 2 (0.66 per node)
 Distribution of greaters
- population: 1
+ population: 3
  minimum value: 1
- maximum value: 1
- total value: 1
- average value: 1.00
+ maximum value: 3
+ total value: 5
+ average value: 1.66
  distribution:
-  <=1: sub-population=1 (100.00%); cumulated value=1 (100.00%)
+  <=1: sub-population=2 (66.66%); cumulated value=2 (40.00%)
+  <=4: sub-population=1 (33.33%); cumulated value=3 (60.00%)
 Distribution of direct greaters
- population: 1
+ population: 3
  minimum value: 0
- maximum value: 0
- total value: 0
- average value: 0.0
+ maximum value: 2
+ total value: 2
+ average value: 0.66
  distribution:
-  <=0: sub-population=1 (100.00%); cumulated value=0 (na%)
+  <=0: sub-population=2 (66.66%); cumulated value=0 (0.0%)
+  <=2: sub-population=1 (33.33%); cumulated value=2 (100.00%)
 Distribution of smallers
- population: 1
+ population: 3
  minimum value: 1
- maximum value: 1
- total value: 1
- average value: 1.00
+ maximum value: 2
+ total value: 5
+ average value: 1.66
  distribution:
-  <=1: sub-population=1 (100.00%); cumulated value=1 (100.00%)
+  <=1: sub-population=1 (33.33%); cumulated value=1 (20.00%)
+  <=2: sub-population=2 (66.66%); cumulated value=4 (80.00%)
 Distribution of direct smallers
- population: 1
+ population: 3
  minimum value: 0
- maximum value: 0
- total value: 0
- average value: 0.0
+ maximum value: 1
+ total value: 2
+ average value: 0.66
  distribution:
-  <=0: sub-population=1 (100.00%); cumulated value=0 (na%)
+  <=0: sub-population=1 (33.33%); cumulated value=0 (0.0%)
+  <=1: sub-population=2 (66.66%); cumulated value=2 (100.00%)
 ## Classdef hierarchy
 Number of nodes: 8
-Number of edges: 22 (2.75 per node)
-Number of direct edges: 7 (0.87 per node)
+Number of edges: 14 (1.75 per node)
+Number of direct edges: 6 (0.75 per node)
 Distribution of greaters
  population: 8
- minimum value: 2
- maximum value: 3
- total value: 22
- average value: 2.75
+ minimum value: 1
+ maximum value: 2
+ total value: 14
+ average value: 1.75
  distribution:
-  <=2: sub-population=2 (25.00%); cumulated value=4 (18.18%)
-  <=4: sub-population=6 (75.00%); cumulated value=18 (81.81%)
+  <=1: sub-population=2 (25.00%); cumulated value=2 (14.28%)
+  <=2: sub-population=6 (75.00%); cumulated value=12 (85.71%)
 Distribution of direct greaters
  population: 8
  minimum value: 0
  maximum value: 1
- total value: 7
- average value: 0.87
+ total value: 6
+ average value: 0.75
  distribution:
-  <=0: sub-population=1 (12.50%); cumulated value=0 (0.0%)
-  <=1: sub-population=7 (87.50%); cumulated value=7 (100.00%)
+  <=0: sub-population=2 (25.00%); cumulated value=0 (0.0%)
+  <=1: sub-population=6 (75.00%); cumulated value=6 (100.00%)
 Distribution of smallers
  population: 8
  minimum value: 1
- maximum value: 8
- total value: 22
- average value: 2.75
+ maximum value: 7
+ total value: 14
+ average value: 1.75
  distribution:
-  <=1: sub-population=6 (75.00%); cumulated value=6 (27.27%)
-  <=8: sub-population=2 (25.00%); cumulated value=16 (72.72%)
+  <=1: sub-population=7 (87.50%); cumulated value=7 (50.00%)
+  <=8: sub-population=1 (12.50%); cumulated value=7 (50.00%)
 Distribution of direct smallers
  population: 8
  minimum value: 0
  maximum value: 6
- total value: 7
- average value: 0.87
+ total value: 6
+ average value: 0.75
  distribution:
-  <=0: sub-population=6 (75.00%); cumulated value=0 (0.0%)
-  <=1: sub-population=1 (12.50%); cumulated value=1 (14.28%)
-  <=8: sub-population=1 (12.50%); cumulated value=6 (85.71%)
+  <=0: sub-population=7 (87.50%); cumulated value=0 (0.0%)
+  <=8: sub-population=1 (12.50%); cumulated value=6 (100.00%)
 ## Class hierarchy
-Number of nodes: 7
-Number of edges: 13 (1.85 per node)
-Number of direct edges: 6 (0.85 per node)
+Number of nodes: 8
+Number of edges: 14 (1.75 per node)
+Number of direct edges: 6 (0.75 per node)
 Distribution of greaters
- population: 7
+ population: 8
  minimum value: 1
  maximum value: 2
- total value: 13
- average value: 1.85
+ total value: 14
+ average value: 1.75
  distribution:
-  <=1: sub-population=1 (14.28%); cumulated value=1 (7.69%)
-  <=2: sub-population=6 (85.71%); cumulated value=12 (92.30%)
+  <=1: sub-population=2 (25.00%); cumulated value=2 (14.28%)
+  <=2: sub-population=6 (75.00%); cumulated value=12 (85.71%)
 Distribution of direct greaters
- population: 7
+ population: 8
  minimum value: 0
  maximum value: 1
  total value: 6
- average value: 0.85
+ average value: 0.75
  distribution:
-  <=0: sub-population=1 (14.28%); cumulated value=0 (0.0%)
-  <=1: sub-population=6 (85.71%); cumulated value=6 (100.00%)
+  <=0: sub-population=2 (25.00%); cumulated value=0 (0.0%)
+  <=1: sub-population=6 (75.00%); cumulated value=6 (100.00%)
 Distribution of smallers
- population: 7
+ population: 8
  minimum value: 1
  maximum value: 7
- total value: 13
- average value: 1.85
+ total value: 14
+ average value: 1.75
  distribution:
-  <=1: sub-population=6 (85.71%); cumulated value=6 (46.15%)
-  <=8: sub-population=1 (14.28%); cumulated value=7 (53.84%)
+  <=1: sub-population=7 (87.50%); cumulated value=7 (50.00%)
+  <=8: sub-population=1 (12.50%); cumulated value=7 (50.00%)
 Distribution of direct smallers
- population: 7
+ population: 8
  minimum value: 0
  maximum value: 6
  total value: 6
- average value: 0.85
+ average value: 0.75
  distribution:
-  <=0: sub-population=6 (85.71%); cumulated value=0 (0.0%)
-  <=8: sub-population=1 (14.28%); cumulated value=6 (100.00%)
+  <=0: sub-population=7 (87.50%); cumulated value=0 (0.0%)
+  <=8: sub-population=1 (12.50%); cumulated value=6 (100.00%)
 --- AST Metrics ---
 ## All nodes of the AST
  population: 47
  minimum value: 1
  maximum value: 39
- total value: 254
- average value: 5.40
+ total value: 267
+ average value: 5.68
  distribution:
-  <=1: sub-population=14 (29.78%); cumulated value=14 (5.51%)
-  <=2: sub-population=6 (12.76%); cumulated value=12 (4.72%)
-  <=4: sub-population=9 (19.14%); cumulated value=29 (11.41%)
-  <=8: sub-population=10 (21.27%); cumulated value=61 (24.01%)
-  <=16: sub-population=4 (8.51%); cumulated value=44 (17.32%)
-  <=32: sub-population=3 (6.38%); cumulated value=55 (21.65%)
-  <=64: sub-population=1 (2.12%); cumulated value=39 (15.35%)
+  <=1: sub-population=10 (21.27%); cumulated value=10 (3.74%)
+  <=2: sub-population=9 (19.14%); cumulated value=18 (6.74%)
+  <=4: sub-population=10 (21.27%); cumulated value=34 (12.73%)
+  <=8: sub-population=9 (19.14%); cumulated value=54 (20.22%)
+  <=16: sub-population=5 (10.63%); cumulated value=55 (20.59%)
+  <=32: sub-population=3 (6.38%); cumulated value=57 (21.34%)
+  <=64: sub-population=1 (2.12%); cumulated value=39 (14.60%)
  list:
-  TId: 39 (15.35%)
-  AListExprs: 19 (7.48%)
-  APublicVisibility: 18 (7.08%)
-  ACallExpr: 18 (7.08%)
-  TClassid: 15 (5.90%)
-  TNumber: 10 (3.93%)
-  AIntExpr: 10 (3.93%)
-  AType: 9 (3.54%)
-  TKwend: 8 (3.14%)
-  ASignature: 8 (3.14%)
+  TId: 39 (14.60%)
+  APublicVisibility: 20 (7.49%)
+  AListExprs: 19 (7.11%)
+  ACallExpr: 18 (6.74%)
+  TClassid: 16 (5.99%)
+  TKwend: 10 (3.74%)
+  TNumber: 10 (3.74%)
+  ADecIntExpr: 10 (3.74%)
+  AType: 9 (3.37%)
+  ASignature: 8 (2.99%)
   ...
-  AModule: 1 (0.39%)
-  AMainClassdef: 1 (0.39%)
-  ATopClassdef: 1 (0.39%)
-  TKwreturn: 1 (0.39%)
-  AReturnExpr: 1 (0.39%)
-  TKwinterface: 1 (0.39%)
-  ANoImport: 1 (0.39%)
-  AInterfaceClasskind: 1 (0.39%)
-  AMainMethPropdef: 1 (0.39%)
-  TKwimport: 1 (0.39%)
+  ASelfExpr: 1 (0.37%)
+  ACallAssignExpr: 1 (0.37%)
+  TKwself: 1 (0.37%)
+  AReturnExpr: 1 (0.37%)
+  AInterfaceClasskind: 1 (0.37%)
+  TKwinterface: 1 (0.37%)
+  TKwreturn: 1 (0.37%)
+  AInternMethPropdef: 1 (0.37%)
+  AMainMethPropdef: 1 (0.37%)
+  AMainClassdef: 1 (0.37%)
 ## All identifiers of the AST
  population: 19
  minimum value: 1
  maximum value: 11
- total value: 54
- average value: 2.84
+ total value: 55
+ average value: 2.89
  distribution:
-  <=1: sub-population=2 (10.52%); cumulated value=2 (3.70%)
-  <=2: sub-population=12 (63.15%); cumulated value=24 (44.44%)
-  <=4: sub-population=3 (15.78%); cumulated value=10 (18.51%)
-  <=8: sub-population=1 (5.26%); cumulated value=7 (12.96%)
-  <=16: sub-population=1 (5.26%); cumulated value=11 (20.37%)
+  <=1: sub-population=1 (5.26%); cumulated value=1 (1.81%)
+  <=2: sub-population=13 (68.42%); cumulated value=26 (47.27%)
+  <=4: sub-population=3 (15.78%); cumulated value=10 (18.18%)
+  <=8: sub-population=1 (5.26%); cumulated value=7 (12.72%)
+  <=16: sub-population=1 (5.26%); cumulated value=11 (20.00%)
  list:
-  output: 11 (20.37%)
-  Int: 7 (12.96%)
-  run: 4 (7.40%)
-  c: 3 (5.55%)
-  val: 3 (5.55%)
-  i: 2 (3.70%)
-  bar: 2 (3.70%)
-  foo: 2 (3.70%)
-  val2: 2 (3.70%)
-  val1: 2 (3.70%)
-  C: 2 (3.70%)
-  v: 2 (3.70%)
-  baz: 2 (3.70%)
-  a: 2 (3.70%)
-  A: 2 (3.70%)
-  B: 2 (3.70%)
-  b: 2 (3.70%)
-  Object: 1 (1.85%)
-  Bool: 1 (1.85%)
+  output: 11 (20.00%)
+  Int: 7 (12.72%)
+  run: 4 (7.27%)
+  c: 3 (5.45%)
+  val: 3 (5.45%)
+  i: 2 (3.63%)
+  bar: 2 (3.63%)
+  foo: 2 (3.63%)
+  val2: 2 (3.63%)
+  val1: 2 (3.63%)
+  C: 2 (3.63%)
+  v: 2 (3.63%)
+  baz: 2 (3.63%)
+  a: 2 (3.63%)
+  A: 2 (3.63%)
+  B: 2 (3.63%)
+  b: 2 (3.63%)
+  Object: 2 (3.63%)
+  Bool: 1 (1.81%)
 --- Metrics of refinement usage ---
-Number of modules: 1
+Number of modules: 3
 
-Number of classes: 7
-  Number of interface kind: 1 (14.28%)
-  Number of enum kind: 2 (28.57%)
-  Number of class kind: 4 (57.14%)
+Number of classes: 8
+  Number of interface kind: 1 (12.50%)
+  Number of enum kind: 2 (25.00%)
+  Number of class kind: 5 (62.50%)
 
 Number of class definitions: 8
-Number of refined classes: 1 (14.28%)
-Average number of class refinments by classes: 0.14
-Average number of class refinments by refined classes: 1.00
+Number of refined classes: 0 (0.0%)
+Average number of class refinments by classes: 0.0
+Average number of class refinments by refined classes: na
 
-Number of properties: 19
-  Number of MAttribute: 3 (15.78%)
-  Number of MMethod: 16 (84.21%)
+Number of properties: 20
+  Number of MAttribute: 3 (15.00%)
+  Number of MMethod: 17 (85.00%)
 
-Number of property definitions: 19
+Number of property definitions: 20
 Number of redefined properties: 0 (0.0%)
 Average number of property redefinitions by property: 0.0
 Average number of property redefinitions by redefined property: na
@@ -418,36 +606,70 @@ Statistics of type usage:
   C: 1 (11.11%)
   B: 1 (11.11%)
   A: 1 (11.11%)
---- Sends on Nullable Receiver ---
-Total number of sends: 19
-Number of sends on a nullable receiver: 0 (0.0%)
-Number of buggy sends (cannot determine the type of the receiver): 0 (0.0%)
 --- Explicit vs. Implicit Self ---
 Total number of self: 5
 Total number of implicit self: 4 (80.00%)
 --- Construction of tables ---
-Number of runtime classes: 6 (excluding interfaces and abstract classes)
-Average number of composing class definition by runtime class: 3.00
-Total size of tables (classes and instances): 34 (not including stuff like info for subtyping or call-next-method)
-Average size of table by runtime class: 5.66
-Values never redefined: 34 (100.00%)
+Number of runtime classes: 7 (excluding interfaces and abstract classes)
+Average number of composing class definition by runtime class: 1.85
+Total size of tables (classes and instances): 35 (not including stuff like info for subtyping or call-next-method)
+Average size of table by runtime class: 5.00
+Values never redefined: 35 (100.00%)
 
 # Mendel metrics
-       large mclasses (threshold: 2.291)
+       large mclasses (threshold: 2.195)
           B: 3
           C: 3
-       budding mclasses (threshold: 0.924)
+       budding mclasses (threshold: 0.869)
           B: 1.0
           C: 1.0
-       blooming mclasses (threshold: 2.581)
+       blooming mclasses (threshold: 2.388)
           B: 3.0
           C: 3.0
-       blooming mclasses (threshold: 2.581)
+       blooming mclasses (threshold: 2.388)
           B: 3.0
           C: 3.0
 generating out/nitmetrics_args1.write/project_hierarchy.dot
 generating out/nitmetrics_args1.write/module_hierarchy.dot
 
+# Nullable metrics
+
+ ## project base_simple3
+  `- group base_simple3
+       cnba: number of accessible attributes (inherited + local)
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cnbna: number of accessible nullable attributes (inherited + local) -- nothing
+         sum: 0
+
+ ## project base_empty_module
+  `- group base_empty_module
+       cnba: number of accessible attributes (inherited + local)
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cnbna: number of accessible nullable attributes (inherited + local) -- nothing
+         sum: 0
+
+ ## global metrics
+       cnba: number of accessible attributes (inherited + local)
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cnbna: number of accessible nullable attributes (inherited + local) -- nothing
+         sum: 0
+--- Sends on Nullable Receiver ---
+Total number of sends: 19
+Number of sends on a nullable receiver: 0 (0.0%)
+Number of buggy sends (cannot determine the type of the receiver): 0 (0.0%)
+
 # Inheritance metrics
 
  ## project base_simple3
@@ -457,76 +679,184 @@ generating out/nitmetrics_args1.write/module_hierarchy.dot
          max: Object (0)
          min: Object (0)
          std: 0.0
+         sum: 0
        cnopc: number of class_kind parent
          avg: 0.0
          max: Object (0)
          min: Object (0)
          std: 0.0
+         sum: 0
        cnocc: number of class_kind children
          avg: 0.0
          max: Object (4)
          min: Bool (0)
          std: 1.512
+         sum: 4
        cnodc: number of class_kind descendants
          avg: 0.0
          max: Object (4)
          min: Bool (0)
          std: 1.512
+         sum: 4
        cnopi: number of interface_kind parent
          avg: 0.0
          max: Bool (1)
          min: Object (0)
          std: 0.926
+         sum: 6
        cnoci: number of interface_kind children
          avg: 0.0
          max: Object (0)
          min: Object (0)
          std: 0.0
+         sum: 0
        cnodi: number of interface_kind descendants
          avg: 0.0
          max: Object (0)
          min: Object (0)
          std: 0.0
+         sum: 0
        cditc: depth in class tree following only class, abstract, extern kind
          avg: 0.0
          max: Object (0)
          min: Object (0)
          std: 0.0
+         sum: 0
        cditi: depth in class tree following only interface_kind
          avg: 0.0
          max: Bool (1)
          min: Object (0)
          std: 0.926
+         sum: 6
        mdui: proportion of mclass defined using inheritance (has other parent than Object)
          avg: 0.0
          max: base_simple3 (0.0)
          min: base_simple3 (0.0)
          std: 0.0
+         sum: 0.0
        mduic: proportion of class_kind defined using inheritance
          avg: 0.0
          max: base_simple3 (0.0)
          min: base_simple3 (0.0)
          std: 0.0
+         sum: 0.0
        mduii: proportion of interface_kind defined using inheritance
          avg: 0.0
          max: base_simple3 (0.0)
          min: base_simple3 (0.0)
          std: 0.0
+         sum: 0.0
        mif: proportion of mclass inherited from
          avg: 0.143
          max: base_simple3 (0.143)
          min: base_simple3 (0.143)
          std: 0.0
+         sum: 0.143
        mifc: proportion of class_kind inherited from
          avg: 0.0
          max: base_simple3 (0.0)
          min: base_simple3 (0.0)
          std: 0.0
+         sum: 0.0
        mifi: proportion of interface_kind inherited from
          avg: 0.143
          max: base_simple3 (0.143)
          min: base_simple3 (0.143)
          std: 0.0
+         sum: 0.143
+
+ ## project base_empty_module
+  `- group base_empty_module
+       cnoac: number of class_kind ancestor
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cnopc: number of class_kind parent
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cnocc: number of class_kind children
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cnodc: number of class_kind descendants
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cnopi: number of interface_kind parent
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cnoci: number of interface_kind children
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cnodi: number of interface_kind descendants
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cditc: depth in class tree following only class, abstract, extern kind
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cditi: depth in class tree following only interface_kind
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       mdui: proportion of mclass defined using inheritance (has other parent than Object)
+         avg: 0.0
+         max: base_empty_module (0.0)
+         min: base_empty_module (0.0)
+         std: 0.0
+         sum: 0.0
+       mduic: proportion of class_kind defined using inheritance
+         avg: 0.0
+         max: base_empty_module (0.0)
+         min: base_empty_module (0.0)
+         std: 0.0
+         sum: 0.0
+       mduii: proportion of interface_kind defined using inheritance
+         avg: 0.0
+         max: base_empty_module (0.0)
+         min: base_empty_module (0.0)
+         std: 0.0
+         sum: 0.0
+       mif: proportion of mclass inherited from
+         avg: 0.0
+         max: base_empty_module (0.0)
+         min: base_empty_module (0.0)
+         std: 0.0
+         sum: 0.0
+       mifc: proportion of class_kind inherited from
+         avg: 0.0
+         max: base_empty_module (0.0)
+         min: base_empty_module (0.0)
+         std: 0.0
+         sum: 0.0
+       mifi: proportion of interface_kind inherited from
+         avg: 0.0
+         max: base_empty_module (0.0)
+         min: base_empty_module (0.0)
+         std: 0.0
+         sum: 0.0
 
  ## global metrics
        cnoac: number of class_kind ancestor
@@ -534,76 +864,91 @@ generating out/nitmetrics_args1.write/module_hierarchy.dot
          max: Object (0)
          min: Object (0)
          std: 0.0
+         sum: 0
        cnopc: number of class_kind parent
          avg: 0.0
          max: Object (0)
          min: Object (0)
          std: 0.0
+         sum: 0
        cnocc: number of class_kind children
-         avg: 1.0
+         avg: 0.0
          max: Object (4)
          min: Bool (0)
-         std: 1.464
+         std: 1.414
+         sum: 4
        cnodc: number of class_kind descendants
-         avg: 1.0
+         avg: 0.0
          max: Object (4)
          min: Bool (0)
-         std: 1.464
+         std: 1.414
+         sum: 4
        cnopi: number of interface_kind parent
-         avg: 1.0
+         avg: 0.0
          max: Bool (1)
          min: Object (0)
-         std: 0.378
+         std: 0.866
+         sum: 6
        cnoci: number of interface_kind children
          avg: 0.0
          max: Object (0)
          min: Object (0)
          std: 0.0
+         sum: 0
        cnodi: number of interface_kind descendants
          avg: 0.0
          max: Object (0)
          min: Object (0)
          std: 0.0
+         sum: 0
        cditc: depth in class tree following only class, abstract, extern kind
          avg: 0.0
          max: Object (0)
          min: Object (0)
          std: 0.0
+         sum: 0
        cditi: depth in class tree following only interface_kind
-         avg: 1.0
+         avg: 0.0
          max: Bool (1)
          min: Object (0)
-         std: 0.378
+         std: 0.866
+         sum: 6
        mdui: proportion of mclass defined using inheritance (has other parent than Object)
          avg: 0.0
          max: base_simple3 (0.0)
          min: base_simple3 (0.0)
          std: 0.0
+         sum: 0.0
        mduic: proportion of class_kind defined using inheritance
          avg: 0.0
          max: base_simple3 (0.0)
          min: base_simple3 (0.0)
          std: 0.0
+         sum: 0.0
        mduii: proportion of interface_kind defined using inheritance
          avg: 0.0
          max: base_simple3 (0.0)
          min: base_simple3 (0.0)
          std: 0.0
+         sum: 0.0
        mif: proportion of mclass inherited from
-         avg: 0.143
+         avg: 0.071
          max: base_simple3 (0.143)
-         min: base_simple3 (0.143)
-         std: 0.0
+         min: base_empty_module (0.0)
+         std: 0.071
+         sum: 0.143
        mifc: proportion of class_kind inherited from
          avg: 0.0
          max: base_simple3 (0.0)
          min: base_simple3 (0.0)
          std: 0.0
+         sum: 0.0
        mifi: proportion of interface_kind inherited from
-         avg: 0.143
+         avg: 0.071
          max: base_simple3 (0.143)
-         min: base_simple3 (0.143)
-         std: 0.0
+         min: base_empty_module (0.0)
+         std: 0.071
+         sum: 0.143
 
 # RTA metrics
 
@@ -613,36 +958,43 @@ generating out/nitmetrics_args1.write/module_hierarchy.dot
          max: base_simple3 (6)
          min: base_simple3 (6)
          std: 0.0
+         sum: 6
        mnlt: number of live mtypes in a mmodule
          avg: 6.0
          max: base_simple3 (6)
          min: base_simple3 (6)
          std: 0.0
+         sum: 6
        mnct: number of live cast mtypes in a mmodule
          avg: 0.0
          max: base_simple3 (0)
          min: base_simple3 (0)
          std: 0.0
+         sum: 0
        mnli: number of live instances in a mmodule
          avg: 17.0
          max: base_simple3 (17)
          min: base_simple3 (17)
          std: 0.0
+         sum: 17
        mnlm: number of live methods in a mmodule
          avg: 14.0
          max: base_simple3 (14)
          min: base_simple3 (14)
          std: 0.0
+         sum: 14
        mnlmd: number of live method definitions in a mmodule
          avg: 14.0
          max: base_simple3 (14)
          min: base_simple3 (14)
          std: 0.0
+         sum: 14
        mnldd: number of dead method definitions in a mmodule
          avg: 0.0
          max: base_simple3 (0)
          min: base_simple3 (0)
          std: 0.0
+         sum: 0
 
  ## Total live instances by mclasses
        cnli: number of live instances for a mclass
@@ -650,6 +1002,78 @@ generating out/nitmetrics_args1.write/module_hierarchy.dot
          max: Int (12)
          min: Sys (1)
          std: 4.183
+         sum: 17
+       cnlc: number of live cast for a mclass type -- nothing
+         sum: 0
+
+ ## Total live instances by mtypes
+       tnli: number of live instances for a mtype
+         avg: 2.0
+         max: Int (12)
+         min: Sys (1)
+         std: 4.183
+         sum: 17
+       tnlc: number of live casts to a mtype -- nothing
+         sum: 0
+
+ ## MType complexity
+       tags: arity of generic signature
+         avg: 0.0
+         max: Sys (0)
+         min: Sys (0)
+         std: 0.0
+         sum: 0
+       tdos: depth of generic signature
+         avg: 0.0
+         max: Sys (0)
+         min: Sys (0)
+         std: 0.0
+         sum: 0
+
+ ## Callsites
+* 22 live callsites
+MMethodDef locally designated (by number of CallSites)
+ population: 13
+ minimum value: 1
+ maximum value: 10
+ total value: 22
+ average value: 1.69
+ distribution:
+  <=1: sub-population=12 (92.30%); cumulated value=12 (54.54%)
+  <=16: sub-population=1 (7.69%); cumulated value=10 (45.45%)
+ list:
+  base_simple3#Int#output: 10 (45.45%)
+  base_simple3#B#val: 1 (4.54%)
+  base_simple3#B#val=: 1 (4.54%)
+  base_simple3#C#val2: 1 (4.54%)
+  base_simple3#C#val1: 1 (4.54%)
+  ...
+  base_simple3#A#init: 1 (4.54%)
+  base_simple3#Object#baz: 1 (4.54%)
+  base_simple3#Object#bar: 1 (4.54%)
+  base_simple3#Object#foo: 1 (4.54%)
+  base_simple3#C#init: 1 (4.54%)
+MMethodDef possibly invoked at runtime (by number of CallSites)
+ population: 13
+ minimum value: 1
+ maximum value: 10
+ total value: 22
+ average value: 1.69
+ distribution:
+  <=1: sub-population=12 (92.30%); cumulated value=12 (54.54%)
+  <=16: sub-population=1 (7.69%); cumulated value=10 (45.45%)
+ list:
+  base_simple3#Int#output: 10 (45.45%)
+  base_simple3#B#val: 1 (4.54%)
+  base_simple3#B#val=: 1 (4.54%)
+  base_simple3#C#val2: 1 (4.54%)
+  base_simple3#C#val1: 1 (4.54%)
+  ...
+  base_simple3#A#init: 1 (4.54%)
+  base_simple3#Object#baz: 1 (4.54%)
+  base_simple3#Object#bar: 1 (4.54%)
+  base_simple3#Object#foo: 1 (4.54%)
+  base_simple3#C#init: 1 (4.54%)
 class_hierarchy.dot
 classdef_hierarchy.dot
 inheritance/
@@ -658,5 +1082,6 @@ mendel/
 mmodules/
 model.html
 module_hierarchy.dot
+nullables/
 project_hierarchy.dot
 rta/