Object KotlinCodeGeneration
-
- All Implemented Interfaces:
public class KotlinCodeGenerationKotlin Code Generation is a wrapper lib for kotlin poet. This is the central class that allows access to builders and tools via simple static helpers.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description public classKotlinCodeGeneration.builderStatic access for all builders.
public classKotlinCodeGeneration.spiStatic to spi.
public classKotlinCodeGeneration.typeSpecTypeSpec helpers.
public classKotlinCodeGeneration.namepublic classKotlinCodeGeneration.formatConstants for kotlin-poet formats.
-
Field Summary
Fields Modifier and Type Field Description public final static KotlinCodeGenerationINSTANCE
-
Method Summary
-
-
Method Detail
-
buildAnnotation
final KotlinAnnotationSpec buildAnnotation(KClass<?> type, Function1<KotlinAnnotationSpecBuilder, Unit> block)
Build a KotlinAnnotationSpec using given type and receiver fn.
-
buildAnnotation
final KotlinAnnotationSpec buildAnnotation(ClassName className, Function1<KotlinAnnotationSpecBuilder, Unit> block)
Build a KotlinAnnotationSpec using given className and receiver fn.
-
buildAnnotationClass
final KotlinAnnotationClassSpec buildAnnotationClass(ClassName className, Function1<KotlinAnnotationClassSpecBuilder, Unit> block)
Build a KotlinAnnotationClassSpec using given className and receiver fn.
-
buildAnnotationClass
final KotlinAnnotationClassSpec buildAnnotationClass(String packageName, String simpleName, Function1<KotlinAnnotationClassSpecBuilder, Unit> block)
Build a KotlinAnnotationClassSpec using given package- and simpleName and receiver fn.
-
buildAnonymousClass
final KotlinAnonymousClassSpec buildAnonymousClass(Function1<KotlinAnonymousClassSpecBuilder, Unit> block)
Build a KotlinAnonymousClassSpec using given receiver fn.
-
buildClass
final KotlinClassSpec buildClass(ClassName className, Function1<KotlinClassSpecBuilder, Unit> block)
Build a KotlinClassSpec using given className and receiver fn.
-
buildClass
final KotlinClassSpec buildClass(String packageName, String simpleName, Function1<KotlinClassSpecBuilder, Unit> block)
Build a KotlinClassSpec using given package- and simpleName and receiver fn.
-
buildDelegateListValueClass
final KotlinValueClassSpec buildDelegateListValueClass(String packageName, String simpleName, KClass<?> items, Function1<DelegateListValueClassSpecBuilder, Unit> block)
-
buildDelegateListValueClass
final KotlinValueClassSpec buildDelegateListValueClass(String packageName, String simpleName, TypeName items, Function1<DelegateListValueClassSpecBuilder, Unit> block)
-
buildDelegateListValueClass
final KotlinValueClassSpec buildDelegateListValueClass(ClassName className, TypeName items, Function1<DelegateListValueClassSpecBuilder, Unit> block)
-
buildDelegateMapValueClass
final KotlinValueClassSpec buildDelegateMapValueClass(String packageName, String simpleName, TypeName keyType, TypeName valueType, Function1<DelegateMapValueClassSpecBuilder, Unit> block)
-
buildDelegateMapValueClass
final KotlinValueClassSpec buildDelegateMapValueClass(ClassName className, TypeName keyType, TypeName valueType, Function1<DelegateMapValueClassSpecBuilder, Unit> block)
-
buildRuntimeExceptionClass
final KotlinClassSpec buildRuntimeExceptionClass(String packageName, String simpleName, Function1<RuntimeExceptionSpecBuilder, Unit> block)
-
buildRuntimeExceptionClass
final KotlinClassSpec buildRuntimeExceptionClass(ClassName className, Function1<RuntimeExceptionSpecBuilder, Unit> block)
-
buildCodeBlock
final CodeBlock buildCodeBlock(String format, Object args)
-
buildCodeBlock
final CodeBlock buildCodeBlock(Function1<CodeBlock.Builder, Unit> block)
Build codeBlock using receiver-fn.
-
buildCompanionObject
final KotlinCompanionObjectSpec buildCompanionObject(String name, Function1<KotlinCompanionObjectSpecBuilder, Unit> block)
Build KotlinCompanionObjectSpec using optional name and receiver fn.
-
buildConstructorProperty
final KotlinConstructorPropertySpec buildConstructorProperty(String name, TypeName type, Function1<KotlinConstructorPropertySpecBuilder, Unit> block)
-
buildConstructorProperty
final KotlinConstructorPropertySpec buildConstructorProperty(String name, KClass<?> type, Function1<KotlinConstructorPropertySpecBuilder, Unit> block)
-
buildDataClass
final KotlinDataClassSpec buildDataClass(ClassName className, Function1<KotlinDataClassSpecBuilder, Unit> block)
Build KotlinDataClassSpec.
-
buildDataClass
final KotlinDataClassSpec buildDataClass(String packageName, String simpleName, Function1<KotlinDataClassSpecBuilder, Unit> block)
Build KotlinDataClassSpec.
-
buildEnumClass
final KotlinEnumClassSpec buildEnumClass(ClassName className, Function1<KotlinEnumClassSpecBuilder, Unit> block)
Build KotlinEnumClassSpec.
-
buildEnumClass
final KotlinEnumClassSpec buildEnumClass(String packageName, String simpleName, Function1<KotlinEnumClassSpecBuilder, Unit> block)
Build KotlinEnumClassSpec.
-
buildFile
final KotlinFileSpec buildFile(ClassName className, Function1<KotlinFileSpecBuilder, Unit> block)
Build KotlinFileSpec.
-
buildFile
final KotlinFileSpec buildFile(String packageName, String simpleName, Function1<KotlinFileSpecBuilder, Unit> block)
Build KotlinFileSpec.
-
buildFun
final KotlinFunSpec buildFun(String name, Function1<KotlinFunSpecBuilder, Unit> block)
Build KotlinFunSpec.
-
buildInterface
final KotlinInterfaceSpec buildInterface(ClassName className, Function1<KotlinInterfaceSpecBuilder, Unit> block)
Build KotlinInterfaceSpec.
-
buildInterface
final KotlinInterfaceSpec buildInterface(String packageName, String simpleName, Function1<KotlinInterfaceSpecBuilder, Unit> block)
Build KotlinInterfaceSpec.
-
buildObject
final KotlinObjectSpec buildObject(ClassName className, Function1<KotlinObjectSpecBuilder, Unit> block)
Build KotlinObjectSpec.
-
buildObject
final KotlinObjectSpec buildObject(String packageName, String simpleName, Function1<KotlinObjectSpecBuilder, Unit> block)
Build KotlinObjectSpec.
-
buildParameter
final KotlinParameterSpec buildParameter(String name, TypeName typeName, Function1<KotlinParameterSpecBuilder, Unit> block)
Build KotlinParameterSpec.
-
buildParameter
final KotlinParameterSpec buildParameter(String name, KClass<?> type, Function1<KotlinParameterSpecBuilder, Unit> block)
Build KotlinParameterSpec.
-
buildProperty
final KotlinPropertySpec buildProperty(String name, TypeName typeName, Function1<KotlinPropertySpecBuilder, Unit> block)
Build KotlinPropertySpec.
-
buildProperty
final KotlinPropertySpec buildProperty(String name, KClass<?> type, Function1<KotlinPropertySpecBuilder, Unit> block)
Build KotlinPropertySpec.
-
buildTypeAlias
final KotlinTypeAliasSpec buildTypeAlias(String name, TypeName type, Function1<KotlinTypeAliasSpecBuilder, Unit> block)
Build KotlinTypeAliasSpec.
-
buildValueClass
final KotlinValueClassSpec buildValueClass(ClassName className, Function1<KotlinValueClassSpecBuilder, Unit> block)
Build KotlinValueClassSpec.
-
buildValueClass
final KotlinValueClassSpec buildValueClass(String packageName, String simpleName, Function1<KotlinValueClassSpecBuilder, Unit> block)
Build KotlinValueClassSpec.
-
className
final ClassName className(String packageName, String simpleName)
Create ClassName for given package and simpleName.
-
simpleClassName
final ClassName simpleClassName(String simpleName)
Create ClassName with default packageName.
-
generateFiles
final <CONTEXT extends KotlinCodeGenerationContext<CONTEXT>, INPUT extends Any> KotlinFileSpecList generateFiles(KotlinCodeGenerationContextFactory<CONTEXT, INPUT> contextFactory, INPUT input)
Generator Function that takes a context and an input, finds matching strategies and generates source file(s).
Invokes the contextFactory and calls
generateFiles(context, input).- Parameters:
contextFactory- factory fn to create the context (containing the spi registry) used for generation from inputinput- the instance of the input- Returns:
KotlinFileSpecList containing the generated files
-
generateFiles
final <CONTEXT extends KotlinCodeGenerationContext<CONTEXT>, INPUT extends Any> KotlinFileSpecList generateFiles(CONTEXT context, INPUT input)
Generator Function that takes a context and an input, finds matching strategies and generates source file(s).
- Parameters:
context- the context (containing the spi registry) used for generationinput- the instance of the input- Returns:
KotlinFileSpecList containing the generated files
-
-
-
-