tests: Fix tests
[nit.git] / tests / sav / nitmetrics_args1.res
index 5102893..29e31bd 100644 (file)
 *** METRICS ***
---- Global Summary metrics ---
-(NMD) Number of Modules: 1
-(NC)  Number of Classes: 4
-(NI)  Number of Interfaces: 1
-(NAC)  Number of Abstract Classes: 0
-(NGC)  Number of Generic Classes: 0
-(NGI)  Number of Generic Interfaces: 0
---- (SL) Std-Lib Summary metrics ---
-(NMDSL) Number of Modules: 0
-(NCSL)  Number of Classes: 0
-(NISL)  Number of Interfaces: 0
-(NACSL)  Number of Abstract Classes: 0
-(NGCSL)  Number of Generic Classes: 0
-(NGISL)  Number of Generic Interfaces: 0
---- (UD) User-Defined Summary metrics ---
-(NMDUD) Number of Modules: 1
-(NCUD)  Number of Classes: 4
-(NIUD)  Number of Interfaces: 1
-(NACUD)  Number of Abstract Classes: 0
-(NGCUD)  Number of Generic Classes: 0
-(NGIUD)  Number of Generic Interfaces: 0
-
---- Global Inheritance metrics ---
-(DIT) Global Depth in Inheritance Tree: 0.85
-(DUI) Proportion of types inheriting another type other than Object: 0.0%
-(CCDUI) Proportion of classes that extend some other class: 0.0%
-(CIDUI) Proportion of classes that implement some other interface: 0.0%
-(IIDUI) Proportion of interfaces that extend some other interface: 0.0%
-(IF) Proportion of types Inherited From: 20.00%
-(CCIF) Proportion of classes extended by class: 0.0%
-(ICIF) Proportion of interfaces implemented by class: 100.00%
-(IIIF) Proportion of interfaces extended by interface: 0.0%
-
---- (SL -> *) Std-Lib Inheritance metrics ---
-(SLDUI) Proportion of SL types inheriting another type other than Object: na%
-(SLCCDUI) Proportion of SL classes that extend some other class: na%
-(SLCIDUI) Proportion of SL classes that implement some other interface: na%
-(SLIIDUI) Proportion of SL interfaces that extend some other interface: na%
-(SLIF) Proportion of SL types Inherited From: na%
-(SLCCIF) Proportion of SL classes extended by class: na%
-(SLICIF) Proportion of SL interfaces implemented by class: na%
-(SLIIIF) Proportion of SL interfaces extended by interface: na%
-
---- (SL -> SL) Std-Lib Inheritance metrics ---
-(SLIFSL) Proportion of SL types Inherited From by SL type: na%
-(SLCCIFSL) Proportion of SL classes extended by SL class: na%
-(SLICIFSL) Proportion of SL interfaces implemented by SL class: na%
-(SLIIIFSL) Proportion of SL interfaces extended by SL interface: na%
-
---- (SL->UD) Std-Lib Inheritance metrics ---
-(SLIFUD) Proportion of SL types Inherited From by UD type: na%
-(SLCCIFUD) Proportion of SL classes extended by UD class: na%
-(SLICIFUD) Proportion of SL interfaces implemented by UD class: na%
-(SLIIIFUD) Proportion of SL interfaces extended by UD interface: na%
-
---- (UD->*) User-Defined Inheritance metrics ---
-(UDDUI) Proportion of UD types inheriting another type other than Object: 0.0%
-(UDCCDUI) Proportion of UD classes that extend some other class: 0.0%
-(UDCIDUI) Proportion of UD classes that implement some other interface: 0.0%
-(UDIIDUI) Proportion of UD interfaces that extend some other interface: 0.0%
-(UDIF) Proportion of UD types Inherited From: 20.00%
-(UDCCIF) Proportion of UD classes extended by class: 0.0%
-(UDICIF) Proportion of UD interfaces implemented by class: 100.00%
-(UDIIIF) Proportion of UD interfaces extended by interface: 0.0%
-
---- (UD -> SL) User-Defined Inheritance metrics ---
-(UDDUISL) Proportion of UD types inheriting another type other SL type: 0.0%
-(UDCCDUISL) Proportion of UD classes that extend some other SL class: 0.0%
-(UDCIDUISL) Proportion of UD classes that implement some other SL interface: 0.0%
-(UDIIDUISL) Proportion of UD interfaces that extend some other SL interface: 0.0%
-
---- (UD -> UD) User-Defined Inheritance metrics ---
-(UDDUIUD) Proportion of UD types inheriting another type other UD type: 0.0%
-(UDCCDUIUD) Proportion of UD classes that extend some other UD class: 0.0%
-(UDCIDUIUD) Proportion of UD classes that implement some other UD interface: 0.0%
-(UDIIDUIUD) Proportion of UD interfaces that extend some other UD interface: 0.0%
-(UDIFUD) Proportion of UD types Inherited From: 20.00%
-(UDCCIFUD) Proportion of UD classes extended by UD class: 0.0%
-(UDICIFUD) Proportion of UD interfaces implemented by UD class: 100.00%
-(UDIIIFUD) Proportion of UD interfaces extended by UD interface: 0.0%
+--- AST Metrics ---
+## All nodes of the AST
+ population: 49
+ minimum value: 1
+ maximum value: 37
+ total value: 286
+ average value: 5.83
+ distribution:
+  <=1: sub-population=15 (30.61%); cumulated value=15 (5.24%)
+  <=2: sub-population=3 (6.12%); cumulated value=6 (2.09%)
+  <=4: sub-population=12 (24.48%); cumulated value=40 (13.98%)
+  <=8: sub-population=10 (20.40%); cumulated value=67 (23.42%)
+  <=16: sub-population=4 (8.16%); cumulated value=48 (16.78%)
+  <=32: sub-population=4 (8.16%); cumulated value=73 (25.52%)
+  <=64: sub-population=1 (2.04%); cumulated value=37 (12.93%)
+ list:
+  TId: 37 (12.93%)
+  APublicVisibility: 19 (6.64%)
+  ACallExpr: 18 (6.29%)
+  AQid: 18 (6.29%)
+  AListExprs: 18 (6.29%)
+  AQclassid: 14 (4.89%)
+  TClassid: 14 (4.89%)
+  TInteger: 10 (3.49%)
+  AIntegerExpr: 10 (3.49%)
+  ASignature: 8 (2.79%)
+  ...
+  TKwreturn: 1 (0.34%)
+  AAnnotation: 1 (0.34%)
+  AParam: 1 (0.34%)
+  AMainMethPropdef: 1 (0.34%)
+  AInterfaceClasskind: 1 (0.34%)
+  TKwinterface: 1 (0.34%)
+  ANoImport: 1 (0.34%)
+  ABlockExpr: 1 (0.34%)
+  AMainClassdef: 1 (0.34%)
+  TKwimport: 1 (0.34%)
+## All identifiers of the AST
+ population: 19
+ minimum value: 1
+ maximum value: 11
+ total value: 51
+ average value: 2.68
+ distribution:
+  <=1: sub-population=3 (15.78%); cumulated value=3 (5.88%)
+  <=2: sub-population=12 (63.15%); cumulated value=24 (47.05%)
+  <=4: sub-population=2 (10.52%); cumulated value=7 (13.72%)
+  <=8: sub-population=1 (5.26%); cumulated value=6 (11.76%)
+  <=16: sub-population=1 (5.26%); cumulated value=11 (21.56%)
+ list:
+  output: 11 (21.56%)
+  Int: 6 (11.76%)
+  run: 4 (7.84%)
+  c: 3 (5.88%)
+  baz: 2 (3.92%)
+  i: 2 (3.92%)
+  bar: 2 (3.92%)
+  val2: 2 (3.92%)
+  val1: 2 (3.92%)
+  C: 2 (3.92%)
+  val: 2 (3.92%)
+  B: 2 (3.92%)
+  a: 2 (3.92%)
+  A: 2 (3.92%)
+  foo: 2 (3.92%)
+  b: 2 (3.92%)
+  intern: 1 (1.96%)
+  Object: 1 (1.96%)
+  Bool: 1 (1.96%)
+--- Detection of variance constraints on formal parameter types ---
+-- Generic classes --
+ list:
+  non generic: 7 (100.00%)
+  total classes: 7
+  total formal parameters: 0
+-- Including `private` properties --
+  covariants: 0 (na%)
+  contravariants: 0 (na%)
+  bivariants: 0 (na%)
+  invariants: 0 (na%)
+  total: 0
+-- Excluding `private` properties --
+  covariants: 0 (na%)
+  contravariants: 0 (na%)
+  bivariants: 0 (na%)
+  invariants: 0 (na%)
+  total: 0
+--- Poset metrics ---
+## Module importation hierarchy
+Number of nodes: 2
+Number of edges: 3 (1.50 per node)
+Number of direct edges: 1 (0.50 per node)
+Distribution of greaters
+ population: 2
+ minimum value: 1
+ maximum value: 2
+ total value: 3
+ average value: 1.50
+ distribution:
+  <=1: sub-population=1 (50.00%); cumulated value=1 (33.33%)
+  <=2: sub-population=1 (50.00%); cumulated value=2 (66.66%)
+Distribution of direct greaters
+ population: 2
+ minimum value: 0
+ maximum value: 1
+ total value: 1
+ average value: 0.50
+ distribution:
+  <=0: sub-population=1 (50.00%); cumulated value=0 (0.00%)
+  <=1: sub-population=1 (50.00%); cumulated value=1 (100.00%)
+Distribution of smallers
+ population: 2
+ minimum value: 1
+ maximum value: 2
+ total value: 3
+ average value: 1.50
+ distribution:
+  <=1: sub-population=1 (50.00%); cumulated value=1 (33.33%)
+  <=2: sub-population=1 (50.00%); cumulated value=2 (66.66%)
+Distribution of direct smallers
+ population: 2
+ minimum value: 0
+ maximum value: 1
+ total value: 1
+ average value: 0.50
+ distribution:
+  <=0: sub-population=1 (50.00%); cumulated value=0 (0.00%)
+  <=1: sub-population=1 (50.00%); cumulated value=1 (100.00%)
+## Classdef hierarchy
+Number of nodes: 7
+Number of edges: 13 (1.85 per node)
+Number of direct edges: 6 (0.85 per node)
+Distribution of greaters
+ population: 7
+ minimum value: 1
+ maximum value: 2
+ total value: 13
+ average value: 1.85
+ distribution:
+  <=1: sub-population=1 (14.28%); cumulated value=1 (7.69%)
+  <=2: sub-population=6 (85.71%); cumulated value=12 (92.30%)
+Distribution of direct greaters
+ population: 7
+ minimum value: 0
+ maximum value: 1
+ total value: 6
+ average value: 0.85
+ distribution:
+  <=0: sub-population=1 (14.28%); cumulated value=0 (0.00%)
+  <=1: sub-population=6 (85.71%); cumulated value=6 (100.00%)
+Distribution of smallers
+ population: 7
+ minimum value: 1
+ maximum value: 7
+ total value: 13
+ average value: 1.85
+ distribution:
+  <=1: sub-population=6 (85.71%); cumulated value=6 (46.15%)
+  <=8: sub-population=1 (14.28%); cumulated value=7 (53.84%)
+Distribution of direct smallers
+ population: 7
+ minimum value: 0
+ maximum value: 6
+ total value: 6
+ average value: 0.85
+ distribution:
+  <=0: sub-population=6 (85.71%); cumulated value=0 (0.00%)
+  <=8: sub-population=1 (14.28%); 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)
+Distribution of greaters
+ population: 7
+ minimum value: 1
+ maximum value: 2
+ total value: 13
+ average value: 1.85
+ distribution:
+  <=1: sub-population=1 (14.28%); cumulated value=1 (7.69%)
+  <=2: sub-population=6 (85.71%); cumulated value=12 (92.30%)
+Distribution of direct greaters
+ population: 7
+ minimum value: 0
+ maximum value: 1
+ total value: 6
+ average value: 0.85
+ distribution:
+  <=0: sub-population=1 (14.28%); cumulated value=0 (0.00%)
+  <=1: sub-population=6 (85.71%); cumulated value=6 (100.00%)
+Distribution of smallers
+ population: 7
+ minimum value: 1
+ maximum value: 7
+ total value: 13
+ average value: 1.85
+ distribution:
+  <=1: sub-population=6 (85.71%); cumulated value=6 (46.15%)
+  <=8: sub-population=1 (14.28%); cumulated value=7 (53.84%)
+Distribution of direct smallers
+ population: 7
+ minimum value: 0
+ maximum value: 6
+ total value: 6
+ average value: 0.85
+ distribution:
+  <=0: sub-population=6 (85.71%); cumulated value=0 (0.00%)
+  <=8: sub-population=1 (14.28%); cumulated value=6 (100.00%)
 --- Metrics of refinement usage ---
-Number of modules: 1
+Number of modules: 2
 
 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 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 class definitions: 7
+Number of refined classes: 0 (0.00%)
+Average number of class refinments by classes: 0.00
+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: 21
+  Number of MAttribute: 3 (14.28%)
+  Number of MMethod: 18 (85.71%)
 
-Number of property definitions: 19
-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
+Number of property definitions: 23
+Number of redefined properties: 1 (4.76%)
+Average number of property redefinitions by property: 0.09
+Average number of property redefinitions by redefined property: 2.00
+--- Explicit vs. Implicit Self ---
+Total number of self: 4
+Total number of implicit self: 4 (100.00%)
+--- Construction of tables ---
+Number of runtime classes: 6 (excluding interfaces and abstract classes)
+Average number of composing class definition by runtime class: 2.00
+Total size of tables (classes and instances): 31 (not including stuff like info for subtyping or call-next-method)
+Average size of table by runtime class: 5.16
+Values never redefined: 25 (80.64%)
+generating package_hierarchy.dot
+generating module_hierarchy.dot
 --- Metrics of the explitic static types ---
-Total number of explicit static types: 9
-Most used types: 
-  Int: 6
-  C: 1
-  B: 1
-  A: 1
+Total number of explicit static types: 8
 Statistics of type usage:
  population: 4
  minimum value: 1
- maximum value: 6
- total value: 9
- average value: 2.25
- distribution:
-  <=1: sub-population=3 (75.00%); cumulated value=3 (33.33%)
-  <=8: sub-population=1 (25.00%); cumulated value=6 (66.66%)
---- Sends on Nullable Reciever ---
-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%)
---- RTA metrics ---
-Number of live runtime types (instantied resolved type): 6
-       Sys Bool Int A B C
-Number of live method definitions: 14
-Number of live customized method definitions: 14
-Number of live runtime cast types (ie used in as and isa): 0
-       
+ maximum value: 5
+ total value: 8
+ average value: 2.00
+ distribution:
+  <=1: sub-population=3 (75.00%); cumulated value=3 (37.50%)
+  <=8: sub-population=1 (25.00%); cumulated value=5 (62.50%)
+ list:
+  Int: 5 (62.50%)
+  C: 1 (12.50%)
+  B: 1 (12.50%)
+  A: 1 (12.50%)
+
+# MClasses metrics
+
+ ## package base_simple3
+  `- group base_simple3>
+       cnoa: number of ancestor classes
+         avg: 0.0
+         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 (9)
+         min: Object (2)
+         std: 2.591
+         sum: 33
+       cnba: number of accessible attributes (inherited + local)
+         avg: 0.0
+         max: C (2)
+         min: Object (0)
+         std: 0.845
+         sum: 3
+       cnbi: number of accessible constructors (inherited + local)
+         avg: 2.0
+         max: A (3)
+         min: Object (2)
+         std: 0.655
+         sum: 17
+       cnbm: number of accessible methods (inherited + local)
+         avg: 4.0
+         max: C (7)
+         min: Object (2)
+         std: 1.927
+         sum: 30
+       cnbv: number of accessible virtual types (inherited + local)
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cnbip: number of introduced properties
+         avg: 3.0
+         max: C (7)
+         min: Bool (0)
+         std: 2.268
+         sum: 21
+       cnbrp: number of redefined properties
+         avg: 0.0
+         max: A (1)
+         min: Object (0)
+         std: 0.535
+         sum: 2
+       cnbhp: number of inherited properties
+         avg: 1.0
+         max: Bool (2)
+         min: Object (0)
+         std: 1.0
+         sum: 12
+
+ ## global metrics
+       cnoa: number of ancestor classes
+         avg: 0.0
+         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 (9)
+         min: Object (2)
+         std: 2.591
+         sum: 33
+       cnba: number of accessible attributes (inherited + local)
+         avg: 0.0
+         max: C (2)
+         min: Object (0)
+         std: 0.845
+         sum: 3
+       cnbi: number of accessible constructors (inherited + local)
+         avg: 2.0
+         max: A (3)
+         min: Object (2)
+         std: 0.655
+         sum: 17
+       cnbm: number of accessible methods (inherited + local)
+         avg: 4.0
+         max: C (7)
+         min: Object (2)
+         std: 1.927
+         sum: 30
+       cnbv: number of accessible virtual types (inherited + local)
+         avg: 0.0
+         max: Object (0)
+         min: Object (0)
+         std: 0.0
+         sum: 0
+       cnbip: number of introduced properties
+         avg: 3.0
+         max: C (7)
+         min: Bool (0)
+         std: 2.268
+         sum: 21
+       cnbrp: number of redefined properties
+         avg: 0.0
+         max: A (1)
+         min: Object (0)
+         std: 0.535
+         sum: 2
+       cnbhp: number of inherited properties
+         avg: 1.0
+         max: Bool (2)
+         min: Object (0)
+         std: 1.0
+         sum: 12
+
+# MModules metrics
+
+ ## package base_simple3
+  `- group base_simple3>
+       mnoa: number of ancestor modules
+         avg: 0.0
+         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: 1.0
+         max: base_simple3 (1)
+         min: base_simple3 (1)
+         std: 0.0
+         sum: 1
+       mnod: number of descendant modules
+         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: 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: 1.0
+         max: base_simple3 (1)
+         min: base_simple3 (1)
+         std: 0.0
+         sum: 1
+
+ ## global metrics
+       mnoa: number of ancestor modules
+         avg: 0.0
+         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: 1.0
+         max: base_simple3 (1)
+         min: base_simple3 (1)
+         std: 0.0
+         sum: 1
+       mnod: number of descendant modules
+         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: 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: 1.0
+         max: base_simple3 (1)
+         min: base_simple3 (1)
+         std: 0.0
+         sum: 1
+
+# ReadMe metrics
+Warning: no source file for `base_simple3`
+
+# Inheritance metrics
+
+ ## package base_simple3
+  `- group base_simple3>
+       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 (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
+
+ ## global metrics
+       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 (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
+
+# Mendel metrics
+       large mclasses (threshold: 4.915)
+          B: 5
+          C: 5
+       budding mclasses (threshold: 3.231)
+          C: 3.5
+       blooming mclasses (threshold: 15.285)
+          C: 17.5
+--- Detection of the usage of covariance static type conformance ---
+-- Total --
+- Kinds of the subtype -
+ list:
+  primitive type: 5 (100.00%)
+  total: 5
+- Variance -
+ list:
+  monomorph: 5 (100.00%)
+  total: 5
+- Classes of the subtype -
+ list:
+  Int: 5 (100.00%)
+  total: 5
+-- On covariance only --
+- Specific covariance case explanations -
+ list:
+  total: 0
+- Classes of the subtype, when covariance -
+ list:
+  total: 0
+- Patterns of the covariant cases -
+ list:
+  total: 0
+- Nodes of the covariance cases -
+ list:
+  total: 0
+- Modules of the covariance cases -
+ list:
+  total: 0
+- Kind of the expression node (when it make sense) -
+ list:
+  total: 0
+-- Casts --
+- Kind of cast target -
+ list:
+  total: 0
+- Classes of the cast -
+ list:
+  total: 0
+- Cast pattern -
+ list:
+  total: 0
+- Autocasts -
+ list:
+  total: 0
+
+# Nullable metrics
+
+ ## package base_simple3
+  `- group base_simple3>
+       cnba: number of accessible attributes (inherited + local)
+         avg: 0.0
+         max: C (2)
+         min: Object (0)
+         std: 0.845
+         sum: 3
+       cnbna: number of accessible nullable attributes (inherited + local) -- nothing
+         sum: 0
+
+ ## global metrics
+       cnba: number of accessible attributes (inherited + local)
+         avg: 0.0
+         max: C (2)
+         min: Object (0)
+         std: 0.845
+         sum: 3
+       cnbna: number of accessible nullable attributes (inherited + local) -- nothing
+         sum: 0
+--- Sends on Nullable Receiver ---
+Total number of sends: 18
+Number of sends on a unsafe nullable receiver: 0 (0.00%)
+Number of sends on a safe nullable receiver: 0 (0.00%)
+Number of buggy sends (cannot determine the type of the receiver): 0 (0.00%)
+
+# RTA metrics
+
+ ## Live instances by mainmodules
+       mnlc: number of live mclasses in a mmodule
+         avg: 6.0
+         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: 16.0
+         max: base_simple3 (16)
+         min: base_simple3 (16)
+         std: 0.0
+         sum: 16
+       mnlmd: number of live method definitions in a mmodule
+         avg: 18.0
+         max: base_simple3 (18)
+         min: base_simple3 (18)
+         std: 0.0
+         sum: 18
+       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
+         avg: 2.0
+         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
+* 21 live callsites
+MMethodDef locally designated (by number of CallSites)
+ population: 12
+ minimum value: 1
+ maximum value: 10
+ total value: 21
+ average value: 1.75
+ distribution:
+  <=1: sub-population=11 (91.66%); cumulated value=11 (52.38%)
+  <=16: sub-population=1 (8.33%); cumulated value=10 (47.61%)
+ list:
+  base_simple3$Int$output: 10 (47.61%)
+  base_simple3$B$val: 1 (4.76%)
+  base_simple3$C$val2: 1 (4.76%)
+  base_simple3$C$val1: 1 (4.76%)
+  base_simple3$B$run: 1 (4.76%)
+  ...
+  base_simple3$A$defaultinit: 1 (4.76%)
+  base_simple3$Sys$baz: 1 (4.76%)
+  base_simple3$Sys$bar: 1 (4.76%)
+  base_simple3$Sys$foo: 1 (4.76%)
+  base_simple3$C$defaultinit: 1 (4.76%)
+MMethodDef possibly invoked at runtime (by number of CallSites)
+ population: 12
+ minimum value: 1
+ maximum value: 10
+ total value: 21
+ average value: 1.75
+ distribution:
+  <=1: sub-population=11 (91.66%); cumulated value=11 (52.38%)
+  <=16: sub-population=1 (8.33%); cumulated value=10 (47.61%)
+ list:
+  base_simple3$Int$output: 10 (47.61%)
+  base_simple3$B$val: 1 (4.76%)
+  base_simple3$C$val2: 1 (4.76%)
+  base_simple3$C$val1: 1 (4.76%)
+  base_simple3$B$run: 1 (4.76%)
+  ...
+  base_simple3$A$defaultinit: 1 (4.76%)
+  base_simple3$Sys$baz: 1 (4.76%)
+  base_simple3$Sys$bar: 1 (4.76%)
+  base_simple3$Sys$foo: 1 (4.76%)
+  base_simple3$C$defaultinit: 1 (4.76%)
 class_hierarchy.dot
 classdef_hierarchy.dot
+inheritance/
+mclasses/
+mendel/
+mmodules/
 model.html
 module_hierarchy.dot
+nullables/
+package_hierarchy.dot
+readme.csv
+rta/