File: Main.hx

package info (click to toggle)
haxe 1%3A4.1.5-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 40,556 kB
  • sloc: ml: 125,171; ansic: 2,408; makefile: 436; java: 362; cs: 323; cpp: 318; python: 316; sh: 75; objc: 64; php: 39; xml: 30; javascript: 11
file content (34 lines) | stat: -rw-r--r-- 495 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
class A {
	public function f():Array<A> {
		return [];
	}

	public function f2():A {
		return this;
	}
}

@:generic
class B<T:haxe.Constraints.Constructible<Void->Void>> {
	var items:Map<Int,A>;

	public function new() {
		items = new Map();
	}

	public function f():Array<A> {
		var a = [];
		for (node in items)
			a = a.concat(node.f());
		return a;
	}
}

class Main {
	static function main() {
		var b = new B<Main>();
		Sys.stderr().writeString("" + b.f());
	}

	public function new() { }
}