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

se.ansman.dagger.auto.compiler.common.processing.RenderEngine.kt Maven / Gradle / Ivy

The newest version!
package se.ansman.dagger.auto.compiler.common.processing

import kotlin.reflect.KClass

interface RenderEngine {
    fun className(packageName: String, simpleName: String): ClassName
    fun className(qualifiedName: String): ClassName
    fun className(type: KClass<*>): ClassName

    fun typeArguments(typeName: TypeName): List

    fun qualifierName(className: ClassName): String
    fun simpleName(typeName: TypeName): String
    fun simpleNames(className: ClassName): List
    fun packageName(className: ClassName): String
    fun topLevelClassName(className: ClassName): ClassName


    fun rawType(typeName: TypeName): ClassName

    fun asWildcard(typeName: TypeName): TypeName
}

fun  RenderEngine<*, ClassName, *>.rootPeerClass(className: ClassName, name: String): ClassName =
    className(packageName(className), name)




© 2015 - 2025 Weber Informatics LLC | Privacy Policy