tests: update to pass tests
authorJean Privat <jean@pryen.org>
Wed, 20 Aug 2014 00:52:23 +0000 (20:52 -0400)
committerJean Privat <jean@pryen.org>
Mon, 25 Aug 2014 17:05:38 +0000 (13:05 -0400)
Signed-off-by: Jean Privat <jean@pryen.org>

20 files changed:
tests/base_attr_def.nit
tests/base_init_super_call.nit
tests/base_init_super_call2.nit
tests/nitmetrics.args
tests/sav/base_init_combine.res
tests/sav/base_init_simple.res
tests/sav/base_init_super_call2_alt1.res
tests/sav/base_init_super_call2_alt2.res
tests/sav/base_init_super_call_alt1.res
tests/sav/base_init_super_call_alt2.res
tests/sav/base_no_object.res
tests/sav/base_no_object_alt1.res
tests/sav/error_class_glob.res
tests/sav/error_init_auto_alt4.res
tests/sav/nitdoc_args1.res
tests/sav/nitg-g/base_no_object.res [deleted file]
tests/sav/niti/base_no_object.res [deleted file]
tests/sav/nitmetrics_args1.res
tests/sav/nitx_args1.res
tests/sav/test_neo_args1.res

index 17da0d3..4b1d21e 100644 (file)
@@ -32,7 +32,8 @@ class Foo
                a2.output
        end
 
-       init
+       init is
+               old_style_init
        do
                a1 = 1
                a2 = 2
@@ -49,7 +50,8 @@ class Bar
                a3.output
        end
 
-       init 
+       init is
+               old_style_init
        do 
                a1 = 10
                a2 = 20
index 5d863ab..34cebdd 100644 (file)
@@ -20,22 +20,22 @@ end
 
 class B1
        super A
-       #alt1#init do super
+       #alt1#init is old_style_init do super
 end
 
 class B2
        super A
-       init do super(3)
+       init is old_style_init do super(3)
 end
 
 class B3
        super A
-       #alt2#init do super(true)
+       #alt2#init is old_style_init do super(true)
 end
 
 class B4
        super A
-       #alt3#init do end
+       #alt3#init is old_style_init do end
 end
 
 class C1
index f229ddb..1211acf 100644 (file)
@@ -20,22 +20,22 @@ end
 
 class B1
        super A
-       #alt1#init do super
+       #alt1#init is old_style_init do super
 end
 
 class B2
        super A
-       init do super(3)
+       init is old_style_init do super(3)
 end
 
 class B3
        super A
-       #alt2#init do super(true)
+       #alt2#init is old_style_init do super(true)
 end
 
 class B4
        super A
-       #alt3#init do end
+       #alt3#init is old_style_init do end
 end
 
 class C1
@@ -48,7 +48,7 @@ end
 
 class D1
        super A
-       init(j) do
+       init(j: Int) do
                super
                j.output
        end
@@ -72,7 +72,7 @@ end
 
 class D2
        super A
-       init(j) do
+       init(j: Int) do
                super(j)
                j.output
        end
@@ -95,7 +95,7 @@ end
 
 class D3
        super A
-       init(j) do
+       init(j: Int) do
                j.output
        end
 end
index 7cf3e1e..c6b8e98 100644 (file)
@@ -1 +1 @@
---no-colors --all --csv base_simple3.nit base_empty_module.nit -d $WRITE
+--no-colors --all --csv base_simple3.nit -d $WRITE
index d210e23..510c2f5 100644 (file)
@@ -1,13 +1,9 @@
 1
 2
-1
 2
 3
-1
 2
-1
 2
 5
-1
 2
 6
index b4d9a32..38219a0 100644 (file)
@@ -1 +1 @@
-alt/base_init_super_call2_alt1.nit:23,10--14: Error: Not enough implicit arguments to pass. Got 0, expected at least 1. Signature is (i: Int)
+alt/base_init_super_call2_alt1.nit:23,28--32: Error: Not enough implicit arguments to pass. Got 0, expected at least 1. Signature is (i: Int)
index 4cc34a8..9a5cbe0 100644 (file)
@@ -1 +1 @@
-alt/base_init_super_call2_alt2.nit:33,16--19: Type error: expected Int, got Bool
+alt/base_init_super_call2_alt2.nit:33,34--37: Type error: expected Int, got Bool
index 73082d3..3231e7e 100644 (file)
@@ -1 +1 @@
-alt/base_init_super_call_alt1.nit:23,10--14: Error: Not enough implicit arguments to pass. Got 0, expected at least 1. Signature is (i: Int)
+alt/base_init_super_call_alt1.nit:23,28--32: Error: Not enough implicit arguments to pass. Got 0, expected at least 1. Signature is (i: Int)
index ca41f99..64f3f2f 100644 (file)
@@ -1 +1 @@
-alt/base_init_super_call_alt2.nit:33,16--19: Type error: expected Int, got Bool
+alt/base_init_super_call_alt2.nit:33,34--37: Type error: expected Int, got Bool
index a799a1d..508b97a 100644 (file)
@@ -1 +1 @@
-Fatal Error: no primitive class Object
+base_no_object.nit:11,9--13: Error: Method 'init' doesn't exists in A.
index 4965b26..e262c78 100644 (file)
@@ -1,2 +1,3 @@
+alt/base_no_object_alt1.nit:11,9--13: Error: Method 'init' doesn't exists in A.
 alt/base_no_object_alt1.nit:13,4--12: Type Error: missing primitive class `Bool'.
 alt/base_no_object_alt1.nit:13,4--12: Type Error: missing primitive class `Bool'.
index 7cc24f3..30a32a5 100644 (file)
@@ -1 +1 @@
-Fatal Error: more than one primitive class Object: module_0::Object standard::kernel::Object
+../lib/standard/kernel.nit:79,1--95,3: Fatal error: kernel#Sys does not specialize module_0#Object. Possible duplication of the root class `Object`?
index 3fbb2e0..0bb1a5e 100644 (file)
@@ -1,4 +1,3 @@
-alt/error_init_auto_alt4.nit:34,5--9: Error: Method 'init' doesn't exists in A.
-alt/error_init_auto_alt4.nit:35,5--12: Error: Method 'init' doesn't exists in A.
-alt/error_init_auto_alt4.nit:36,5--15: Error: Method 'init' doesn't exists in A.
-alt/error_init_auto_alt4.nit:37,5--18: Error: Method 'init' doesn't exists in A.
+alt/error_init_auto_alt4.nit:35,5--12: Error: Incorrect number of parameters. Got 1, expected 0. Signature is 
+alt/error_init_auto_alt4.nit:36,5--15: Error: Incorrect number of parameters. Got 2, expected 0. Signature is 
+alt/error_init_auto_alt4.nit:37,5--18: Error: Incorrect number of parameters. Got 3, expected 0. Signature is 
index 76554ac..b9a9402 100644 (file)
@@ -39,16 +39,14 @@ js/
 less/
 module_module_0.html
 module_module_1.html
-proprety_module_0__Int__init.html
+proprety_module_0__Object__init.html
 proprety_module_0__Object__output.html
 proprety_module_0__Object__print.html
-proprety_module_0__Sys__init.html
 proprety_module_0__Sys__main.html
 proprety_module_1__A__a1.html
 proprety_module_1__A__a12.html
 proprety_module_1__A__a123.html
 proprety_module_1__A__a13.html
-proprety_module_1__A__init.html
 proprety_module_1__B__all2.html
 proprety_module_1__B__all25.html
 quicksearch-list.js
diff --git a/tests/sav/nitg-g/base_no_object.res b/tests/sav/nitg-g/base_no_object.res
deleted file mode 100644 (file)
index d00491f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/tests/sav/niti/base_no_object.res b/tests/sav/niti/base_no_object.res
deleted file mode 100644 (file)
index d00491f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-1
index 9dc118b..ab778d5 100644 (file)
          std: 0.0
          sum: 0
        mnoc: number of child modules
-         avg: 1.0
-         max: base_simple3 (1)
-         min: base_simple3 (1)
+         avg: 0.0
+         max: base_simple3 (0)
+         min: base_simple3 (0)
          std: 0.0
-         sum: 1
+         sum: 0
        mnod: number of descendant modules
-         avg: 1.0
-         max: base_simple3 (1)
-         min: base_simple3 (1)
+         avg: 0.0
+         max: base_simple3 (0)
+         min: base_simple3 (0)
          std: 0.0
-         sum: 1
+         sum: 0
        mdit: depth in module tree
          avg: 0.0
          max: base_simple3 (0)
          std: 0.0
          sum: 1
 
- ## project base_empty_module
-  `- group base_empty_module
+ ## global metrics
        mnoa: number of ancestor modules
          avg: 0.0
-         max: base_empty_module (0)
-         min: base_empty_module (0)
+         max: base_simple3 (0)
+         min: base_simple3 (0)
          std: 0.0
          sum: 0
        mnop: number of parent modules
          avg: 0.0
-         max: base_empty_module (0)
-         min: base_empty_module (0)
+         max: base_simple3 (0)
+         min: base_simple3 (0)
          std: 0.0
          sum: 0
        mnoc: number of child modules
-         avg: 1.0
-         max: base_empty_module (1)
-         min: base_empty_module (1)
-         std: 0.0
-         sum: 1
-       mnod: number of descendant modules
-         avg: 1.0
-         max: base_empty_module (1)
-         min: base_empty_module (1)
-         std: 0.0
-         sum: 1
-       mdit: depth in module tree
-         avg: 0.0
-         max: base_empty_module (0)
-         min: base_empty_module (0)
-         std: 0.0
-         sum: 0
-       mnbi: number of introduction in module
-         avg: 1.0
-         max: base_empty_module (1)
-         min: base_empty_module (1)
-         std: 0.0
-         sum: 1
-       mnbr: number of refinement in module
-         avg: 0.0
-         max: base_empty_module (0)
-         min: base_empty_module (0)
-         std: 0.0
-         sum: 0
-       mnbcc: number of concrete class in module (intro + redef)
-         avg: 1.0
-         max: base_empty_module (1)
-         min: base_empty_module (1)
-         std: 0.0
-         sum: 1
-       mnbac: number of abstract class in module (intro + redef)
-         avg: 0.0
-         max: base_empty_module (0)
-         min: base_empty_module (0)
-         std: 0.0
-         sum: 0
-       mnbic: number of interface in module (intro + redef)
-         avg: 0.0
-         max: base_empty_module (0)
-         min: base_empty_module (0)
-         std: 0.0
-         sum: 0
-
- ## 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
+       mnod: number of descendant 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: 2
-       mnod: number of descendant modules
-         avg: 1.0
-         max: base_simple3 (1)
-         min: base_simple3 (1)
-         std: 0.0
-         sum: 2
        mdit: depth in module tree
          avg: 0.0
          max: base_simple3 (0)
          std: 0.0
          sum: 0
        mnbi: number of introduction in module
-         avg: 4.0
+         avg: 7.0
          max: base_simple3 (7)
-         min: base_empty_module (1)
-         std: 3.0
-         sum: 8
+         min: base_simple3 (7)
+         std: 0.0
+         sum: 7
        mnbr: number of refinement in module
          avg: 0.0
          max: base_simple3 (0)
          std: 0.0
          sum: 0
        mnbcc: number of concrete class in module (intro + redef)
-         avg: 2.0
+         avg: 4.0
          max: base_simple3 (4)
-         min: base_empty_module (1)
-         std: 1.581
-         sum: 5
+         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)
          std: 0.0
          sum: 0
        mnbic: number of interface in module (intro + redef)
-         avg: 0.0
+         avg: 1.0
          max: base_simple3 (1)
-         min: base_empty_module (0)
-         std: 0.707
+         min: base_simple3 (1)
+         std: 0.0
          sum: 1
 
 # MClasses metrics
          std: 0.926
          sum: 6
        cnbp: number of accessible properties (inherited + local)
-         avg: 5.0
+         avg: 6.0
          max: C (10)
-         min: Object (3)
-         std: 2.507
-         sum: 37
+         min: Object (4)
+         std: 2.268
+         sum: 42
        cnba: number of accessible attributes (inherited + local)
          avg: 0.0
          max: C (2)
          sum: 3
        cnbip: number of introduced properties
          avg: 2.0
-         max: C (7)
+         max: C (6)
          min: Bool (0)
-         std: 2.42
-         sum: 19
-       cnbrp: number of redefined properties
-         avg: 0.0
-         max: Object (0)
-         min: Object (0)
-         std: 0.0
-         sum: 0
-       cnbhp: number of inherited properties
-         avg: 2.0
-         max: Bool (3)
-         min: Object (0)
-         std: 1.195
+         std: 2.268
          sum: 18
-
- ## project base_empty_module
-  `- group base_empty_module
-       cnoa: number of ancestor classes
-         avg: 0.0
-         max: Object (0)
-         min: Object (0)
-         std: 0.0
-         sum: 0
-       cnop: number of parent classes
-         avg: 0.0
-         max: Object (0)
-         min: Object (0)
-         std: 0.0
-         sum: 0
-       cnoc: number of child classes
-         avg: 0.0
-         max: Object (0)
-         min: Object (0)
-         std: 0.0
-         sum: 0
-       cnod: number of descendant classes
-         avg: 0.0
-         max: Object (0)
-         min: Object (0)
-         std: 0.0
-         sum: 0
-       cdit: depth in class tree
-         avg: 0.0
-         max: Object (0)
-         min: Object (0)
-         std: 0.0
-         sum: 0
-       cnbp: number of accessible properties (inherited + local)
-         avg: 1.0
-         max: Object (1)
-         min: Object (1)
-         std: 0.0
-         sum: 1
-       cnba: number of accessible attributes (inherited + local)
-         avg: 0.0
-         max: Object (0)
-         min: Object (0)
-         std: 0.0
-         sum: 0
-       cnbip: number of introduced properties
-         avg: 1.0
-         max: Object (1)
-         min: Object (1)
-         std: 0.0
-         sum: 1
        cnbrp: number of redefined properties
          avg: 0.0
-         max: Object (0)
+         max: A (1)
          min: Object (0)
-         std: 0.0
-         sum: 0
+         std: 0.535
+         sum: 2
        cnbhp: number of inherited properties
-         avg: 0.0
-         max: Object (0)
+         avg: 3.0
+         max: Bool (4)
          min: Object (0)
-         std: 0.0
-         sum: 0
+         std: 1.464
+         sum: 24
 
  ## global metrics
        cnoa: number of ancestor classes
          avg: 0.0
          max: Bool (1)
          min: Object (0)
-         std: 0.866
+         std: 0.926
          sum: 6
        cnop: number of parent classes
          avg: 0.0
          max: Bool (1)
          min: Object (0)
-         std: 0.866
+         std: 0.926
          sum: 6
        cnoc: number of child classes
          avg: 0.0
          max: Object (6)
          min: Bool (0)
-         std: 2.121
+         std: 2.268
          sum: 6
        cnod: number of descendant classes
          avg: 0.0
          max: Object (6)
          min: Bool (0)
-         std: 2.121
+         std: 2.268
          sum: 6
        cdit: depth in class tree
          avg: 0.0
          max: Bool (1)
          min: Object (0)
-         std: 0.866
+         std: 0.926
          sum: 6
        cnbp: number of accessible properties (inherited + local)
-         avg: 4.0
+         avg: 6.0
          max: C (10)
-         min: Object (1)
-         std: 2.828
-         sum: 38
+         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.791
+         std: 0.845
          sum: 3
        cnbip: number of introduced properties
          avg: 2.0
-         max: C (7)
+         max: C (6)
          min: Bool (0)
-         std: 2.291
-         sum: 20
+         std: 2.268
+         sum: 18
        cnbrp: number of redefined properties
          avg: 0.0
-         max: Object (0)
+         max: A (1)
          min: Object (0)
-         std: 0.0
-         sum: 0
+         std: 0.535
+         sum: 2
        cnbhp: number of inherited properties
-         avg: 2.0
-         max: Bool (3)
+         avg: 3.0
+         max: Bool (4)
          min: Object (0)
-         std: 1.323
-         sum: 18
+         std: 1.464
+         sum: 24
 --- Poset metrics ---
 ## Module importation hierarchy
-Number of nodes: 3
-Number of edges: 5 (1.66 per node)
-Number of direct edges: 2 (0.66 per node)
+Number of nodes: 1
+Number of edges: 1 (1.00 per node)
+Number of direct edges: 0 (0.0 per node)
 Distribution of greaters
- population: 3
+ population: 1
  minimum value: 1
- maximum value: 3
- total value: 5
- average value: 1.66
+ maximum value: 1
+ total value: 1
+ average value: 1.00
  distribution:
-  <=1: sub-population=2 (66.66%); cumulated value=2 (40.00%)
-  <=4: sub-population=1 (33.33%); cumulated value=3 (60.00%)
+  <=1: sub-population=1 (100.00%); cumulated value=1 (100.00%)
 Distribution of direct greaters
- population: 3
+ population: 1
  minimum value: 0
- maximum value: 2
- total value: 2
- average value: 0.66
+ maximum value: 0
+ total value: 0
+ average value: 0.0
  distribution:
-  <=0: sub-population=2 (66.66%); cumulated value=0 (0.0%)
-  <=2: sub-population=1 (33.33%); cumulated value=2 (100.00%)
+  <=0: sub-population=1 (100.00%); cumulated value=0 (na%)
 Distribution of smallers
- population: 3
+ population: 1
  minimum value: 1
- maximum value: 2
- total value: 5
- average value: 1.66
+ maximum value: 1
+ total value: 1
+ average value: 1.00
  distribution:
-  <=1: sub-population=1 (33.33%); cumulated value=1 (20.00%)
-  <=2: sub-population=2 (66.66%); cumulated value=4 (80.00%)
+  <=1: sub-population=1 (100.00%); cumulated value=1 (100.00%)
 Distribution of direct smallers
- population: 3
+ population: 1
  minimum value: 0
- maximum value: 1
- total value: 2
- average value: 0.66
+ maximum value: 0
+ total value: 0
+ average value: 0.0
  distribution:
-  <=0: sub-population=1 (33.33%); cumulated value=0 (0.0%)
-  <=1: sub-population=2 (66.66%); cumulated value=2 (100.00%)
+  <=0: sub-population=1 (100.00%); cumulated value=0 (na%)
 ## Classdef hierarchy
-Number of nodes: 8
-Number of edges: 14 (1.75 per node)
-Number of direct edges: 6 (0.75 per node)
+Number of nodes: 7
+Number of edges: 13 (1.85 per node)
+Number of direct edges: 6 (0.85 per node)
 Distribution of greaters
- population: 8
+ population: 7
  minimum value: 1
  maximum value: 2
- total value: 14
- average value: 1.75
+ total value: 13
+ average value: 1.85
  distribution:
-  <=1: sub-population=2 (25.00%); cumulated value=2 (14.28%)
-  <=2: sub-population=6 (75.00%); cumulated value=12 (85.71%)
+  <=1: sub-population=1 (14.28%); cumulated value=1 (7.69%)
+  <=2: sub-population=6 (85.71%); cumulated value=12 (92.30%)
 Distribution of direct greaters
- population: 8
+ population: 7
  minimum value: 0
  maximum value: 1
  total value: 6
- average value: 0.75
+ average value: 0.85
  distribution:
-  <=0: sub-population=2 (25.00%); cumulated value=0 (0.0%)
-  <=1: sub-population=6 (75.00%); cumulated value=6 (100.00%)
+  <=0: sub-population=1 (14.28%); cumulated value=0 (0.0%)
+  <=1: sub-population=6 (85.71%); cumulated value=6 (100.00%)
 Distribution of smallers
- population: 8
+ population: 7
  minimum value: 1
  maximum value: 7
- total value: 14
- average value: 1.75
+ total value: 13
+ average value: 1.85
  distribution:
-  <=1: sub-population=7 (87.50%); cumulated value=7 (50.00%)
-  <=8: sub-population=1 (12.50%); cumulated value=7 (50.00%)
+  <=1: sub-population=6 (85.71%); cumulated value=6 (46.15%)
+  <=8: sub-population=1 (14.28%); cumulated value=7 (53.84%)
 Distribution of direct smallers
- population: 8
+ population: 7
  minimum value: 0
  maximum value: 6
  total value: 6
- average value: 0.75
+ average value: 0.85
  distribution:
-  <=0: sub-population=7 (87.50%); cumulated value=0 (0.0%)
-  <=8: sub-population=1 (12.50%); cumulated value=6 (100.00%)
+  <=0: sub-population=6 (85.71%); cumulated value=0 (0.0%)
+  <=8: sub-population=1 (14.28%); cumulated value=6 (100.00%)
 ## Class hierarchy
-Number of nodes: 8
-Number of edges: 14 (1.75 per node)
-Number of direct edges: 6 (0.75 per node)
+Number of nodes: 7
+Number of edges: 13 (1.85 per node)
+Number of direct edges: 6 (0.85 per node)
 Distribution of greaters
- population: 8
+ population: 7
  minimum value: 1
  maximum value: 2
- total value: 14
- average value: 1.75
+ total value: 13
+ average value: 1.85
  distribution:
-  <=1: sub-population=2 (25.00%); cumulated value=2 (14.28%)
-  <=2: sub-population=6 (75.00%); cumulated value=12 (85.71%)
+  <=1: sub-population=1 (14.28%); cumulated value=1 (7.69%)
+  <=2: sub-population=6 (85.71%); cumulated value=12 (92.30%)
 Distribution of direct greaters
- population: 8
+ population: 7
  minimum value: 0
  maximum value: 1
  total value: 6
- average value: 0.75
+ average value: 0.85
  distribution:
-  <=0: sub-population=2 (25.00%); cumulated value=0 (0.0%)
-  <=1: sub-population=6 (75.00%); cumulated value=6 (100.00%)
+  <=0: sub-population=1 (14.28%); cumulated value=0 (0.0%)
+  <=1: sub-population=6 (85.71%); cumulated value=6 (100.00%)
 Distribution of smallers
- population: 8
+ population: 7
  minimum value: 1
  maximum value: 7
- total value: 14
- average value: 1.75
+ total value: 13
+ average value: 1.85
  distribution:
-  <=1: sub-population=7 (87.50%); cumulated value=7 (50.00%)
-  <=8: sub-population=1 (12.50%); cumulated value=7 (50.00%)
+  <=1: sub-population=6 (85.71%); cumulated value=6 (46.15%)
+  <=8: sub-population=1 (14.28%); cumulated value=7 (53.84%)
 Distribution of direct smallers
- population: 8
+ population: 7
  minimum value: 0
  maximum value: 6
  total value: 6
- average value: 0.75
+ average value: 0.85
  distribution:
-  <=0: sub-population=7 (87.50%); cumulated value=0 (0.0%)
-  <=8: sub-population=1 (12.50%); cumulated value=6 (100.00%)
+  <=0: sub-population=6 (85.71%); cumulated value=0 (0.0%)
+  <=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: 267
- average value: 5.68
+ total value: 256
+ average value: 5.44
  distribution:
-  <=1: sub-population=10 (21.27%); cumulated value=10 (3.74%)
-  <=2: sub-population=9 (19.14%); cumulated value=18 (6.74%)
-  <=4: sub-population=10 (21.27%); cumulated value=34 (12.73%)
-  <=8: sub-population=9 (19.14%); cumulated value=54 (20.22%)
-  <=16: sub-population=5 (10.63%); cumulated value=55 (20.59%)
-  <=32: sub-population=3 (6.38%); cumulated value=57 (21.34%)
-  <=64: sub-population=1 (2.12%); cumulated value=39 (14.60%)
+  <=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 (14.60%)
-  APublicVisibility: 20 (7.49%)
-  AListExprs: 19 (7.11%)
-  ACallExpr: 18 (6.74%)
-  TClassid: 16 (5.99%)
-  TKwend: 10 (3.74%)
-  TNumber: 10 (3.74%)
-  ADecIntExpr: 10 (3.74%)
-  AType: 9 (3.37%)
-  ASignature: 8 (2.99%)
+  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%)
   ...
-  ASelfExpr: 1 (0.37%)
-  ACallAssignExpr: 1 (0.37%)
-  TKwself: 1 (0.37%)
-  AReturnExpr: 1 (0.37%)
-  AInterfaceClasskind: 1 (0.37%)
-  TKwinterface: 1 (0.37%)
-  TKwreturn: 1 (0.37%)
-  AInternMethPropdef: 1 (0.37%)
-  AMainMethPropdef: 1 (0.37%)
-  AMainClassdef: 1 (0.37%)
+  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: 55
- average value: 2.89
+ total value: 54
+ average value: 2.84
  distribution:
-  <=1: sub-population=1 (5.26%); cumulated value=1 (1.81%)
-  <=2: sub-population=13 (68.42%); cumulated value=26 (47.27%)
-  <=4: sub-population=3 (15.78%); cumulated value=10 (18.18%)
-  <=8: sub-population=1 (5.26%); cumulated value=7 (12.72%)
-  <=16: sub-population=1 (5.26%); cumulated value=11 (20.00%)
+  <=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.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%)
-  Object: 2 (3.63%)
-  Bool: 1 (1.81%)
+  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: 3
+Number of modules: 1
 
-Number of classes: 8
-  Number of interface kind: 1 (12.50%)
-  Number of enum kind: 2 (25.00%)
-  Number of class kind: 5 (62.50%)
+Number of classes: 7
+  Number of interface kind: 1 (14.28%)
+  Number of enum kind: 2 (28.57%)
+  Number of class kind: 4 (57.14%)
 
-Number of class definitions: 8
+Number of class definitions: 7
 Number of refined classes: 0 (0.0%)
 Average number of class refinments by classes: 0.0
 Average number of class refinments by refined classes: na
 
-Number of properties: 20
-  Number of MAttribute: 3 (15.00%)
-  Number of MMethod: 17 (85.00%)
+Number of properties: 18
+  Number of MAttribute: 3 (16.66%)
+  Number of MMethod: 15 (83.33%)
 
 Number of property definitions: 20
-Number of redefined properties: 0 (0.0%)
-Average number of property redefinitions by property: 0.0
-Average number of property redefinitions by redefined property: na
+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
 --- Metrics of the explitic static types ---
 Total number of explicit static types: 9
 Statistics of type usage:
@@ -610,25 +480,25 @@ Statistics of type usage:
 Total number of self: 5
 Total number of implicit self: 4 (80.00%)
 --- Construction of tables ---
-Number of runtime classes: 7 (excluding interfaces and abstract classes)
-Average number of composing class definition by runtime class: 1.85
-Total size of tables (classes and instances): 35 (not including stuff like info for subtyping or call-next-method)
-Average size of table by runtime class: 5.00
-Values never redefined: 35 (100.00%)
+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%)
 
 # Mendel metrics
-       large mclasses (threshold: 2.195)
+       large mclasses (threshold: 2.291)
           B: 3
           C: 3
-       budding mclasses (threshold: 0.869)
-          B: 1.0
-          C: 1.0
-       blooming mclasses (threshold: 2.388)
-          B: 3.0
-          C: 3.0
-       blooming mclasses (threshold: 2.388)
-          B: 3.0
-          C: 3.0
+       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
 
@@ -645,23 +515,12 @@ generating out/nitmetrics_args1.write/module_hierarchy.dot
        cnbna: number of accessible nullable attributes (inherited + local) -- nothing
          sum: 0
 
- ## project base_empty_module
-  `- group base_empty_module
-       cnba: number of accessible attributes (inherited + local)
-         avg: 0.0
-         max: Object (0)
-         min: Object (0)
-         std: 0.0
-         sum: 0
-       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.791
+         std: 0.845
          sum: 3
        cnbna: number of accessible nullable attributes (inherited + local) -- nothing
          sum: 0
@@ -765,99 +624,6 @@ Number of buggy sends (cannot determine the type of the receiver): 0 (0.0%)
          std: 0.0
          sum: 0.143
 
- ## project base_empty_module
-  `- group base_empty_module
-       cnoac: number of class_kind ancestor
-         avg: 0.0
-         max: Object (0)
-         min: Object (0)
-         std: 0.0
-         sum: 0
-       cnopc: number of class_kind parent
-         avg: 0.0
-         max: Object (0)
-         min: Object (0)
-         std: 0.0
-         sum: 0
-       cnocc: number of class_kind children
-         avg: 0.0
-         max: Object (0)
-         min: Object (0)
-         std: 0.0
-         sum: 0
-       cnodc: number of class_kind descendants
-         avg: 0.0
-         max: Object (0)
-         min: Object (0)
-         std: 0.0
-         sum: 0
-       cnopi: number of interface_kind parent
-         avg: 0.0
-         max: Object (0)
-         min: Object (0)
-         std: 0.0
-         sum: 0
-       cnoci: number of interface_kind children
-         avg: 0.0
-         max: Object (0)
-         min: Object (0)
-         std: 0.0
-         sum: 0
-       cnodi: number of interface_kind descendants
-         avg: 0.0
-         max: Object (0)
-         min: Object (0)
-         std: 0.0
-         sum: 0
-       cditc: depth in class tree following only class, abstract, extern kind
-         avg: 0.0
-         max: Object (0)
-         min: Object (0)
-         std: 0.0
-         sum: 0
-       cditi: depth in class tree following only interface_kind
-         avg: 0.0
-         max: Object (0)
-         min: Object (0)
-         std: 0.0
-         sum: 0
-       mdui: proportion of mclass defined using inheritance (has other parent than Object)
-         avg: 0.0
-         max: base_empty_module (0.0)
-         min: base_empty_module (0.0)
-         std: 0.0
-         sum: 0.0
-       mduic: proportion of class_kind defined using inheritance
-         avg: 0.0
-         max: base_empty_module (0.0)
-         min: base_empty_module (0.0)
-         std: 0.0
-         sum: 0.0
-       mduii: proportion of interface_kind defined using inheritance
-         avg: 0.0
-         max: base_empty_module (0.0)
-         min: base_empty_module (0.0)
-         std: 0.0
-         sum: 0.0
-       mif: proportion of mclass inherited from
-         avg: 0.0
-         max: base_empty_module (0.0)
-         min: base_empty_module (0.0)
-         std: 0.0
-         sum: 0.0
-       mifc: proportion of class_kind inherited from
-         avg: 0.0
-         max: base_empty_module (0.0)
-         min: base_empty_module (0.0)
-         std: 0.0
-         sum: 0.0
-       mifi: proportion of interface_kind inherited from
-         avg: 0.0
-         max: base_empty_module (0.0)
-         min: base_empty_module (0.0)
-         std: 0.0
-         sum: 0.0
-
  ## global metrics
        cnoac: number of class_kind ancestor
          avg: 0.0
@@ -875,19 +641,19 @@ Number of buggy sends (cannot determine the type of the receiver): 0 (0.0%)
          avg: 0.0
          max: Object (4)
          min: Bool (0)
-         std: 1.414
+         std: 1.512
          sum: 4
        cnodc: number of class_kind descendants
          avg: 0.0
          max: Object (4)
          min: Bool (0)
-         std: 1.414
+         std: 1.512
          sum: 4
        cnopi: number of interface_kind parent
          avg: 0.0
          max: Bool (1)
          min: Object (0)
-         std: 0.866
+         std: 0.926
          sum: 6
        cnoci: number of interface_kind children
          avg: 0.0
@@ -911,7 +677,7 @@ Number of buggy sends (cannot determine the type of the receiver): 0 (0.0%)
          avg: 0.0
          max: Bool (1)
          min: Object (0)
-         std: 0.866
+         std: 0.926
          sum: 6
        mdui: proportion of mclass defined using inheritance (has other parent than Object)
          avg: 0.0
@@ -932,10 +698,10 @@ Number of buggy sends (cannot determine the type of the receiver): 0 (0.0%)
          std: 0.0
          sum: 0.0
        mif: proportion of mclass inherited from
-         avg: 0.071
+         avg: 0.143
          max: base_simple3 (0.143)
-         min: base_empty_module (0.0)
-         std: 0.071
+         min: base_simple3 (0.143)
+         std: 0.0
          sum: 0.143
        mifc: proportion of class_kind inherited from
          avg: 0.0
@@ -944,10 +710,10 @@ Number of buggy sends (cannot determine the type of the receiver): 0 (0.0%)
          std: 0.0
          sum: 0.0
        mifi: proportion of interface_kind inherited from
-         avg: 0.071
+         avg: 0.143
          max: base_simple3 (0.143)
-         min: base_empty_module (0.0)
-         std: 0.071
+         min: base_simple3 (0.143)
+         std: 0.0
          sum: 0.143
 
 # RTA metrics
@@ -984,11 +750,11 @@ Number of buggy sends (cannot determine the type of the receiver): 0 (0.0%)
          std: 0.0
          sum: 14
        mnlmd: number of live method definitions in a mmodule
-         avg: 14.0
-         max: base_simple3 (14)
-         min: base_simple3 (14)
+         avg: 16.0
+         max: base_simple3 (16)
+         min: base_simple3 (16)
          std: 0.0
-         sum: 14
+         sum: 16
        mnldd: number of dead method definitions in a mmodule
          avg: 0.0
          max: base_simple3 (0)
index 9e982c2..bf43dd3 100644 (file)
@@ -10,7 +10,7 @@
     
     \e[1m== constructors\e[0m
       
-      \e[1m\e[32minit\e[0m\e[0m
+      redef \e[1m\e[32minit\e[0m\e[0m
       \e[30m\e[1mbase_simple3::A::init\e[0m\e[0m\e[30m (lines 30-30)\e[0m
     
     \e[1m== methods\e[0m
index 8b3a417..5291a1e 100644 (file)
@@ -8,5 +8,5 @@ mclasses:
 Alcoholic Bool Career Character Combatable Dwarf Elf Float Game Human Int List Magician Object Race Starter String Sys Warrior Weapon
 Alcoholic Bool Career Character Combatable Dwarf Elf Float Game Human Int List Magician Object Race Starter String Sys Warrior Weapon
 mproperties:
-!= * * + + - - / / == > > OTHER _age _base_endurance _base_intelligence _base_strength _career _endurance_bonus _health _intelligence_bonus _name _race _sex _strength_bonus age age= attack base_endurance base_endurance= base_intelligence base_intelligence= base_strength base_strength= career career= computer_characters defend direct_attack dps endurance_bonus endurance_bonus= health health= hit_points init init init init init init init init init init intelligence_bonus intelligence_bonus= is_dead main max_health name name= pause_game player_characters quit race race= sex sex= start start_game stop_game strength_bonus strength_bonus= to_f total_endurance total_intelligence total_strengh unary -
-!= * * + + - - / / == > > OTHER _age _base_endurance _base_intelligence _base_strength _career _endurance_bonus _health _intelligence_bonus _name _race _sex _strength_bonus age age= attack base_endurance base_endurance= base_intelligence base_intelligence= base_strength base_strength= career career= computer_characters defend direct_attack dps endurance_bonus endurance_bonus= health health= hit_points init init init init init init init init init init intelligence_bonus intelligence_bonus= is_dead main max_health name name= pause_game player_characters quit race race= sex sex= start start_game stop_game strength_bonus strength_bonus= to_f total_endurance total_intelligence total_strengh unary -
+!= * * + + - - / / == > > OTHER _age _base_endurance _base_intelligence _base_strength _career _endurance_bonus _health _intelligence_bonus _name _race _sex _strength_bonus age age= attack base_endurance base_endurance= base_intelligence base_intelligence= base_strength base_strength= career career= computer_characters defend direct_attack dps endurance_bonus endurance_bonus= health health= hit_points init intelligence_bonus intelligence_bonus= is_dead main max_health name name= pause_game player_characters quit race race= sex sex= start start_game stop_game strength_bonus strength_bonus= to_f total_endurance total_intelligence total_strengh unary -
+!= * * + + - - / / == > > OTHER _age _base_endurance _base_intelligence _base_strength _career _endurance_bonus _health _intelligence_bonus _name _race _sex _strength_bonus age age= attack base_endurance base_endurance= base_intelligence base_intelligence= base_strength base_strength= career career= computer_characters defend direct_attack dps endurance_bonus endurance_bonus= health health= hit_points init intelligence_bonus intelligence_bonus= is_dead main max_health name name= pause_game player_characters quit race race= sex sex= start start_game stop_game strength_bonus strength_bonus= to_f total_endurance total_intelligence total_strengh unary -