Skip to content

Commit f9fc08b

Browse files
committed
Replace uses of the !! operator in borrowed code
1 parent 81353f8 commit f9fc08b

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

java/kotlin-extractor/src/main/kotlin/KotlinFileExtractor.kt

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -820,12 +820,16 @@ open class KotlinFileExtractor(
820820

821821
// Taken from declarationBuilders.kt (not available in Kotlin < 1.6):
822822
private fun addDefaultGetter(p: IrProperty, parentClass: IrClass) {
823-
val field = p.backingField!!
823+
val field = p.backingField ?:
824+
run { logger.warnElement("Expected property to have a backing field", p); return }
824825
p.addGetter {
825826
origin = IrDeclarationOrigin.DEFAULT_PROPERTY_ACCESSOR
826827
returnType = field.type
827828
}.apply {
828-
dispatchReceiverParameter = copyParameterToFunction(parentClass.thisReceiver!!, this)
829+
val thisReceiever = parentClass.thisReceiver ?:
830+
run { logger.warnElement("Expected property's parent class to have a receiver parameter", parentClass); return }
831+
val newParam = copyParameterToFunction(thisReceiever, this)
832+
dispatchReceiverParameter = newParam
829833
body = factory.createBlockBody(
830834
UNDEFINED_OFFSET, UNDEFINED_OFFSET, listOf(
831835
IrReturnImpl(
@@ -838,8 +842,8 @@ open class KotlinFileExtractor(
838842
field.type,
839843
IrGetValueImpl(
840844
UNDEFINED_OFFSET, UNDEFINED_OFFSET,
841-
dispatchReceiverParameter!!.type,
842-
dispatchReceiverParameter!!.symbol
845+
newParam.type,
846+
newParam.symbol
843847
)
844848
)
845849
)

0 commit comments

Comments
 (0)