From 9d4096de933d2d4f8fa058a069d70868fee9ecbe Mon Sep 17 00:00:00 2001 From: Oliver Drotbohm Date: Tue, 3 Jun 2025 20:02:04 +0200 Subject: [PATCH] GH-2332 - Simplify generics declaration in Kotlin extensions. --- .../hateoas/server/mvc/WebMvcAffordanceBuilderDsl.kt | 6 +++--- .../hateoas/server/mvc/WebMvcLinkBuilderDsl.kt | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/main/kotlin/org/springframework/hateoas/server/mvc/WebMvcAffordanceBuilderDsl.kt b/src/main/kotlin/org/springframework/hateoas/server/mvc/WebMvcAffordanceBuilderDsl.kt index 11cca081..73571833 100644 --- a/src/main/kotlin/org/springframework/hateoas/server/mvc/WebMvcAffordanceBuilderDsl.kt +++ b/src/main/kotlin/org/springframework/hateoas/server/mvc/WebMvcAffordanceBuilderDsl.kt @@ -43,7 +43,7 @@ inline infix fun Link.andAffordances(setup: WebMvcAffordanceBuilderDsl.() -> Uni * @author Roland Kulcsár * @since 1.0 */ -inline fun afford(func: C.() -> Any): Affordance = afford(methodOn(C::class.java as Class).run(func)) +inline fun afford(func: C.() -> Any): Affordance = afford(methodOn(C::class.java as Class).run(func)) /** * Provide an [Affordance]s DSL to help write idiomatic Kotlin code. @@ -53,9 +53,9 @@ inline fun afford(func: C.() -> Any): Affordance = afford(methodOn(C */ open class WebMvcAffordanceBuilderDsl(val affordances: MutableList = mutableListOf()) { - inline fun afford(func: C.() -> Any) { + inline fun afford(func: C.() -> Any) { - val affordance = afford(methodOn(C::class.java as Class).func()) + val affordance = afford(methodOn(C::class.java as Class).func()) affordances.add(affordance) } } diff --git a/src/main/kotlin/org/springframework/hateoas/server/mvc/WebMvcLinkBuilderDsl.kt b/src/main/kotlin/org/springframework/hateoas/server/mvc/WebMvcLinkBuilderDsl.kt index 837aa56b..41ff5b3a 100644 --- a/src/main/kotlin/org/springframework/hateoas/server/mvc/WebMvcLinkBuilderDsl.kt +++ b/src/main/kotlin/org/springframework/hateoas/server/mvc/WebMvcLinkBuilderDsl.kt @@ -32,7 +32,7 @@ import kotlin.reflect.KClass * @author Greg Turnquist * @since 1.0 */ -inline fun linkTo(func: C.() -> Any): WebMvcLinkBuilder = linkTo(methodOn(C::class.java as Class).run(func)) +inline fun linkTo(func: C.() -> Any): WebMvcLinkBuilder = linkTo(methodOn(C::class.java as Class).run(func)) /** * Create a [Link] with the given [rel]. @@ -49,7 +49,7 @@ infix fun WebMvcLinkBuilder.withRel(rel: String): Link = withRel(rel) * @author Roland Kulcsár * @since 1.0 */ -fun > R.add(controller: Class, links: WebMvcLinkBuilderDsl.(R) -> Unit): R { +fun > R.add(controller: Class, links: WebMvcLinkBuilderDsl.(R) -> Unit): R { val builder = WebMvcLinkBuilderDsl(controller, this) builder.links(this) @@ -73,12 +73,12 @@ fun > R.add(controller: KClass, links: We * @author Roland Kulcsár * @since 1.0 */ -open class WebMvcLinkBuilderDsl>(val controller: Class, val resource: R) { +open class WebMvcLinkBuilderDsl>(val controller: Class, val resource: R) { /** * Create a [WebMvcLinkBuilder] pointing to [func] method. */ - fun linkTo(func: C.() -> R & Any): WebMvcLinkBuilder = linkTo(methodOn(controller).run(func)) + fun linkTo(func: C.() -> R): WebMvcLinkBuilder = linkTo(methodOn(controller).run(func)) /** * Add a link with the given [rel] to the [resource].