Package de.jensklingenberg.ktorfit.generator

Types

Link copied to clipboard
data class KtorfitClass(    val name: String,     val packageName: String,     val objectName: String)

Functions

Link copied to clipboard
fun FileSpec.Builder.addImports(imports: List<String>): FileSpec.Builder
Link copied to clipboard
fun TypeSpec.Builder.addKtorfitSuperInterface(superClasses: List<String>): TypeSpec.Builder

Support for extending multiple interfaces, is done with Kotlin delegation. Ktorfit interfaces can only extend other Ktorfit interfaces, so there will be a generated implementation for each interface that we can use.

Link copied to clipboard
fun generateImplClass(classDataList: List<ClassData>, codeGenerator: CodeGenerator)

Generate the Impl class for every interface used for Ktorfit

Link copied to clipboard
fun generateKtorfitExtClass(    classDataList: List<ClassData>,     isJS: Boolean = false,     codeGenerator: CodeGenerator)

This will generate the Ktorfit.create() extension function

Link copied to clipboard
fun getFileSpec(classData: ClassData): FileSpec

Transform a ClassData to a FileSpec for KotlinPoet

Link copied to clipboard
fun getFunSpecs(classData: ClassData): List<FunSpec>

Properties

Link copied to clipboard
val clientClass: KtorfitClass
Link copied to clipboard
val ktorfitClass: KtorfitClass
Link copied to clipboard
val ktorfitExtClass: KtorfitClass
Link copied to clipboard
val pathDataClass: KtorfitClass
Link copied to clipboard
val requestDataClass: KtorfitClass