All Downloads are FREE. Search and download functionalities are using the official Maven repository.

arrow.generic.AnnotatedDomain.kt Maven / Gradle / Ivy

There is a newer version: 1.6.3-alpha.2
Show newest version
package arrow.generic

import arrow.common.utils.ClassOrPackageDataWrapper
import arrow.common.utils.fullName
import me.eugeniomarletti.kotlin.metadata.escapedClassName
import javax.lang.model.element.TypeElement

data class AnnotatedGeneric(val type: TypeElement, val classData: ClassOrPackageDataWrapper.Class, val targets: List) {
  val sourceClassName = classData.fullName.escapedClassName
  val sourceSimpleName = type.simpleName.toString()
  val sourceName = type.simpleName.toString().decapitalize()
  val targetNames = targets.map(Target::fullName)
  val hasTupleFocus: Boolean = targets.size > 1
  val focusSize: Int = targets.size
}

data class Target(val fullName: String, val paramName: String)




© 2015 - 2025 Weber Informatics LLC | Privacy Policy