Quiero modificar funciones de orden superior con la palabra clave "suspender". Lo siguiente es lo que quiero:
public fun login(io: suspend () -> ResLogin): Unit {}Traté de usar:
val lambdaTypeName = LambdaTypeName.get(returnType = responseBean)Pero obtén el siguiente código:
public fun login(io: () -> ResLogin): Unit {}No sé cómo comenzar, y la API del sitio web oficial se ha verificado durante mucho tiempo y no he encontrado una respuesta similar. ¡Espero que el jefe dé instrucciones!
Se ha encontrado la respuesta, se puede resolver mediante LambdaTypeName.copy(suspending = true), el código específico es el siguiente:
val lambdaTypeName = LambdaTypeName.get(returnType = responseBean) FunSpec.builder(it.methodName).addParameter(ParameterSpec.builder("io",lambdaTypeName.copy(suspending = true)).build())