kotlin.jvm.PurelyImplements

PurelyImplements

@Target([AnnotationTarget.CLASS]) annotation class PurelyImplements

Platform and version requirements: JVM

Instructs the Kotlin compiler to treat annotated Java class as pure implementation of given Kotlin interface. "Pure" means here that each type parameter of class becomes non-platform type argument of that interface.

Example:

class MyList<T> extends AbstractList<T> { ... }

Methods defined in MyList<T> use T as platform, i.e. it's possible