@@ -643,11 +643,11 @@ open class KotlinFileExtractor(
643643 extractTypeAccessRecursive(substitutedType, location, id, - 1 )
644644 }
645645 val syntheticParameterNames = isUnderscoreParameter(vp) || ((vp.parent as ? IrFunction )?.let { hasSynthesizedParameterNames(it) } ? : true )
646- return extractValueParameter(id, substitutedType, vp.name.asString(), location, parent, idx, useValueParameter(vp, parentSourceDeclaration), vp.isVararg, syntheticParameterNames )
646+ return extractValueParameter(id, substitutedType, vp.name.asString(), location, parent, idx, useValueParameter(vp, parentSourceDeclaration), syntheticParameterNames, vp.isVararg, vp.isNoinline, vp.isCrossinline )
647647 }
648648 }
649649
650- private fun extractValueParameter (id : Label <out DbParam >, t : IrType , name : String , locId : Label <DbLocation >, parent : Label <out DbCallable >, idx : Int , paramSourceDeclaration : Label <out DbParam >, isVararg : Boolean , syntheticParameterNames : Boolean ): TypeResults {
650+ private fun extractValueParameter (id : Label <out DbParam >, t : IrType , name : String , locId : Label <DbLocation >, parent : Label <out DbCallable >, idx : Int , paramSourceDeclaration : Label <out DbParam >, syntheticParameterNames : Boolean , isVararg : Boolean , isNoinline : Boolean , isCrossinline : Boolean ): TypeResults {
651651 val type = useType(t)
652652 tw.writeParams(id, type.javaResult.id, idx, parent, paramSourceDeclaration)
653653 tw.writeParamsKotlinType(id, type.kotlinResult.id)
@@ -658,6 +658,12 @@ open class KotlinFileExtractor(
658658 if (isVararg) {
659659 tw.writeIsVarargsParam(id)
660660 }
661+ if (isNoinline) {
662+ addModifiers(id, " noinline" )
663+ }
664+ if (isCrossinline) {
665+ addModifiers(id, " crossinline" )
666+ }
661667 return type
662668 }
663669
@@ -3412,7 +3418,7 @@ open class KotlinFileExtractor(
34123418 stmtIdx : Int
34133419 ) {
34143420 val paramId = tw.getFreshIdLabel<DbParam >()
3415- val paramTypeRes = extractValueParameter(paramId, paramType, paramName, locId, ids.constructor , paramIdx, paramId, isVararg = false , syntheticParameterNames = false )
3421+ val paramTypeRes = extractValueParameter(paramId, paramType, paramName, locId, ids.constructor , paramIdx, paramId, syntheticParameterNames = false , isVararg = false , isNoinline = false , isCrossinline = false )
34163422
34173423 val assignmentStmtId = tw.getFreshIdLabel<DbExprstmt >()
34183424 tw.writeStmts_exprstmt(assignmentStmtId, ids.constructorBlock, stmtIdx, ids.constructor )
@@ -4085,7 +4091,7 @@ open class KotlinFileExtractor(
40854091
40864092 val parameters = parameterTypes.mapIndexed { idx, p ->
40874093 val paramId = tw.getFreshIdLabel<DbParam >()
4088- val paramType = extractValueParameter(paramId, p, " a$idx " , locId, methodId, idx, paramId, isVararg = false , syntheticParameterNames = false )
4094+ val paramType = extractValueParameter(paramId, p, " a$idx " , locId, methodId, idx, paramId, syntheticParameterNames = false , isVararg = false , isNoinline = false , isCrossinline = false )
40894095
40904096 Pair (paramId, paramType)
40914097 }
0 commit comments