Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(334)

Side by Side Diff: pkg/kernel/testcases/reify/reuse_type_variables_test.dart

Issue 2697873007: Merge the work on Generic Types Reification from 'dart-lang/reify' repo (Closed)
Patch Set: Get back parameter erroneously removed by previous commit Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file.
4
5 library reuse_type_variables_test;
6
7 import 'test_base.dart';
8
9 class X {}
10
11 class Y {}
12
13 class Z {}
14
15 class C<T, U, V> {
16 foo() => new D<T, U, V>();
17 bar() => new E<T, U>();
18 hest() => new D<T, V, U>();
19 }
20
21 class D<T, U, V> {
22 baz() => new C<T, U, V>();
23 }
24
25 class E<T, U> {
26 qux() => new C<T, U, U>();
27 }
28
29 main() {
30 var c = new C<X, Y, Z>();
31 var d = c.foo();
32 expectTrue(d is D<X, Y, Z>);
33 d = c.hest();
34 expectTrue(d is! D<X, Y, Z>);
35 expectTrue(d is D<X, Z, Y>);
36 c = d.baz();
37 expectTrue(c is C<X, Z, Y>);
38 var e = c.bar();
39 expectTrue(e is E<X, Z>);
40 c = e.qux();
41 expectTrue(c is C<X, Z, Z>);
42 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698