Derek Ellis
01/27/2022, 2:02 AMdynamic
as the type of a parameter in a composable function? (Stack trace in thread)
@Composable
fun myComposable(value: dynamic) {
}
Derek Ellis
01/27/2022, 2:02 AMjava.lang.IllegalStateException: dynamic
at org.jetbrains.kotlin.backend.jvm.ir.JvmIrTypeUtilsKt.getErasedUpperBound(JvmIrTypeUtils.kt:94)
at org.jetbrains.kotlin.backend.jvm.ir.JvmIrTypeUtilsKt.isInlineClassType(JvmIrTypeUtils.kt:123)
at androidx.compose.compiler.plugins.kotlin.lower.ComposableFunctionBodyTransformer$Scope$FunctionScope.parameterInformation(ComposableFunctionBodyTransformer.kt:3503)
at androidx.compose.compiler.plugins.kotlin.lower.ComposableFunctionBodyTransformer$Scope$FunctionScope.calculateSourceInfo(ComposableFunctionBodyTransformer.kt:3558)
at androidx.compose.compiler.plugins.kotlin.lower.ComposableFunctionBodyTransformer.getSourceInformation(ComposableFunctionBodyTransformer.kt:1186)
at androidx.compose.compiler.plugins.kotlin.lower.ComposableFunctionBodyTransformer.applySourceFixups(ComposableFunctionBodyTransformer.kt:1196)
at androidx.compose.compiler.plugins.kotlin.lower.ComposableFunctionBodyTransformer.lower(ComposableFunctionBodyTransformer.kt:463)
at androidx.compose.compiler.plugins.kotlin.ComposeIrGenerationExtension.generate(ComposeIrGenerationExtension.kt:167)
at org.jetbrains.kotlin.ir.backend.js.KlibKt.generateModuleFragmentWithPlugins$lambda-26(klib.kt:456)
at org.jetbrains.kotlin.psi2ir.Psi2IrTranslator.generateModuleFragment(Psi2IrTranslator.kt:88)
at org.jetbrains.kotlin.ir.backend.js.KlibKt.generateModuleFragmentWithPlugins(klib.kt:461)
at org.jetbrains.kotlin.ir.backend.js.KlibKt.generateKLib(klib.kt:189)
at org.jetbrains.kotlin.ir.backend.js.KlibKt.generateKLib$default(klib.kt:122)
at org.jetbrains.kotlin.cli.js.K2JsIrCompiler.doExecute(K2JsIrCompiler.kt:264)
at org.jetbrains.kotlin.cli.js.K2JSCompiler.doExecute(K2JSCompiler.java:178)
at org.jetbrains.kotlin.cli.js.K2JSCompiler.doExecute(K2JSCompiler.java:71)
at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:92)
at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:44)
at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:98)
at org.jetbrains.kotlin.incremental.IncrementalJsCompilerRunner.runCompiler(IncrementalJsCompilerRunner.kt:193)
at org.jetbrains.kotlin.incremental.IncrementalJsCompilerRunner.runCompiler(IncrementalJsCompilerRunner.kt:78)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileIncrementally(IncrementalCompilerRunner.kt:357)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileIncrementally$default(IncrementalCompilerRunner.kt:299)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileImpl(IncrementalCompilerRunner.kt:159)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile(IncrementalCompilerRunner.kt:80)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile$default(IncrementalCompilerRunner.kt:71)
at org.jetbrains.kotlin.daemon.CompileServiceImplBase.execJsIncrementalCompiler(CompileServiceImpl.kt:564)
at org.jetbrains.kotlin.daemon.CompileServiceImplBase.access$execJsIncrementalCompiler(CompileServiceImpl.kt:100)
at org.jetbrains.kotlin.daemon.CompileServiceImpl.compile(CompileServiceImpl.kt:1802)
Norbi
01/27/2022, 7:47 AMdynamic
reference in a simple wrapper class, and pass that wrapper class to the @Composable fun
(instead of the dynamic
directly).
(And maybe file an issue, I haven't found any: https://youtrack.jetbrains.com/issues/KT?q=@Composable%20dynamic)Oleksandr Karpovich [JB]
01/27/2022, 8:07 AMDerek Ellis
01/27/2022, 12:56 PMAny?
but dynamic
would be more correct.
https://github.com/dellisd/reroute/blob/master/web/src/jsMain/kotlin/io/github/dellisd/reroute/map/LayerScope.kt#L20-L35Derek Ellis
01/27/2022, 12:56 PMNorbi
01/28/2022, 6:13 AMDerek Ellis
01/28/2022, 2:16 PMArray<dynamic>
), it's just not idealBig Chungus
01/29/2022, 12:22 PMBig Chungus
01/29/2022, 12:22 PMBig Chungus
01/29/2022, 12:23 PMBig Chungus
01/29/2022, 12:23 PMOleksandr Karpovich [JB]
01/29/2022, 12:38 PM