Is there a way to identify a Kotlin data class from a regular Kotlin class? Like using reflection maybe?
Since Kotlin 1.1 use isData property on KClass. (docs)
Before Kotlin 1.1 you can try to use some heuristics, like check that it contains next methods:
public final copy public final component{N}public static copy$defaultNote these implementation details could be changed in the future.
Since 1.1 there is an isData property on the class
MyDataClass::class.isData