3 ## All nodes of the AST
10 <=1: sub-population=16 (30.76%); cumulated value=16 (5.26%)
11 <=2: sub-population=5 (9.61%); cumulated value=10 (3.28%)
12 <=4: sub-population=9 (17.30%); cumulated value=28 (9.21%)
13 <=8: sub-population=12 (23.07%); cumulated value=76 (25.00%)
14 <=16: sub-population=5 (9.61%); cumulated value=59 (19.40%)
15 <=32: sub-population=4 (7.69%); cumulated value=75 (24.67%)
16 <=64: sub-population=1 (1.92%); cumulated value=40 (13.15%)
19 APublicVisibility: 19 (6.25%)
20 AListExprs: 19 (6.25%)
26 AIntegerExpr: 10 (3.28%)
29 AAnnotation: 1 (0.32%)
30 AAnnotations: 1 (0.32%)
31 AReturnExpr: 1 (0.32%)
33 AInterfaceClasskind: 1 (0.32%)
34 TKwinterface: 1 (0.32%)
36 AMainMethPropdef: 1 (0.32%)
37 AMainClassdef: 1 (0.32%)
39 ## All identifiers of the AST
46 <=1: sub-population=3 (15.00%); cumulated value=3 (5.45%)
47 <=2: sub-population=12 (60.00%); cumulated value=24 (43.63%)
48 <=4: sub-population=3 (15.00%); cumulated value=10 (18.18%)
49 <=8: sub-population=1 (5.00%); cumulated value=7 (12.72%)
50 <=16: sub-population=1 (5.00%); cumulated value=11 (20.00%)
72 --- Detection of variance constraints on formal parameter types ---
75 non generic: 7 (100.00%)
77 total formal parameters: 0
78 -- Including `private` properties --
80 contravariants: 0 (na%)
84 -- Excluding `private` properties --
86 contravariants: 0 (na%)
91 ## Module importation hierarchy
93 Number of edges: 1 (1.00 per node)
94 Number of direct edges: 0 (0.00 per node)
95 Distribution of greaters
102 <=1: sub-population=1 (100.00%); cumulated value=1 (100.00%)
103 Distribution of direct greaters
110 <=0: sub-population=1 (100.00%); cumulated value=0 (na%)
111 Distribution of smallers
118 <=1: sub-population=1 (100.00%); cumulated value=1 (100.00%)
119 Distribution of direct smallers
126 <=0: sub-population=1 (100.00%); cumulated value=0 (na%)
127 ## Classdef hierarchy
129 Number of edges: 13 (1.85 per node)
130 Number of direct edges: 6 (0.85 per node)
131 Distribution of greaters
138 <=1: sub-population=1 (14.28%); cumulated value=1 (7.69%)
139 <=2: sub-population=6 (85.71%); cumulated value=12 (92.30%)
140 Distribution of direct greaters
147 <=0: sub-population=1 (14.28%); cumulated value=0 (0.00%)
148 <=1: sub-population=6 (85.71%); cumulated value=6 (100.00%)
149 Distribution of smallers
156 <=1: sub-population=6 (85.71%); cumulated value=6 (46.15%)
157 <=8: sub-population=1 (14.28%); cumulated value=7 (53.84%)
158 Distribution of direct smallers
165 <=0: sub-population=6 (85.71%); cumulated value=0 (0.00%)
166 <=8: sub-population=1 (14.28%); cumulated value=6 (100.00%)
169 Number of edges: 13 (1.85 per node)
170 Number of direct edges: 6 (0.85 per node)
171 Distribution of greaters
178 <=1: sub-population=1 (14.28%); cumulated value=1 (7.69%)
179 <=2: sub-population=6 (85.71%); cumulated value=12 (92.30%)
180 Distribution of direct greaters
187 <=0: sub-population=1 (14.28%); cumulated value=0 (0.00%)
188 <=1: sub-population=6 (85.71%); cumulated value=6 (100.00%)
189 Distribution of smallers
196 <=1: sub-population=6 (85.71%); cumulated value=6 (46.15%)
197 <=8: sub-population=1 (14.28%); cumulated value=7 (53.84%)
198 Distribution of direct smallers
205 <=0: sub-population=6 (85.71%); cumulated value=0 (0.00%)
206 <=8: sub-population=1 (14.28%); cumulated value=6 (100.00%)
207 --- Metrics of refinement usage ---
211 Number of interface kind: 1 (14.28%)
212 Number of enum kind: 2 (28.57%)
213 Number of class kind: 4 (57.14%)
215 Number of class definitions: 7
216 Number of refined classes: 0 (0.00%)
217 Average number of class refinments by classes: 0.00
218 Average number of class refinments by refined classes: na
220 Number of properties: 18
221 Number of MAttribute: 3 (16.66%)
222 Number of MMethod: 15 (83.33%)
224 Number of property definitions: 20
225 Number of redefined properties: 1 (5.55%)
226 Average number of property redefinitions by property: 0.11
227 Average number of property redefinitions by redefined property: 2.00
228 --- Explicit vs. Implicit Self ---
229 Total number of self: 5
230 Total number of implicit self: 4 (80.00%)
231 --- Construction of tables ---
232 Number of runtime classes: 6 (excluding interfaces and abstract classes)
233 Average number of composing class definition by runtime class: 2.00
234 Total size of tables (classes and instances): 23 (not including stuff like info for subtyping or call-next-method)
235 Average size of table by runtime class: 3.83
236 Values never redefined: 17 (73.91%)
237 generating package_hierarchy.dot
238 generating module_hierarchy.dot
242 ## package base_simple3
243 `- group base_simple3>
244 cnoa: number of ancestor classes
250 cnop: number of parent classes
256 cnoc: number of child classes
262 cnod: number of descendant classes
268 cdit: depth in class tree
274 cnbp: number of accessible properties (inherited + local)
280 cnba: number of accessible attributes (inherited + local)
286 cnbi: number of accessible constructors (inherited + local)
292 cnbm: number of accessible methods (inherited + local)
298 cnbv: number of accessible virtual types (inherited + local)
304 cnbip: number of introduced properties
310 cnbrp: number of redefined properties
316 cnbhp: number of inherited properties
324 cnoa: number of ancestor classes
330 cnop: number of parent classes
336 cnoc: number of child classes
342 cnod: number of descendant classes
348 cdit: depth in class tree
354 cnbp: number of accessible properties (inherited + local)
360 cnba: number of accessible attributes (inherited + local)
366 cnbi: number of accessible constructors (inherited + local)
372 cnbm: number of accessible methods (inherited + local)
378 cnbv: number of accessible virtual types (inherited + local)
384 cnbip: number of introduced properties
390 cnbrp: number of redefined properties
396 cnbhp: number of inherited properties
405 ## package base_simple3
406 `- group base_simple3>
407 mnoa: number of ancestor modules
409 max: base_simple3 (0)
410 min: base_simple3 (0)
413 mnop: number of parent modules
415 max: base_simple3 (0)
416 min: base_simple3 (0)
419 mnoc: number of child modules
421 max: base_simple3 (0)
422 min: base_simple3 (0)
425 mnod: number of descendant modules
427 max: base_simple3 (0)
428 min: base_simple3 (0)
431 mdit: depth in module tree
433 max: base_simple3 (0)
434 min: base_simple3 (0)
437 mnbi: number of introduction in module
439 max: base_simple3 (7)
440 min: base_simple3 (7)
443 mnbr: number of refinement in module
445 max: base_simple3 (0)
446 min: base_simple3 (0)
449 mnbcc: number of concrete class in module (intro + redef)
451 max: base_simple3 (4)
452 min: base_simple3 (4)
455 mnbac: number of abstract class in module (intro + redef)
457 max: base_simple3 (0)
458 min: base_simple3 (0)
461 mnbic: number of interface in module (intro + redef)
463 max: base_simple3 (1)
464 min: base_simple3 (1)
469 mnoa: number of ancestor modules
471 max: base_simple3 (0)
472 min: base_simple3 (0)
475 mnop: number of parent modules
477 max: base_simple3 (0)
478 min: base_simple3 (0)
481 mnoc: number of child modules
483 max: base_simple3 (0)
484 min: base_simple3 (0)
487 mnod: number of descendant modules
489 max: base_simple3 (0)
490 min: base_simple3 (0)
493 mdit: depth in module tree
495 max: base_simple3 (0)
496 min: base_simple3 (0)
499 mnbi: number of introduction in module
501 max: base_simple3 (7)
502 min: base_simple3 (7)
505 mnbr: number of refinement in module
507 max: base_simple3 (0)
508 min: base_simple3 (0)
511 mnbcc: number of concrete class in module (intro + redef)
513 max: base_simple3 (4)
514 min: base_simple3 (4)
517 mnbac: number of abstract class in module (intro + redef)
519 max: base_simple3 (0)
520 min: base_simple3 (0)
523 mnbic: number of interface in module (intro + redef)
525 max: base_simple3 (1)
526 min: base_simple3 (1)
530 # Inheritance metrics
532 ## package base_simple3
533 `- group base_simple3>
534 cnoac: number of class_kind ancestor
540 cnopc: number of class_kind parent
546 cnocc: number of class_kind children
552 cnodc: number of class_kind descendants
558 cnopi: number of interface_kind parent
564 cnoci: number of interface_kind children
570 cnodi: number of interface_kind descendants
576 cditc: depth in class tree following only class, abstract, extern kind
582 cditi: depth in class tree following only interface_kind
588 mdui: proportion of mclass defined using inheritance (has other parent than Object)
590 max: base_simple3 (0.0)
591 min: base_simple3 (0.0)
594 mduic: proportion of class_kind defined using inheritance
596 max: base_simple3 (0.0)
597 min: base_simple3 (0.0)
600 mduii: proportion of interface_kind defined using inheritance
602 max: base_simple3 (0.0)
603 min: base_simple3 (0.0)
606 mif: proportion of mclass inherited from
608 max: base_simple3 (0.143)
609 min: base_simple3 (0.143)
612 mifc: proportion of class_kind inherited from
614 max: base_simple3 (0.0)
615 min: base_simple3 (0.0)
618 mifi: proportion of interface_kind inherited from
620 max: base_simple3 (0.143)
621 min: base_simple3 (0.143)
626 cnoac: number of class_kind ancestor
632 cnopc: number of class_kind parent
638 cnocc: number of class_kind children
644 cnodc: number of class_kind descendants
650 cnopi: number of interface_kind parent
656 cnoci: number of interface_kind children
662 cnodi: number of interface_kind descendants
668 cditc: depth in class tree following only class, abstract, extern kind
674 cditi: depth in class tree following only interface_kind
680 mdui: proportion of mclass defined using inheritance (has other parent than Object)
682 max: base_simple3 (0.0)
683 min: base_simple3 (0.0)
686 mduic: proportion of class_kind defined using inheritance
688 max: base_simple3 (0.0)
689 min: base_simple3 (0.0)
692 mduii: proportion of interface_kind defined using inheritance
694 max: base_simple3 (0.0)
695 min: base_simple3 (0.0)
698 mif: proportion of mclass inherited from
700 max: base_simple3 (0.143)
701 min: base_simple3 (0.143)
704 mifc: proportion of class_kind inherited from
706 max: base_simple3 (0.0)
707 min: base_simple3 (0.0)
710 mifi: proportion of interface_kind inherited from
712 max: base_simple3 (0.143)
713 min: base_simple3 (0.143)
716 --- Metrics of the explitic static types ---
717 Total number of explicit static types: 9
718 Statistics of type usage:
725 <=1: sub-population=3 (75.00%); cumulated value=3 (33.33%)
726 <=8: sub-population=1 (25.00%); cumulated value=6 (66.66%)
734 large mclasses (threshold: 3.915)
738 budding mclasses (threshold: 5.033)
739 blooming mclasses (threshold: 21.874)
741 --- Detection of the usage of covariance static type conformance ---
743 - Kinds of the subtype -
745 primitive type: 6 (100.00%)
749 monomorph: 6 (100.00%)
751 - Classes of the subtype -
755 -- On covariance only --
756 - Specific covariance case explanations -
759 - Classes of the subtype, when covariance -
762 - Patterns of the covariant cases -
765 - Nodes of the covariance cases -
768 - Modules of the covariance cases -
771 - Kind of the expression node (when it make sense) -
775 - Kind of cast target -
778 - Classes of the cast -
790 ## package base_simple3
791 `- group base_simple3>
792 cnba: number of accessible attributes (inherited + local)
798 cnbna: number of accessible nullable attributes (inherited + local) -- nothing
802 cnba: number of accessible attributes (inherited + local)
808 cnbna: number of accessible nullable attributes (inherited + local) -- nothing
810 --- Sends on Nullable Receiver ---
811 Total number of sends: 19
812 Number of sends on a unsafe nullable receiver: 0 (0.00%)
813 Number of sends on a safe nullable receiver: 0 (0.00%)
814 Number of buggy sends (cannot determine the type of the receiver): 0 (0.00%)
818 ## Live instances by mainmodules
819 mnlc: number of live mclasses in a mmodule
821 max: base_simple3 (6)
822 min: base_simple3 (6)
825 mnlt: number of live mtypes in a mmodule
827 max: base_simple3 (6)
828 min: base_simple3 (6)
831 mnct: number of live cast mtypes in a mmodule
833 max: base_simple3 (0)
834 min: base_simple3 (0)
837 mnli: number of live instances in a mmodule
839 max: base_simple3 (17)
840 min: base_simple3 (17)
843 mnlm: number of live methods in a mmodule
845 max: base_simple3 (14)
846 min: base_simple3 (14)
849 mnlmd: number of live method definitions in a mmodule
851 max: base_simple3 (16)
852 min: base_simple3 (16)
855 mnldd: number of dead method definitions in a mmodule
857 max: base_simple3 (0)
858 min: base_simple3 (0)
862 ## Total live instances by mclasses
863 cnli: number of live instances for a mclass
869 cnlc: number of live cast for a mclass type -- nothing
872 ## Total live instances by mtypes
873 tnli: number of live instances for a mtype
879 tnlc: number of live casts to a mtype -- nothing
883 tags: arity of generic signature
889 tdos: depth of generic signature
898 MMethodDef locally designated (by number of CallSites)
905 <=1: sub-population=13 (92.85%); cumulated value=13 (56.52%)
906 <=16: sub-population=1 (7.14%); cumulated value=10 (43.47%)
908 base_simple3$Int$output: 10 (43.47%)
909 base_simple3$B$val: 1 (4.34%)
910 base_simple3$B$val=: 1 (4.34%)
911 base_simple3$Object$init: 1 (4.34%)
912 base_simple3$C$val2: 1 (4.34%)
914 base_simple3$A$init: 1 (4.34%)
915 base_simple3$Sys$baz: 1 (4.34%)
916 base_simple3$Sys$bar: 1 (4.34%)
917 base_simple3$Sys$foo: 1 (4.34%)
918 base_simple3$C$init: 1 (4.34%)
919 MMethodDef possibly invoked at runtime (by number of CallSites)
926 <=1: sub-population=13 (92.85%); cumulated value=13 (56.52%)
927 <=16: sub-population=1 (7.14%); cumulated value=10 (43.47%)
929 base_simple3$Int$output: 10 (43.47%)
930 base_simple3$B$val: 1 (4.34%)
931 base_simple3$B$val=: 1 (4.34%)
932 base_simple3$Object$init: 1 (4.34%)
933 base_simple3$C$val2: 1 (4.34%)
935 base_simple3$A$init: 1 (4.34%)
936 base_simple3$Sys$baz: 1 (4.34%)
937 base_simple3$Sys$bar: 1 (4.34%)
938 base_simple3$Sys$foo: 1 (4.34%)
939 base_simple3$C$init: 1 (4.34%)
941 classdef_hierarchy.dot
949 package_hierarchy.dot