File tree Expand file tree Collapse file tree 1 file changed +43
-1
lines changed Expand file tree Collapse file tree 1 file changed +43
-1
lines changed Original file line number Diff line number Diff line change @@ -3,12 +3,54 @@ class Context {
3
3
type Tree
4
4
}
5
5
6
- class Test {
6
+ class TestSimple {
7
7
@ tailrec
8
8
final def loop (c : Context )(trees : List [c.Tree ]): Boolean =
9
9
loop(c)(trees)
10
10
11
11
@ tailrec
12
12
final def loop2 (c : Context , trees : List [c.Tree ]): Boolean =
13
13
loop2(c, trees)
14
+
15
+ @ tailrec
16
+ final def loop3 [A <: Context ](c : A , trees : List [c.Tree ]): Boolean =
17
+ loop3(c, trees)
18
+ }
19
+
20
+ class TestVCParameterized [C <: Context ](val classC : C ) extends AnyVal {
21
+ @ tailrec
22
+ final def loop (c : C )(trees : List [c.Tree ]): List [c.Tree ] =
23
+ loop(c)(trees)
24
+
25
+ @ tailrec
26
+ final def loop2 (c : C , trees : List [c.Tree ]): List [c.Tree ] =
27
+ loop2(c, trees)
28
+
29
+ @ tailrec
30
+ final def loop3 [A <: C ](c : A , trees : List [c.Tree ]): List [c.Tree ] =
31
+ loop3(c, trees)
32
+
33
+ @ tailrec
34
+ final def loop4 (trees : List [classC.Tree ]): List [classC.Tree ] =
35
+ loop4(trees)
36
+
37
+ def loopNonRec (c : C )(trees : List [c.Tree ]): List [c.Tree ] = {
38
+ loopNonRec(c)(trees)
39
+ loopNonRec(c)(trees)
40
+ }
41
+
42
+ def loopNonRec2 (c : C , trees : List [c.Tree ]): List [c.Tree ] = {
43
+ loopNonRec2(c, trees)
44
+ loopNonRec2(c, trees)
45
+ }
46
+
47
+ def loopNonRec3 [A <: Context ](c : A , trees : List [c.Tree ]): List [classC.Tree ] = {
48
+ loopNonRec3(c, trees)
49
+ loopNonRec3(c, trees)
50
+ }
51
+
52
+ def loopNonRec4 (trees : List [classC.Tree ]): List [classC.Tree ] = {
53
+ loopNonRec4(trees)
54
+ loopNonRec4(trees)
55
+ }
14
56
}
You can’t perform that action at this time.
0 commit comments