|
@@ -1,3 +1,8 @@
|
|
|
|
+private enum E {
|
|
|
|
+ A(s:String, i:Int, a:Array<Int>);
|
|
|
|
+ B(?i:Int);
|
|
|
|
+}
|
|
|
|
+
|
|
class TestAnalyzer extends TestBase {
|
|
class TestAnalyzer extends TestBase {
|
|
|
|
|
|
static function main() {
|
|
static function main() {
|
|
@@ -652,6 +657,25 @@ class TestAnalyzer extends TestBase {
|
|
//assertEquals(50, call(a, a = a + 1, a));
|
|
//assertEquals(50, call(a, a = a + 1, a));
|
|
//}
|
|
//}
|
|
|
|
|
|
|
|
+ function testEnumValues() {
|
|
|
|
+ var array = [1];
|
|
|
|
+ var a = A("foo", 12, array);
|
|
|
|
+ switch (a) {
|
|
|
|
+ case A(s, i, a):
|
|
|
|
+ assertEqualsConst("foo", s);
|
|
|
|
+ assertEqualsConst(12, i);
|
|
|
|
+ assertEquals(array, a);
|
|
|
|
+ case B(_):
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ var b = B(0);
|
|
|
|
+ switch (b) {
|
|
|
|
+ case B(i):
|
|
|
|
+ assertEqualsConst(0, i);
|
|
|
|
+ case A(_):
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
function cond1() {
|
|
function cond1() {
|
|
append("cond1");
|
|
append("cond1");
|
|
return true;
|
|
return true;
|