Closed ileasile closed 3 years ago
API for different hierarchies visualization. Visualize class types hierarchy and classloaders hierarchy:
It is easy to define own wrappers for KMath expressions, KotlinDL network layers, Dataframe hierarchical keys, and so on. Examples:
class HKClass(node: KClass<*>) : NodeWrapper<KClass<*>>(node) { override val ingoingEdges by lazy { node.superclasses.map { HKClass(it) } } } class HClassLoader(node: ClassLoader) : NodeWrapper<ClassLoader>(node) { override val ingoingEdges by lazy { node.parent?.let { listOf(HClassLoader(it)) } ?: emptyList() } override val label: String get() { return when (node) { is URLClassLoader -> node.urLs.joinToString("\\n", "URL ClassLoader:\\n") { it.toString() } else -> node.toString() } } }
API for different hierarchies visualization. Visualize class types hierarchy and classloaders hierarchy:
It is easy to define own wrappers for KMath expressions, KotlinDL network layers, Dataframe hierarchical keys, and so on. Examples: