@@ -649,11 +649,11 @@ open class KotlinFileExtractor(
649649 extractTypeAccessRecursive(substitutedType, location, id, - 1 )
650650 }
651651 val syntheticParameterNames = isUnderscoreParameter(vp) || ((vp.parent as ? IrFunction )?.let { hasSynthesizedParameterNames(it) } ? : true )
652- return extractValueParameter(id, substitutedType, vp.name.asString(), location, parent, idx, useValueParameter(vp, parentSourceDeclaration), vp.isVararg, syntheticParameterNames )
652+ return extractValueParameter(id, substitutedType, vp.name.asString(), location, parent, idx, useValueParameter(vp, parentSourceDeclaration), syntheticParameterNames, vp.isVararg, vp.isNoinline, vp.isCrossinline )
653653 }
654654 }
655655
656- 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 {
656+ 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 {
657657 val type = useType(t)
658658 tw.writeParams(id, type.javaResult.id, idx, parent, paramSourceDeclaration)
659659 tw.writeParamsKotlinType(id, type.kotlinResult.id)
@@ -664,6 +664,12 @@ open class KotlinFileExtractor(
664664 if (isVararg) {
665665 tw.writeIsVarargsParam(id)
666666 }
667+ if (isNoinline) {
668+ addModifiers(id, " noinline" )
669+ }
670+ if (isCrossinline) {
671+ addModifiers(id, " crossinline" )
672+ }
667673 return type
668674 }
669675
@@ -3586,7 +3592,7 @@ open class KotlinFileExtractor(
35863592 stmtIdx : Int
35873593 ) {
35883594 val paramId = tw.getFreshIdLabel<DbParam >()
3589- val paramTypeRes = extractValueParameter(paramId, paramType, paramName, locId, ids.constructor , paramIdx, paramId, isVararg = false , syntheticParameterNames = false )
3595+ val paramTypeRes = extractValueParameter(paramId, paramType, paramName, locId, ids.constructor , paramIdx, paramId, syntheticParameterNames = false , isVararg = false , isNoinline = false , isCrossinline = false )
35903596
35913597 val assignmentStmtId = tw.getFreshIdLabel<DbExprstmt >()
35923598 tw.writeStmts_exprstmt(assignmentStmtId, ids.constructorBlock, stmtIdx, ids.constructor )
@@ -4259,7 +4265,7 @@ open class KotlinFileExtractor(
42594265
42604266 val parameters = parameterTypes.mapIndexed { idx, p ->
42614267 val paramId = tw.getFreshIdLabel<DbParam >()
4262- val paramType = extractValueParameter(paramId, p, " a$idx " , locId, methodId, idx, paramId, isVararg = false , syntheticParameterNames = false )
4268+ val paramType = extractValueParameter(paramId, p, " a$idx " , locId, methodId, idx, paramId, syntheticParameterNames = false , isVararg = false , isNoinline = false , isCrossinline = false )
42634269
42644270 Pair (paramId, paramType)
42654271 }
0 commit comments