parser: inits uses Collection instead of Array
[nit.git] / src / parser / xss / prods.xss
index d00060b..c03b85a 100644 (file)
@@ -28,9 +28,9 @@ class @ename
 special ${../@ename}
 $ foreach {elem}
 $   if @is_list
-    readable writable attr _n_@name: List[@etype] 
+    readable writable attr _n_@name: List[@etype] = null
 $   else
-    readable writable attr _n_@name: @etype 
+    readable writable attr _n_@name: @etype = null
 $   end
 $ end
 end
@@ -66,7 +66,7 @@ $ if {count(elem)!=0}
     init init_${translate(@ename,"ABCDEFGHIJKLMNOPQRSTUVWXYZ","abcdefghijklmnopqrstuvwxyz")} (
 $ foreach {elem}
 $   if {@is_list}
-            n_@{name}: Array[Object] [-sep ','-] # Should be Array[@etype]
+            n_@{name}: Collection[Object] [-sep ','-] # Should be Collection[@etype]
 $   else
             n_@{name}: @etype [-sep ','-]
 $   end
@@ -76,6 +76,7 @@ $ else
     init init_${translate(@ename,"ABCDEFGHIJKLMNOPQRSTUVWXYZ","abcdefghijklmnopqrstuvwxyz")}
 $ end
     do
+        empty_init
 $ foreach {elem}
 $   if @is_list
         _n_@{name} = new List[@{etype}]