X-Git-Url: http://nitlanguage.org diff --git a/tests/sav/nitmetrics_args1.res b/tests/sav/nitmetrics_args1.res index ab778d5..29e31bd 100644 --- a/tests/sav/nitmetrics_args1.res +++ b/tests/sav/nitmetrics_args1.res @@ -1,295 +1,132 @@ *** METRICS *** - -# MModules metrics - - ## project 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 - -# MClasses metrics - - ## project 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: 6.0 - max: C (10) - min: Object (4) - std: 2.268 - sum: 42 - cnba: number of accessible attributes (inherited + local) - avg: 0.0 - max: C (2) - min: Object (0) - std: 0.845 - sum: 3 - cnbip: number of introduced properties - avg: 2.0 - max: C (6) - min: Bool (0) - std: 2.268 - sum: 18 - 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: 3.0 - max: Bool (4) - min: Object (0) - std: 1.464 - sum: 24 - - ## 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: 6.0 - max: C (10) - min: Object (4) - std: 2.268 - sum: 42 - cnba: number of accessible attributes (inherited + local) - avg: 0.0 - max: C (2) - min: Object (0) - std: 0.845 - sum: 3 - cnbip: number of introduced properties - avg: 2.0 - max: C (6) - min: Bool (0) - std: 2.268 - sum: 18 - 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: 3.0 - max: Bool (4) - min: Object (0) - std: 1.464 - sum: 24 +--- 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: 1 -Number of edges: 1 (1.00 per node) -Number of direct edges: 0 (0.0 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.0 + 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.0 + 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) @@ -310,7 +147,7 @@ Distribution of direct greaters total value: 6 average value: 0.85 distribution: - <=0: sub-population=1 (14.28%); cumulated value=0 (0.0%) + <=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 @@ -328,7 +165,7 @@ Distribution of direct smallers total value: 6 average value: 0.85 distribution: - <=0: sub-population=6 (85.71%); cumulated value=0 (0.0%) + <=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 @@ -350,7 +187,7 @@ Distribution of direct greaters total value: 6 average value: 0.85 distribution: - <=0: sub-population=1 (14.28%); cumulated value=0 (0.0%) + <=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 @@ -368,79 +205,10 @@ Distribution of direct smallers total value: 6 average value: 0.85 distribution: - <=0: sub-population=6 (85.71%); cumulated value=0 (0.0%) + <=0: sub-population=6 (85.71%); cumulated value=0 (0.00%) <=8: sub-population=1 (14.28%); cumulated value=6 (100.00%) ---- AST Metrics --- -## All nodes of the AST - population: 47 - minimum value: 1 - maximum value: 39 - total value: 256 - average value: 5.44 - distribution: - <=1: sub-population=13 (27.65%); cumulated value=13 (5.07%) - <=2: sub-population=6 (12.76%); cumulated value=12 (4.68%) - <=4: sub-population=10 (21.27%); cumulated value=32 (12.50%) - <=8: sub-population=10 (21.27%); cumulated value=61 (23.82%) - <=16: sub-population=4 (8.51%); cumulated value=44 (17.18%) - <=32: sub-population=3 (6.38%); cumulated value=55 (21.48%) - <=64: sub-population=1 (2.12%); cumulated value=39 (15.23%) - list: - TId: 39 (15.23%) - AListExprs: 19 (7.42%) - APublicVisibility: 18 (7.03%) - ACallExpr: 18 (7.03%) - TClassid: 15 (5.85%) - TNumber: 10 (3.90%) - ADecIntExpr: 10 (3.90%) - AType: 9 (3.51%) - TKwend: 8 (3.12%) - ASignature: 8 (3.12%) - ... - AModule: 1 (0.39%) - ACallAssignExpr: 1 (0.39%) - AMainClassdef: 1 (0.39%) - AReturnExpr: 1 (0.39%) - TKwreturn: 1 (0.39%) - TKwinterface: 1 (0.39%) - ANoImport: 1 (0.39%) - AInterfaceClasskind: 1 (0.39%) - AMainMethPropdef: 1 (0.39%) - TKwimport: 1 (0.39%) -## All identifiers of the AST - population: 19 - minimum value: 1 - maximum value: 11 - total value: 54 - average value: 2.84 - 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%) - 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%) --- Metrics of refinement usage --- -Number of modules: 1 +Number of modules: 2 Number of classes: 7 Number of interface kind: 1 (14.28%) @@ -448,91 +216,343 @@ Number of classes: 7 Number of class kind: 4 (57.14%) Number of class definitions: 7 -Number of refined classes: 0 (0.0%) -Average number of class refinments by classes: 0.0 +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: 18 - Number of MAttribute: 3 (16.66%) - Number of MMethod: 15 (83.33%) +Number of properties: 21 + Number of MAttribute: 3 (14.28%) + Number of MMethod: 18 (85.71%) -Number of property definitions: 20 -Number of redefined properties: 1 (5.55%) -Average number of property redefinitions by property: 0.11 +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 +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 + maximum value: 5 + total value: 8 + average value: 2.00 distribution: - <=1: sub-population=3 (75.00%); cumulated value=3 (33.33%) - <=8: sub-population=1 (25.00%); cumulated value=6 (66.66%) + <=1: sub-population=3 (75.00%); cumulated value=3 (37.50%) + <=8: sub-population=1 (25.00%); cumulated value=5 (62.50%) list: - Int: 6 (66.66%) - C: 1 (11.11%) - B: 1 (11.11%) - A: 1 (11.11%) ---- 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): 38 (not including stuff like info for subtyping or call-next-method) -Average size of table by runtime class: 6.33 -Values never redefined: 32 (84.21%) + Int: 5 (62.50%) + C: 1 (12.50%) + B: 1 (12.50%) + A: 1 (12.50%) -# Mendel metrics - large mclasses (threshold: 2.291) - B: 3 - C: 3 - budding mclasses (threshold: 0.693) - B: 0.75 - C: 0.75 - blooming mclasses (threshold: 1.935) - B: 2.25 - C: 2.25 - blooming mclasses (threshold: 1.935) - B: 2.25 - C: 2.25 -generating out/nitmetrics_args1.write/project_hierarchy.dot -generating out/nitmetrics_args1.write/module_hierarchy.dot - -# Nullable metrics +# MClasses metrics - ## project base_simple3 - `- group base_simple3 + ## 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 - cnbna: number of accessible nullable attributes (inherited + local) -- nothing + 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 - cnbna: number of accessible nullable attributes (inherited + local) -- nothing + 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 ---- 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%) + 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 - ## project base_simple3 - `- group base_simple3 + ## package base_simple3 + `- group base_simple3> cnoac: number of class_kind ancestor avg: 0.0 max: Object (0) @@ -716,6 +736,89 @@ Number of buggy sends (cannot determine the type of the receiver): 0 (0.0%) 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 @@ -744,17 +847,17 @@ Number of buggy sends (cannot determine the type of the receiver): 0 (0.0%) 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: 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) @@ -797,49 +900,49 @@ Number of buggy sends (cannot determine the type of the receiver): 0 (0.0%) sum: 0 ## Callsites -* 22 live callsites +* 21 live callsites MMethodDef locally designated (by number of CallSites) - population: 13 + population: 12 minimum value: 1 maximum value: 10 - total value: 22 - average value: 1.69 + total value: 21 + average value: 1.75 distribution: - <=1: sub-population=12 (92.30%); cumulated value=12 (54.54%) - <=16: sub-population=1 (7.69%); cumulated value=10 (45.45%) + <=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 (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$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#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%) + 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: 13 + population: 12 minimum value: 1 maximum value: 10 - total value: 22 - average value: 1.69 + total value: 21 + average value: 1.75 distribution: - <=1: sub-population=12 (92.30%); cumulated value=12 (54.54%) - <=16: sub-population=1 (7.69%); cumulated value=10 (45.45%) + <=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 (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$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#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%) + 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/ @@ -849,5 +952,6 @@ mmodules/ model.html module_hierarchy.dot nullables/ -project_hierarchy.dot +package_hierarchy.dot +readme.csv rta/