kotlinpoet / com.squareup.kotlinpoet / TypeSpec

TypeSpec

class TypeSpec : Taggable, OriginatingElementsHolder

A generated class, interface, or enum declaration.

Types

Builder

class Builder : Taggable.Builder<TypeSpec.Builder>, OriginatingElementsHolder.Builder<TypeSpec.Builder>

Kind

enum class Kind

Properties

annotationSpecs

val annotationSpecs: List<AnnotationSpec>

enumConstants

val enumConstants: Map<String, TypeSpec>

funSpecs

val funSpecs: List<FunSpec>

initializerBlock

val initializerBlock: CodeBlock

isAnnotation

val isAnnotation: Boolean

isAnonymousClass

val isAnonymousClass: Boolean

isCompanion

val isCompanion: Boolean

isEnum

val isEnum: Boolean

kdoc

val kdoc: CodeBlock

kind

val kind: TypeSpec.Kind

modifiers

val modifiers: Set<KModifier>

name

val name: String?

primaryConstructor

val primaryConstructor: FunSpec?

propertySpecs

val propertySpecs: List<PropertySpec>

superclass

val superclass: TypeName

superclassConstructorParameters

val superclassConstructorParameters: List<CodeBlock>

superinterfaces

val superinterfaces: Map<TypeName, CodeBlock?>

Map of superinterfaces - entries with a null value represent a regular superinterface (with no delegation), while non-null CodeBlock values represent delegates for the corresponding TypeSpec interface (key) value

typeSpecs

val typeSpecs: List<TypeSpec>

typeVariables

val typeVariables: List<TypeVariableName>

Functions

equals

fun equals(other: Any?): Boolean

hashCode

fun hashCode(): Int

toBuilder

fun toBuilder(): TypeSpec.Builder

toString

fun toString(): String

Companion Object Functions

annotationBuilder

fun annotationBuilder(name: String): TypeSpec.Builder
fun annotationBuilder(className: ClassName): TypeSpec.Builder

anonymousClassBuilder

fun anonymousClassBuilder(): TypeSpec.Builder

classBuilder

fun classBuilder(name: String): TypeSpec.Builder
fun classBuilder(className: ClassName): TypeSpec.Builder

companionObjectBuilder

fun companionObjectBuilder(name: String? = null): TypeSpec.Builder

enumBuilder

fun enumBuilder(name: String): TypeSpec.Builder
fun enumBuilder(className: ClassName): TypeSpec.Builder

expectClassBuilder

fun expectClassBuilder(name: String): TypeSpec.Builder
fun expectClassBuilder(className: ClassName): TypeSpec.Builder

interfaceBuilder

fun interfaceBuilder(name: String): TypeSpec.Builder
fun interfaceBuilder(className: ClassName): TypeSpec.Builder

objectBuilder

fun objectBuilder(name: String): TypeSpec.Builder
fun objectBuilder(className: ClassName): TypeSpec.Builder

Extension Functions

tag

fun <T : Any> Taggable.tag(): T?

Returns the tag attached with T as a key, or null if no tag is attached with that key.