## 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 direct edges: 0 (0.00 per node)
Distribution of greaters
population: 1
minimum value: 1
minimum value: 0
maximum value: 0
total value: 0
- average value: 0.0
+ average value: 0.00
distribution:
<=0: sub-population=1 (100.00%); cumulated value=0 (na%)
Distribution of smallers
minimum value: 0
maximum value: 0
total value: 0
- average value: 0.0
+ average value: 0.00
distribution:
<=0: sub-population=1 (100.00%); cumulated value=0 (na%)
## Classdef hierarchy
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
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
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
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
+ population: 48
minimum value: 1
- maximum value: 39
- total value: 256
- average value: 5.44
+ maximum value: 40
+ total value: 261
+ average value: 5.43
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%)
+ <=1: sub-population=15 (31.25%); cumulated value=15 (5.74%)
+ <=2: sub-population=5 (10.41%); cumulated value=10 (3.83%)
+ <=4: sub-population=10 (20.83%); cumulated value=32 (12.26%)
+ <=8: sub-population=10 (20.83%); cumulated value=64 (24.52%)
+ <=16: sub-population=4 (8.33%); cumulated value=44 (16.85%)
+ <=32: sub-population=3 (6.25%); cumulated value=56 (21.45%)
+ <=64: sub-population=1 (2.08%); cumulated value=40 (15.32%)
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%)
+ TId: 40 (15.32%)
+ APublicVisibility: 19 (7.27%)
+ AListExprs: 19 (7.27%)
+ ACallExpr: 18 (6.89%)
+ TClassid: 15 (5.74%)
+ TNumber: 10 (3.83%)
+ ADecIntExpr: 10 (3.83%)
+ AType: 9 (3.44%)
+ TKwend: 8 (3.06%)
+ ASignature: 8 (3.06%)
...
- 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%)
+ ACallAssignExpr: 1 (0.38%)
+ AAnnotations: 1 (0.38%)
+ AReturnExpr: 1 (0.38%)
+ TKwreturn: 1 (0.38%)
+ AInterfaceClasskind: 1 (0.38%)
+ TKwinterface: 1 (0.38%)
+ ANoImport: 1 (0.38%)
+ AMainMethPropdef: 1 (0.38%)
+ AMainClassdef: 1 (0.38%)
+ TKwimport: 1 (0.38%)
## All identifiers of the AST
- population: 19
+ population: 20
minimum value: 1
maximum value: 11
- total value: 54
- average value: 2.84
+ total value: 55
+ average value: 2.75
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=3 (15.00%); cumulated value=3 (5.45%)
+ <=2: sub-population=12 (60.00%); cumulated value=24 (43.63%)
+ <=4: sub-population=3 (15.00%); cumulated value=10 (18.18%)
+ <=8: sub-population=1 (5.00%); cumulated value=7 (12.72%)
+ <=16: sub-population=1 (5.00%); 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%)
+ intern: 1 (1.81%)
+ Object: 1 (1.81%)
+ Bool: 1 (1.81%)
+--- 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
--- Metrics of refinement usage ---
Number of modules: 1
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
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%)
-generating out/nitmetrics_args1.write/project_hierarchy.dot
-generating out/nitmetrics_args1.write/module_hierarchy.dot
+generating project_hierarchy.dot
+generating module_hierarchy.dot
# Inheritance metrics
blooming mclasses (threshold: 1.935)
B: 2.25
C: 2.25
+--- Detection of the usage of covariance static type conformance ---
+-- Total --
+- Kinds of the subtype -
+ list:
+ primitive type: 6 (100.00%)
+ total: 6
+- Variance -
+ list:
+ monomorph: 6 (100.00%)
+ total: 6
+- Classes of the subtype -
+ list:
+ Int: 6 (100.00%)
+ total: 6
+-- 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
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%)
+Number of sends on a nullable receiver: 0 (0.00%)
+Number of buggy sends (cannot determine the type of the receiver): 0 (0.00%)
# RTA metrics