class A[E]
type T: E
- attr _t: T
- meth foo(t: T) do end
- meth foo2: T do return _t
- meth bar(t: A[T]) do end
- meth bar2: A[T] do return self
+ var t: T is noinit
+ fun foo(t: T) do end
+ fun foo2: T do return _t
+ fun bar(t: A[T]) do end
+ fun bar2: A[T] do return self
+
- init do end
end
class B
-#alt3#special A[Int]
+ #alt3#super A[Int]
type U: Int
- meth test
+ fun test
do
#alt1#var a = new A[Int]
#alt2#var a = new A[U]
#alt4#var a = new A[A[Int]]
#alt5#var a = new A[A[U]]
- var f: Float
+ var f: Float = 1.0
a.foo(f)
f = a.foo2