@@ -643,11 +643,11 @@ open class KotlinFileExtractor(
643
643
extractTypeAccessRecursive(substitutedType, location, id, - 1 )
644
644
}
645
645
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 )
647
647
}
648
648
}
649
649
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 {
651
651
val type = useType(t)
652
652
tw.writeParams(id, type.javaResult.id, idx, parent, paramSourceDeclaration)
653
653
tw.writeParamsKotlinType(id, type.kotlinResult.id)
@@ -658,6 +658,12 @@ open class KotlinFileExtractor(
658
658
if (isVararg) {
659
659
tw.writeIsVarargsParam(id)
660
660
}
661
+ if (isNoinline) {
662
+ addModifiers(id, " noinline" )
663
+ }
664
+ if (isCrossinline) {
665
+ addModifiers(id, " crossinline" )
666
+ }
661
667
return type
662
668
}
663
669
@@ -3412,7 +3418,7 @@ open class KotlinFileExtractor(
3412
3418
stmtIdx : Int
3413
3419
) {
3414
3420
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 )
3416
3422
3417
3423
val assignmentStmtId = tw.getFreshIdLabel<DbExprstmt >()
3418
3424
tw.writeStmts_exprstmt(assignmentStmtId, ids.constructorBlock, stmtIdx, ids.constructor )
@@ -4085,7 +4091,7 @@ open class KotlinFileExtractor(
4085
4091
4086
4092
val parameters = parameterTypes.mapIndexed { idx, p ->
4087
4093
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 )
4089
4095
4090
4096
Pair (paramId, paramType)
4091
4097
}
0 commit comments