mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-03-10 08:31:29 +00:00
Class APIs from java point of view stays the same so we can avoid generating those methods
Otherwise we have to calculate all supertypes when getMethods() is called,
which imposes severe performance penalties
We have to pretend these methods are not 'abstract' (also we consider them 'default' for safety)
so java highlighting does not report "class should be abstract" for all inheritors
We have to manually report "class should be abstract" on some of the java inheritors,
specifically those that are implementing interfaces directly
as opposed to extending kotlin classes implementing those interfaces
7 lines
196 B
Java
Vendored
7 lines
196 B
Java
Vendored
public final class Inheritor implements p.I, p.I2 {
|
|
public final void f() { /* compiled code */ }
|
|
|
|
public void g() { /* compiled code */ }
|
|
|
|
public Inheritor() { /* compiled code */ }
|
|
} |