Sealed classes: extra java against kotlin tests, together with an implementation of Java diagnostics inside these tests

This commit is contained in:
Mikhail Glukhikh
2015-06-18 19:44:36 +03:00
parent 6e2395471d
commit 4d895a4c31
13 changed files with 99 additions and 7 deletions
@@ -0,0 +1,6 @@
package test;
// It's not possible to inherit from Season (it's sealed in Kotlin)
public class Derived extends Season {
}
@@ -0,0 +1 @@
Derived.java:4:8:compiler.err.report.access
@@ -0,0 +1,6 @@
package test
public sealed class Season {
class Warm: Season()
class Cold: Season()
}
@@ -0,0 +1,13 @@
package test
public sealed class Season {
private constructor Season()
internal final class Cold : test.Season {
public constructor Cold()
}
internal final class Warm : test.Season {
public constructor Warm()
}
}
@@ -0,0 +1,8 @@
package test;
public class Instance {
// It is not possible to create Season instance (it's sealed in Kotlin)
static Season create() {
return new Season();
}
}
@@ -0,0 +1 @@
Instance.java:6:16:compiler.err.abstract.cant.be.instantiated
@@ -0,0 +1,6 @@
package test
public sealed class Season {
class Warm: Season()
class Cold: Season()
}
@@ -0,0 +1,13 @@
package test
public sealed class Season {
private constructor Season()
internal final class Cold : test.Season {
public constructor Cold()
}
internal final class Warm : test.Season {
public constructor Warm()
}
}