@@ -649,11 +649,11 @@ open class KotlinFileExtractor(
649
649
extractTypeAccessRecursive(substitutedType, location, id, - 1 )
650
650
}
651
651
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 )
653
653
}
654
654
}
655
655
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 {
657
657
val type = useType(t)
658
658
tw.writeParams(id, type.javaResult.id, idx, parent, paramSourceDeclaration)
659
659
tw.writeParamsKotlinType(id, type.kotlinResult.id)
@@ -664,6 +664,12 @@ open class KotlinFileExtractor(
664
664
if (isVararg) {
665
665
tw.writeIsVarargsParam(id)
666
666
}
667
+ if (isNoinline) {
668
+ addModifiers(id, " noinline" )
669
+ }
670
+ if (isCrossinline) {
671
+ addModifiers(id, " crossinline" )
672
+ }
667
673
return type
668
674
}
669
675
@@ -3586,7 +3592,7 @@ open class KotlinFileExtractor(
3586
3592
stmtIdx : Int
3587
3593
) {
3588
3594
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 )
3590
3596
3591
3597
val assignmentStmtId = tw.getFreshIdLabel<DbExprstmt >()
3592
3598
tw.writeStmts_exprstmt(assignmentStmtId, ids.constructorBlock, stmtIdx, ids.constructor )
@@ -4259,7 +4265,7 @@ open class KotlinFileExtractor(
4259
4265
4260
4266
val parameters = parameterTypes.mapIndexed { idx, p ->
4261
4267
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 )
4263
4269
4264
4270
Pair (paramId, paramType)
4265
4271
}
0 commit comments