Я смотрю на код, который имеет несколько записей, таких как:
open class PersonFinder: Finder<Long, Person>(Person::class.java)
open class CompanyFinder: Finder<Long, Company>(Company::class.java)
open class DeviceFinder: Finder<Long, Device>(Device::class.java)
Я бы хотел более общий подход, примерно такой:
open class GenericFinder<T>: Finder<Long, T>(T::class.java)
но синтаксис недопустим, поскольку T :: class.java не может использоваться в качестве параметра здесь. Можно ли как-то идиоматически сделать эту работу?