*** METRICS ***
--- AST Metrics ---
## All nodes of the AST
- population: 51
+ population: 52
minimum value: 1
maximum value: 40
- total value: 289
- average value: 5.66
+ total value: 304
+ average value: 5.84
distribution:
- <=1: sub-population=16 (31.37%); cumulated value=16 (5.53%)
- <=2: sub-population=5 (9.80%); cumulated value=10 (3.46%)
- <=4: sub-population=9 (17.64%); cumulated value=28 (9.68%)
- <=8: sub-population=12 (23.52%); cumulated value=76 (26.29%)
- <=16: sub-population=4 (7.84%); cumulated value=44 (15.22%)
- <=32: sub-population=4 (7.84%); cumulated value=75 (25.95%)
- <=64: sub-population=1 (1.96%); cumulated value=40 (13.84%)
+ <=1: sub-population=16 (30.76%); cumulated value=16 (5.26%)
+ <=2: sub-population=5 (9.61%); cumulated value=10 (3.28%)
+ <=4: sub-population=9 (17.30%); cumulated value=28 (9.21%)
+ <=8: sub-population=12 (23.07%); cumulated value=76 (25.00%)
+ <=16: sub-population=5 (9.61%); cumulated value=59 (19.40%)
+ <=32: sub-population=4 (7.69%); cumulated value=75 (24.67%)
+ <=64: sub-population=1 (1.92%); cumulated value=40 (13.15%)
list:
- TId: 40 (13.84%)
- APublicVisibility: 19 (6.57%)
- AQid: 19 (6.57%)
- AListExprs: 19 (6.57%)
- ACallExpr: 18 (6.22%)
- TClassid: 15 (5.19%)
- TInteger: 10 (3.46%)
- AIntegerExpr: 10 (3.46%)
- AType: 9 (3.11%)
- TKwend: 8 (2.76%)
+ TId: 40 (13.15%)
+ APublicVisibility: 19 (6.25%)
+ AListExprs: 19 (6.25%)
+ AQid: 19 (6.25%)
+ ACallExpr: 18 (5.92%)
+ TClassid: 15 (4.93%)
+ AQclassid: 15 (4.93%)
+ TInteger: 10 (3.28%)
+ AIntegerExpr: 10 (3.28%)
+ AType: 9 (2.96%)
...
- ACallAssignExpr: 1 (0.34%)
- AAnnotations: 1 (0.34%)
- TKwreturn: 1 (0.34%)
- AReturnExpr: 1 (0.34%)
- AInterfaceClasskind: 1 (0.34%)
- TKwinterface: 1 (0.34%)
- ANoImport: 1 (0.34%)
- AMainMethPropdef: 1 (0.34%)
- AMainClassdef: 1 (0.34%)
- TKwimport: 1 (0.34%)
+ AAnnotation: 1 (0.32%)
+ AAnnotations: 1 (0.32%)
+ AReturnExpr: 1 (0.32%)
+ TKwreturn: 1 (0.32%)
+ AInterfaceClasskind: 1 (0.32%)
+ TKwinterface: 1 (0.32%)
+ ANoImport: 1 (0.32%)
+ AMainMethPropdef: 1 (0.32%)
+ AMainClassdef: 1 (0.32%)
+ TKwimport: 1 (0.32%)
## All identifiers of the AST
population: 20
minimum value: 1
bivariants: 0 (na%)
invariants: 0 (na%)
total: 0
-
-# 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: 0.0
- max: base_simple3 (0)
- min: base_simple3 (0)
- std: 0.0
- sum: 0
- mnod: number of descendant modules
- avg: 0.0
- max: base_simple3 (0)
- min: base_simple3 (0)
- std: 0.0
- sum: 0
- 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: 0.0
- max: base_simple3 (0)
- min: base_simple3 (0)
- std: 0.0
- sum: 0
- mnod: number of descendant modules
- avg: 0.0
- max: base_simple3 (0)
- min: base_simple3 (0)
- std: 0.0
- sum: 0
- 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
--- Poset metrics ---
## Module importation hierarchy
-Number of nodes: 1
-Number of edges: 1 (1.00 per node)
-Number of direct edges: 0 (0.00 per node)
+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: 1
+ population: 2
minimum value: 1
- maximum value: 1
- total value: 1
- average value: 1.00
+ maximum value: 2
+ total value: 3
+ average value: 1.50
distribution:
- <=1: sub-population=1 (100.00%); cumulated value=1 (100.00%)
+ <=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: 1
+ population: 2
minimum value: 0
- maximum value: 0
- total value: 0
- average value: 0.00
+ maximum value: 1
+ total value: 1
+ average value: 0.50
distribution:
- <=0: sub-population=1 (100.00%); cumulated value=0 (na%)
+ <=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: 1
+ population: 2
minimum value: 1
- maximum value: 1
- total value: 1
- average value: 1.00
+ maximum value: 2
+ total value: 3
+ average value: 1.50
distribution:
- <=1: sub-population=1 (100.00%); cumulated value=1 (100.00%)
+ <=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: 1
+ population: 2
minimum value: 0
- maximum value: 0
- total value: 0
- average value: 0.00
+ maximum value: 1
+ total value: 1
+ average value: 0.50
distribution:
- <=0: sub-population=1 (100.00%); cumulated value=0 (na%)
+ <=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)
<=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%)
Average number of class refinments by classes: 0.00
Average number of class refinments by refined classes: na
-Number of properties: 18
- Number of MAttribute: 3 (16.66%)
- Number of MMethod: 15 (83.33%)
+Number of properties: 23
+ Number of MAttribute: 3 (13.04%)
+ Number of MMethod: 20 (86.95%)
-Number of property definitions: 20
-Number of redefined properties: 1 (5.55%)
-Average number of property redefinitions by property: 0.11
-Average number of property redefinitions by redefined property: 2.00
+Number of property definitions: 24
+Number of redefined properties: 1 (4.34%)
+Average number of property redefinitions by property: 0.04
+Average number of property redefinitions by redefined property: 1.00
--- 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: 2.00
-Total size of tables (classes and instances): 23 (not including stuff like info for subtyping or call-next-method)
-Average size of table by runtime class: 3.83
-Values never redefined: 17 (73.91%)
+Total size of tables (classes and instances): 33 (not including stuff like info for subtyping or call-next-method)
+Average size of table by runtime class: 5.50
+Values never redefined: 27 (81.81%)
generating package_hierarchy.dot
generating module_hierarchy.dot
+--- Metrics of the explitic static types ---
+Total number of explicit static types: 9
+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%)
+ list:
+ Int: 6 (66.66%)
+ C: 1 (11.11%)
+ B: 1 (11.11%)
+ A: 1 (11.11%)
# MClasses metrics
## package base_simple3
- `- group base_simple3
+ `- group base_simple3>
cnoa: number of ancestor classes
avg: 0.0
max: Bool (1)
std: 0.926
sum: 6
cnbp: number of accessible properties (inherited + local)
- avg: 3.0
- max: C (7)
- min: Object (1)
- std: 2.36
- sum: 24
+ avg: 5.0
+ max: C (9)
+ min: Object (2)
+ std: 2.268
+ sum: 35
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: 1.0
+ max: B (2)
+ min: Object (1)
+ std: 0.378
+ sum: 8
+ cnbm: number of accessible methods (inherited + local)
+ avg: 3.0
+ max: B (5)
+ min: Object (1)
+ std: 1.773
+ sum: 21
+ 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: 2.0
- max: C (6)
- min: Bool (0)
- std: 2.268
- sum: 18
+ avg: 3.0
+ max: C (7)
+ min: Bool (1)
+ std: 2.0
+ sum: 23
cnbrp: number of redefined properties
avg: 0.0
max: A (1)
min: Object (0)
- std: 0.535
- sum: 2
+ std: 0.378
+ sum: 1
cnbhp: number of inherited properties
- avg: 0.0
- max: Bool (1)
+ avg: 1.0
+ max: Bool (2)
min: Object (0)
- std: 0.926
- sum: 6
+ std: 1.0
+ sum: 12
## global metrics
cnoa: number of ancestor classes
std: 0.926
sum: 6
cnbp: number of accessible properties (inherited + local)
- avg: 3.0
- max: C (7)
- min: Object (1)
- std: 2.36
- sum: 24
+ avg: 5.0
+ max: C (9)
+ min: Object (2)
+ std: 2.268
+ sum: 35
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: 1.0
+ max: B (2)
+ min: Object (1)
+ std: 0.378
+ sum: 8
+ cnbm: number of accessible methods (inherited + local)
+ avg: 3.0
+ max: B (5)
+ min: Object (1)
+ std: 1.773
+ sum: 21
+ 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: 2.0
- max: C (6)
- min: Bool (0)
- std: 2.268
- sum: 18
+ avg: 3.0
+ max: C (7)
+ min: Bool (1)
+ std: 2.0
+ sum: 23
cnbrp: number of redefined properties
avg: 0.0
max: A (1)
min: Object (0)
- std: 0.535
- sum: 2
+ std: 0.378
+ sum: 1
cnbhp: number of inherited properties
- avg: 0.0
- max: Bool (1)
+ avg: 1.0
+ max: Bool (2)
min: Object (0)
- std: 0.926
- sum: 6
+ 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
+ `- group base_simple3>
cnoac: number of class_kind ancestor
avg: 0.0
max: Object (0)
min: base_simple3 (0.143)
std: 0.0
sum: 0.143
---- Metrics of the explitic static types ---
-Total number of explicit static types: 9
-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%)
- list:
- Int: 6 (66.66%)
- C: 1 (11.11%)
- B: 1 (11.11%)
- A: 1 (11.11%)
# Mendel metrics
- large mclasses (threshold: 3.915)
+ large mclasses (threshold: 4.354)
C: 5
- B: 4
- Sys: 4
- budding mclasses (threshold: 5.033)
- blooming mclasses (threshold: 21.874)
- C: 25.0
+ budding mclasses (threshold: 3.207)
+ C: 3.5
+ blooming mclasses (threshold: 14.316)
+ C: 17.5
--- Detection of the usage of covariance static type conformance ---
-- Total --
- Kinds of the subtype -
# Nullable metrics
## package base_simple3
- `- group base_simple3
+ `- group base_simple3>
cnba: number of accessible attributes (inherited + local)
avg: 0.0
max: C (2)
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: 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: 17.0
+ max: base_simple3 (17)
+ min: base_simple3 (17)
+ std: 0.0
+ sum: 17
mnldd: number of dead method definitions in a mmodule
avg: 0.0
max: base_simple3 (0)
<=1: sub-population=13 (92.85%); cumulated value=13 (56.52%)
<=16: sub-population=1 (7.14%); cumulated value=10 (43.47%)
list:
- base_simple3#Int#output: 10 (43.47%)
- base_simple3#B#val: 1 (4.34%)
- base_simple3#B#val=: 1 (4.34%)
- base_simple3#Object#init: 1 (4.34%)
- base_simple3#C#val2: 1 (4.34%)
+ base_simple3$Int$output: 10 (43.47%)
+ base_simple3$B$val: 1 (4.34%)
+ base_simple3$B$val=: 1 (4.34%)
+ base_simple3$Object$init: 1 (4.34%)
+ base_simple3$C$val2: 1 (4.34%)
...
- base_simple3#A#init: 1 (4.34%)
- base_simple3#Sys#baz: 1 (4.34%)
- base_simple3#Sys#bar: 1 (4.34%)
- base_simple3#Sys#foo: 1 (4.34%)
- base_simple3#C#init: 1 (4.34%)
+ base_simple3$A$autoinit: 1 (4.34%)
+ base_simple3$Sys$baz: 1 (4.34%)
+ base_simple3$Sys$bar: 1 (4.34%)
+ base_simple3$Sys$foo: 1 (4.34%)
+ base_simple3$C$autoinit: 1 (4.34%)
MMethodDef possibly invoked at runtime (by number of CallSites)
population: 14
minimum value: 1
<=1: sub-population=13 (92.85%); cumulated value=13 (56.52%)
<=16: sub-population=1 (7.14%); cumulated value=10 (43.47%)
list:
- base_simple3#Int#output: 10 (43.47%)
- base_simple3#B#val: 1 (4.34%)
- base_simple3#B#val=: 1 (4.34%)
- base_simple3#Object#init: 1 (4.34%)
- base_simple3#C#val2: 1 (4.34%)
+ base_simple3$Int$output: 10 (43.47%)
+ base_simple3$B$val: 1 (4.34%)
+ base_simple3$B$val=: 1 (4.34%)
+ base_simple3$Object$init: 1 (4.34%)
+ base_simple3$C$val2: 1 (4.34%)
...
- base_simple3#A#init: 1 (4.34%)
- base_simple3#Sys#baz: 1 (4.34%)
- base_simple3#Sys#bar: 1 (4.34%)
- base_simple3#Sys#foo: 1 (4.34%)
- base_simple3#C#init: 1 (4.34%)
+ base_simple3$A$autoinit: 1 (4.34%)
+ base_simple3$Sys$baz: 1 (4.34%)
+ base_simple3$Sys$bar: 1 (4.34%)
+ base_simple3$Sys$foo: 1 (4.34%)
+ base_simple3$C$autoinit: 1 (4.34%)
class_hierarchy.dot
classdef_hierarchy.dot
inheritance/
module_hierarchy.dot
nullables/
package_hierarchy.dot
+readme.csv
rta/