From 929f87d18c0c63e2f791ec80e1705e2ff14b51bc Mon Sep 17 00:00:00 2001 From: JFronny Date: Fri, 25 Nov 2022 13:59:34 +0100 Subject: [PATCH] Extension methods for CodeBlock.Builder --- .../src/main/kotlin/io/gitlab/jfronny/scripts/CodegenExt.kt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/convention/src/main/kotlin/io/gitlab/jfronny/scripts/CodegenExt.kt b/convention/src/main/kotlin/io/gitlab/jfronny/scripts/CodegenExt.kt index 2a62dc0..6a0c0bb 100644 --- a/convention/src/main/kotlin/io/gitlab/jfronny/scripts/CodegenExt.kt +++ b/convention/src/main/kotlin/io/gitlab/jfronny/scripts/CodegenExt.kt @@ -152,3 +152,7 @@ fun ParameterSpec.Builder.javadoc(generate: Action) = addJava fun ParameterSpec.Builder.annotation(annotation: Class<*>, generate: Action? = null) = addAnnotation(AnnotationSpec.builder(annotation).run(generate).build()) fun ParameterSpec.Builder.annotation(annotation: ClassName, generate: Action? = null) = addAnnotation(AnnotationSpec.builder(annotation).run(generate).build()) fun ParameterSpec.Builder.modifiers(vararg modifiers: Modifier) = addModifiers(*modifiers) + +// Extensions for CodeBlock.Builder +fun CodeBlock.Builder.controlFlow(controlFlow: String, vararg args: Any, generate: Action) = beginControlFlow(controlFlow, *args).run(generate).endControlFlow() +fun CodeBlock.Builder.indent(generate: Action) = indent().run(generate).unindent()