kotlinpoet / com.squareup.kotlinpoet / FileSpec / Builder

Builder

class Builder : Taggable.Builder<FileSpec.Builder>

Properties

annotations

val annotations: MutableList<AnnotationSpec>

name

val name: String

packageName

val packageName: String

tags

val tags: MutableMap<KClass<*>, Any>

Mutable map of the current tags this builder contains.

Functions

addAliasedImport

fun addAliasedImport(class: Class<*>, as: String): FileSpec.Builder
fun addAliasedImport(class: KClass<*>, as: String): FileSpec.Builder
fun addAliasedImport(className: ClassName, as: String): FileSpec.Builder
fun addAliasedImport(className: ClassName, memberName: String, as: String): FileSpec.Builder
fun addAliasedImport(memberName: MemberName, as: String): FileSpec.Builder

addAnnotation

fun addAnnotation(annotationSpec: AnnotationSpec): FileSpec.Builder

Add an annotation to the file.

fun addAnnotation(annotation: ClassName): FileSpec.Builder
fun addAnnotation(annotation: Class<*>): FileSpec.Builder
fun addAnnotation(annotation: KClass<*>): FileSpec.Builder

addComment

fun addComment(format: String, vararg args: Any): FileSpec.Builder

addFunction

fun addFunction(funSpec: FunSpec): FileSpec.Builder

addImport

fun addImport(constant: Enum<*>): FileSpec.Builder
fun addImport(class: Class<*>, vararg names: String): FileSpec.Builder
fun addImport(class: KClass<*>, vararg names: String): FileSpec.Builder
fun addImport(className: ClassName, vararg names: String): FileSpec.Builder
fun addImport(packageName: String, vararg names: String): FileSpec.Builder

addProperty

fun addProperty(propertySpec: PropertySpec): FileSpec.Builder

addType

fun addType(typeSpec: TypeSpec): FileSpec.Builder

addTypeAlias

fun addTypeAlias(typeAliasSpec: TypeAliasSpec): FileSpec.Builder

build

fun build(): FileSpec

indent

fun indent(indent: String): FileSpec.Builder

Inherited Functions

tag

open fun tag(type: Class<*>, tag: Any?): T
open fun tag(type: KClass<*>, tag: Any?): T

Attaches tag to the request using type as a key. Tags can be read from a request using Taggable.tag. Use null to remove any existing tag assigned for type.

Extension Functions

jvmMultifileClass

fun FileSpec.Builder.jvmMultifileClass(): FileSpec.Builder

jvmName

fun FileSpec.Builder.jvmName(name: String): FileSpec.Builder

tag

fun <T : Any> FileSpec.Builder.tag(tag: T?): FileSpec.Builder

Attaches tag to the request using T as a key. Tags can be read from a request using Taggable.tag. Use null to remove any existing tag assigned for T.