Raw FIR: introduce string concatenation call
This removes some 'plus' calls to be resolved
This commit is contained in:
@@ -80,6 +80,8 @@ internal class Fir2IrVisitor(
|
||||
|
||||
private val booleanType = FirImplicitBooleanTypeRef(session, null).toIrType(session, declarationStorage)
|
||||
|
||||
private val stringType = FirImplicitStringTypeRef(session, null).toIrType(session, declarationStorage)
|
||||
|
||||
private fun ModuleDescriptor.findPackageFragmentForFile(file: FirFile): PackageFragmentDescriptor =
|
||||
getPackage(file.packageFqName).fragments.first()
|
||||
|
||||
@@ -1070,6 +1072,15 @@ internal class Fir2IrVisitor(
|
||||
}
|
||||
}
|
||||
|
||||
override fun visitStringConcatenationCall(stringConcatenationCall: FirStringConcatenationCall, data: Any?): IrElement {
|
||||
return stringConcatenationCall.convertWithOffsets { startOffset, endOffset ->
|
||||
IrStringConcatenationImpl(
|
||||
startOffset, endOffset, stringType,
|
||||
stringConcatenationCall.arguments.map { it.toIrExpression() }
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
override fun visitTypeOperatorCall(typeOperatorCall: FirTypeOperatorCall, data: Any?): IrElement {
|
||||
return typeOperatorCall.convertWithOffsets { startOffset, endOffset ->
|
||||
val irTypeOperand = typeOperatorCall.conversionTypeRef.toIrType(session, declarationStorage)
|
||||
|
||||
Reference in New Issue
Block a user