Fixes for Kotlin and Scala.
- For Scala, previously companion objects and trait method classes were merged into a single
ClassInfo
object. However, companion objects do not even have to be an instance of the base class with the same name. Since Java has a single-inheritance model, the merging into the base class had to be disabled. You will now getpkg.Class
for the base class,pkg.Class$
for the companion object, andpkg.Class$class
for the trait methods class (i.e. these are no longer merged intopkg.Class
, and they are named the way the Scala compiler saves them to disk). (Fixes #193, thanks to @ryan-gustafson for reporting.) - For Kotlin, fixes issues caused by the Kotlin compiler not correctly outputing the same number of parameters for each of the method parameter metadata types. (Fixes #175, thanks to @anthonykeenan for reporting.)
- Adds a prototype EquinoxContextFinderClassLoaderHandler (#185).
- Improvements to Graphviz output (fields and methods are sorted).
- Small/obscure API change --
ClassInfo.getTypeDescriptor()
is nowClassInfo.getTypeSignatureStr()
for consistency with the rest of the API. (Hence version bump to 2.19.x).