Merge branch 'hardening_types'
[nit.git] / tests / sav / nitmetrics_args1.res
1 *** METRICS ***
2
3 # MModules metrics
4
5  ## project base_simple3
6   `- group base_simple3
7         mnoa: number of ancestor modules
8             avg: 0.0
9             max: base_simple3 (0)
10             min: base_simple3 (0)
11         mnop: number of parent modules
12             avg: 0.0
13             max: base_simple3 (0)
14             min: base_simple3 (0)
15         mnoc: number of child modules
16             avg: 0.0
17             max: base_simple3 (0)
18             min: base_simple3 (0)
19         mnod: number of descendant modules
20             avg: 0.0
21             max: base_simple3 (0)
22             min: base_simple3 (0)
23         mdit: depth in module tree
24             avg: 0.0
25             max: base_simple3 (0)
26             min: base_simple3 (0)
27         mnbi: number of introduction in module
28             avg: 7.0
29             max: base_simple3 (7)
30             min: base_simple3 (7)
31         mnbr: number of refinement in module
32             avg: 1.0
33             max: base_simple3 (1)
34             min: base_simple3 (1)
35         mnbcc: number of concrete class in module (intro + redef)
36             avg: 4.0
37             max: base_simple3 (4)
38             min: base_simple3 (4)
39         mnbac: number of abstract class in module (intro + redef)
40             avg: 0.0
41             max: base_simple3 (0)
42             min: base_simple3 (0)
43         mnbic: number of interface in module (intro + redef)
44             avg: 2.0
45             max: base_simple3 (2)
46             min: base_simple3 (2)
47
48  ## global metrics
49         mnoa: number of ancestor modules
50             avg: 0.0
51             max: base_simple3 (0)
52             min: base_simple3 (0)
53         mnop: number of parent modules
54             avg: 0.0
55             max: base_simple3 (0)
56             min: base_simple3 (0)
57         mnoc: number of child modules
58             avg: 0.0
59             max: base_simple3 (0)
60             min: base_simple3 (0)
61         mnod: number of descendant modules
62             avg: 0.0
63             max: base_simple3 (0)
64             min: base_simple3 (0)
65         mdit: depth in module tree
66             avg: 0.0
67             max: base_simple3 (0)
68             min: base_simple3 (0)
69         mnbi: number of introduction in module
70             avg: 7.0
71             max: base_simple3 (7)
72             min: base_simple3 (7)
73         mnbr: number of refinement in module
74             avg: 1.0
75             max: base_simple3 (1)
76             min: base_simple3 (1)
77         mnbcc: number of concrete class in module (intro + redef)
78             avg: 4.0
79             max: base_simple3 (4)
80             min: base_simple3 (4)
81         mnbac: number of abstract class in module (intro + redef)
82             avg: 0.0
83             max: base_simple3 (0)
84             min: base_simple3 (0)
85         mnbic: number of interface in module (intro + redef)
86             avg: 2.0
87             max: base_simple3 (2)
88             min: base_simple3 (2)
89
90 # MClasses metrics
91
92  ## project base_simple3
93   `- group base_simple3
94         cnoa: number of ancestor classes
95             avg: 0.857
96             max: Bool (1)
97             min: Object (0)
98         cnop: number of parent classes
99             avg: 0.857
100             max: Bool (1)
101             min: Object (0)
102         cnoc: number of child classes
103             avg: 0.857
104             max: Object (6)
105             min: Bool (0)
106         cnod: number of descendant classes
107             avg: 0.857
108             max: Object (6)
109             min: Bool (0)
110         cdit: depth in class tree
111             avg: 0.857
112             max: Bool (1)
113             min: Object (0)
114         cnbip: number of introduced properties
115             avg: 2.714
116             max: C (7)
117             min: Bool (0)
118         cnbrp: number of redefined properties
119             avg: 0.0
120             max: Object (0)
121             min: Object (0)
122         cnbhp: number of inherited properties
123             avg: 2.571
124             max: Bool (3)
125             min: Object (0)
126
127  ## global metrics
128         cnoa: number of ancestor classes
129             avg: 0.857
130             max: Bool (1)
131             min: Object (0)
132         cnop: number of parent classes
133             avg: 0.857
134             max: Bool (1)
135             min: Object (0)
136         cnoc: number of child classes
137             avg: 0.857
138             max: Object (6)
139             min: Bool (0)
140         cnod: number of descendant classes
141             avg: 0.857
142             max: Object (6)
143             min: Bool (0)
144         cdit: depth in class tree
145             avg: 0.857
146             max: Bool (1)
147             min: Object (0)
148         cnbip: number of introduced properties
149             avg: 2.714
150             max: C (7)
151             min: Bool (0)
152         cnbrp: number of redefined properties
153             avg: 0.0
154             max: Object (0)
155             min: Object (0)
156         cnbhp: number of inherited properties
157             avg: 2.571
158             max: Bool (3)
159             min: Object (0)
160 --- Poset metrics ---
161 ## Module importation hierarchy
162 Number of nodes: 1
163 Number of edges: 1 (1.00 per node)
164 Number of direct edges: 0 (0.0 per node)
165 Distribution of greaters
166  population: 1
167  minimum value: 1
168  maximum value: 1
169  total value: 1
170  average value: 1.00
171  distribution:
172   <=1: sub-population=1 (100.00%); cumulated value=1 (100.00%)
173 Distribution of direct greaters
174  population: 1
175  minimum value: 0
176  maximum value: 0
177  total value: 0
178  average value: 0.0
179  distribution:
180   <=0: sub-population=1 (100.00%); cumulated value=0 (na%)
181 Distribution of smallers
182  population: 1
183  minimum value: 1
184  maximum value: 1
185  total value: 1
186  average value: 1.00
187  distribution:
188   <=1: sub-population=1 (100.00%); cumulated value=1 (100.00%)
189 Distribution of direct smallers
190  population: 1
191  minimum value: 0
192  maximum value: 0
193  total value: 0
194  average value: 0.0
195  distribution:
196   <=0: sub-population=1 (100.00%); cumulated value=0 (na%)
197 ## Classdef hierarchy
198 Number of nodes: 8
199 Number of edges: 22 (2.75 per node)
200 Number of direct edges: 7 (0.87 per node)
201 Distribution of greaters
202  population: 8
203  minimum value: 2
204  maximum value: 3
205  total value: 22
206  average value: 2.75
207  distribution:
208   <=2: sub-population=2 (25.00%); cumulated value=4 (18.18%)
209   <=4: sub-population=6 (75.00%); cumulated value=18 (81.81%)
210 Distribution of direct greaters
211  population: 8
212  minimum value: 0
213  maximum value: 1
214  total value: 7
215  average value: 0.87
216  distribution:
217   <=0: sub-population=1 (12.50%); cumulated value=0 (0.0%)
218   <=1: sub-population=7 (87.50%); cumulated value=7 (100.00%)
219 Distribution of smallers
220  population: 8
221  minimum value: 1
222  maximum value: 8
223  total value: 22
224  average value: 2.75
225  distribution:
226   <=1: sub-population=6 (75.00%); cumulated value=6 (27.27%)
227   <=8: sub-population=2 (25.00%); cumulated value=16 (72.72%)
228 Distribution of direct smallers
229  population: 8
230  minimum value: 0
231  maximum value: 6
232  total value: 7
233  average value: 0.87
234  distribution:
235   <=0: sub-population=6 (75.00%); cumulated value=0 (0.0%)
236   <=1: sub-population=1 (12.50%); cumulated value=1 (14.28%)
237   <=8: sub-population=1 (12.50%); cumulated value=6 (85.71%)
238 ## Class hierarchy
239 Number of nodes: 7
240 Number of edges: 13 (1.85 per node)
241 Number of direct edges: 6 (0.85 per node)
242 Distribution of greaters
243  population: 7
244  minimum value: 1
245  maximum value: 2
246  total value: 13
247  average value: 1.85
248  distribution:
249   <=1: sub-population=1 (14.28%); cumulated value=1 (7.69%)
250   <=2: sub-population=6 (85.71%); cumulated value=12 (92.30%)
251 Distribution of direct greaters
252  population: 7
253  minimum value: 0
254  maximum value: 1
255  total value: 6
256  average value: 0.85
257  distribution:
258   <=0: sub-population=1 (14.28%); cumulated value=0 (0.0%)
259   <=1: sub-population=6 (85.71%); cumulated value=6 (100.00%)
260 Distribution of smallers
261  population: 7
262  minimum value: 1
263  maximum value: 7
264  total value: 13
265  average value: 1.85
266  distribution:
267   <=1: sub-population=6 (85.71%); cumulated value=6 (46.15%)
268   <=8: sub-population=1 (14.28%); cumulated value=7 (53.84%)
269 Distribution of direct smallers
270  population: 7
271  minimum value: 0
272  maximum value: 6
273  total value: 6
274  average value: 0.85
275  distribution:
276   <=0: sub-population=6 (85.71%); cumulated value=0 (0.0%)
277   <=8: sub-population=1 (14.28%); cumulated value=6 (100.00%)
278 --- AST Metrics ---
279 ## All nodes of the AST
280  population: 47
281  minimum value: 1
282  maximum value: 39
283  total value: 254
284  average value: 5.40
285  distribution:
286   <=1: sub-population=14 (29.78%); cumulated value=14 (5.51%)
287   <=2: sub-population=6 (12.76%); cumulated value=12 (4.72%)
288   <=4: sub-population=9 (19.14%); cumulated value=29 (11.41%)
289   <=8: sub-population=10 (21.27%); cumulated value=61 (24.01%)
290   <=16: sub-population=4 (8.51%); cumulated value=44 (17.32%)
291   <=32: sub-population=3 (6.38%); cumulated value=55 (21.65%)
292   <=64: sub-population=1 (2.12%); cumulated value=39 (15.35%)
293  list:
294   TId: 39 (15.35%)
295   AListExprs: 19 (7.48%)
296   APublicVisibility: 18 (7.08%)
297   ACallExpr: 18 (7.08%)
298   TClassid: 15 (5.90%)
299   TNumber: 10 (3.93%)
300   AIntExpr: 10 (3.93%)
301   AType: 9 (3.54%)
302   TKwend: 8 (3.14%)
303   ASignature: 8 (3.14%)
304   ...
305   AModule: 1 (0.39%)
306   AMainClassdef: 1 (0.39%)
307   ATopClassdef: 1 (0.39%)
308   TKwreturn: 1 (0.39%)
309   AReturnExpr: 1 (0.39%)
310   TKwinterface: 1 (0.39%)
311   ANoImport: 1 (0.39%)
312   AInterfaceClasskind: 1 (0.39%)
313   AMainMethPropdef: 1 (0.39%)
314   TKwimport: 1 (0.39%)
315 ## All identifiers of the AST
316  population: 19
317  minimum value: 1
318  maximum value: 11
319  total value: 54
320  average value: 2.84
321  distribution:
322   <=1: sub-population=2 (10.52%); cumulated value=2 (3.70%)
323   <=2: sub-population=12 (63.15%); cumulated value=24 (44.44%)
324   <=4: sub-population=3 (15.78%); cumulated value=10 (18.51%)
325   <=8: sub-population=1 (5.26%); cumulated value=7 (12.96%)
326   <=16: sub-population=1 (5.26%); cumulated value=11 (20.37%)
327  list:
328   output: 11 (20.37%)
329   Int: 7 (12.96%)
330   run: 4 (7.40%)
331   c: 3 (5.55%)
332   val: 3 (5.55%)
333   i: 2 (3.70%)
334   bar: 2 (3.70%)
335   foo: 2 (3.70%)
336   val2: 2 (3.70%)
337   val1: 2 (3.70%)
338   C: 2 (3.70%)
339   v: 2 (3.70%)
340   baz: 2 (3.70%)
341   a: 2 (3.70%)
342   A: 2 (3.70%)
343   B: 2 (3.70%)
344   b: 2 (3.70%)
345   Object: 1 (1.85%)
346   Bool: 1 (1.85%)
347 --- Metrics of refinement usage ---
348 Number of modules: 1
349
350 Number of classes: 7
351   Number of interface kind: 1 (14.28%)
352   Number of enum kind: 2 (28.57%)
353   Number of class kind: 4 (57.14%)
354
355 Number of class definitions: 8
356 Number of refined classes: 1 (14.28%)
357 Average number of class refinments by classes: 0.14
358 Average number of class refinments by refined classes: 1.00
359
360 Number of properties: 19
361   Number of MAttribute: 3 (15.78%)
362   Number of MMethod: 16 (84.21%)
363
364 Number of property definitions: 19
365 Number of redefined properties: 0 (0.0%)
366 Average number of property redefinitions by property: 0.0
367 Average number of property redefinitions by redefined property: na
368 --- Metrics of the explitic static types ---
369 Total number of explicit static types: 9
370 Statistics of type usage:
371  population: 4
372  minimum value: 1
373  maximum value: 6
374  total value: 9
375  average value: 2.25
376  distribution:
377   <=1: sub-population=3 (75.00%); cumulated value=3 (33.33%)
378   <=8: sub-population=1 (25.00%); cumulated value=6 (66.66%)
379  list:
380   Int: 6 (66.66%)
381   C: 1 (11.11%)
382   B: 1 (11.11%)
383   A: 1 (11.11%)
384 --- Sends on Nullable Receiver ---
385 Total number of sends: 19
386 Number of sends on a nullable receiver: 0 (0.0%)
387 Number of buggy sends (cannot determine the type of the receiver): 0 (0.0%)
388 --- Explicit vs. Implicit Self ---
389 Total number of self: 5
390 Total number of implicit self: 4 (80.00%)
391 --- Construction of tables ---
392 Number of runtime classes: 6 (excluding interfaces and abstract classes)
393 Average number of composing class definition by runtime class: 3.00
394 Total size of tables (classes and instances): 34 (not including stuff like info for subtyping or call-next-method)
395 Average size of table by runtime class: 5.66
396 Values never redefined: 34 (100.00%)
397 --- RTA metrics ---
398 Number of live runtime classes: 6
399         Sys Bool Int A B C
400 Number of live runtime types (instantied resolved type): 6
401         Sys Bool Int A B C
402 Number of live methods: 14
403 Number of live method definitions: 14
404 Number of live runtime cast types (ie used in as and isa): 0
405         
406 Number of dead method definitions of live methods: 0
407 generating out/nitmetrics_args1.write/project_hierarchy.dot
408 generating out/nitmetrics_args1.write/module_hierarchy.dot
409
410 # Inheritance metrics
411
412  ## project base_simple3
413   `- group base_simple3
414         cnoa: number of ancestor classes
415             avg: 0.857
416             max: Bool (1)
417             min: Object (0)
418         cnop: number of parent classes
419             avg: 0.857
420             max: Bool (1)
421             min: Object (0)
422         cnoc: number of child classes
423             avg: 0.857
424             max: Object (6)
425             min: Bool (0)
426         cnodc: number of class_kind descendants
427             avg: 0.571
428             max: Object (4)
429             min: Bool (0)
430         cnodi: number of interface_kind descendants
431             avg: 0.0
432             max: Object (0)
433             min: Object (0)
434         cdit: depth in class tree
435             avg: 0.857
436             max: Bool (1)
437             min: Object (0)
438         cditi: depth in class tree following only interface_kind
439             avg: 0.857
440             max: Bool (1)
441             min: Object (0)
442         mdui: proportion of mclass defined using inheritance (has other parent than Object)
443             avg: 0.0
444             max: base_simple3 (0.0)
445             min: base_simple3 (0.0)
446         mduic: proportion of class_kind defined using inheritance
447             avg: 0.0
448             max: base_simple3 (0.0)
449             min: base_simple3 (0.0)
450         mduii: proportion of interface_kind defined using inheritance
451             avg: 0.0
452             max: base_simple3 (0.0)
453             min: base_simple3 (0.0)
454         mif: proportion of mclass inherited from
455             avg: 0.143
456             max: base_simple3 (0.143)
457             min: base_simple3 (0.143)
458         mifc: proportion of class_kind inherited from
459             avg: 0.0
460             max: base_simple3 (0.0)
461             min: base_simple3 (0.0)
462         mifi: proportion of interface_kind inherited from
463             avg: 0.143
464             max: base_simple3 (0.143)
465             min: base_simple3 (0.143)
466
467  ## global metrics
468         cnoa: number of ancestor classes
469             avg: 0.857
470             max: Bool (1)
471             min: Object (0)
472         cnop: number of parent classes
473             avg: 0.857
474             max: Bool (1)
475             min: Object (0)
476         cnoc: number of child classes
477             avg: 0.857
478             max: Object (6)
479             min: Bool (0)
480         cnodc: number of class_kind descendants
481             avg: 0.571
482             max: Object (4)
483             min: Bool (0)
484         cnodi: number of interface_kind descendants
485             avg: 0.0
486             max: Object (0)
487             min: Object (0)
488         cdit: depth in class tree
489             avg: 0.857
490             max: Bool (1)
491             min: Object (0)
492         cditi: depth in class tree following only interface_kind
493             avg: 0.857
494             max: Bool (1)
495             min: Object (0)
496         mdui: proportion of mclass defined using inheritance (has other parent than Object)
497             avg: 0.0
498             max: base_simple3 (0.0)
499             min: base_simple3 (0.0)
500         mduic: proportion of class_kind defined using inheritance
501             avg: 0.0
502             max: base_simple3 (0.0)
503             min: base_simple3 (0.0)
504         mduii: proportion of interface_kind defined using inheritance
505             avg: 0.0
506             max: base_simple3 (0.0)
507             min: base_simple3 (0.0)
508         mif: proportion of mclass inherited from
509             avg: 0.143
510             max: base_simple3 (0.143)
511             min: base_simple3 (0.143)
512         mifc: proportion of class_kind inherited from
513             avg: 0.0
514             max: base_simple3 (0.0)
515             min: base_simple3 (0.0)
516         mifi: proportion of interface_kind inherited from
517             avg: 0.143
518             max: base_simple3 (0.143)
519             min: base_simple3 (0.143)
520 class_hierarchy.dot
521 classdef_hierarchy.dot
522 model.html
523 module_hierarchy.dot
524 project_hierarchy.dot