[FIR] Drop redundant FirIntegerOperatorCall and number of fir copy methods
This commit is contained in:
committed by
teamcity
parent
27901a55c4
commit
84913772ec
+30
@@ -112,3 +112,33 @@ inline fun buildAnonymousFunction(init: FirAnonymousFunctionBuilder.() -> Unit):
|
||||
}
|
||||
return FirAnonymousFunctionBuilder().apply(init).build()
|
||||
}
|
||||
|
||||
@OptIn(ExperimentalContracts::class)
|
||||
inline fun buildAnonymousFunctionCopy(original: FirAnonymousFunction, init: FirAnonymousFunctionBuilder.() -> Unit): FirAnonymousFunction {
|
||||
contract {
|
||||
callsInPlace(init, kotlin.contracts.InvocationKind.EXACTLY_ONCE)
|
||||
}
|
||||
val copyBuilder = FirAnonymousFunctionBuilder()
|
||||
copyBuilder.source = original.source
|
||||
copyBuilder.annotations.addAll(original.annotations)
|
||||
copyBuilder.moduleData = original.moduleData
|
||||
copyBuilder.origin = original.origin
|
||||
copyBuilder.attributes = original.attributes.copy()
|
||||
copyBuilder.returnTypeRef = original.returnTypeRef
|
||||
copyBuilder.receiverTypeRef = original.receiverTypeRef
|
||||
copyBuilder.deprecation = original.deprecation
|
||||
copyBuilder.containerSource = original.containerSource
|
||||
copyBuilder.dispatchReceiverType = original.dispatchReceiverType
|
||||
copyBuilder.controlFlowGraphReference = original.controlFlowGraphReference
|
||||
copyBuilder.valueParameters.addAll(original.valueParameters)
|
||||
copyBuilder.body = original.body
|
||||
copyBuilder.symbol = original.symbol
|
||||
copyBuilder.label = original.label
|
||||
copyBuilder.invocationKind = original.invocationKind
|
||||
copyBuilder.inlineStatus = original.inlineStatus
|
||||
copyBuilder.isLambda = original.isLambda
|
||||
copyBuilder.hasExplicitParameterList = original.hasExplicitParameterList
|
||||
copyBuilder.typeParameters.addAll(original.typeParameters)
|
||||
copyBuilder.typeRef = original.typeRef
|
||||
return copyBuilder.apply(init).build()
|
||||
}
|
||||
|
||||
+1
@@ -233,6 +233,7 @@ object BuilderConfigurator : AbstractBuilderConfigurator<FirTreeBuilder>(FirTree
|
||||
parents += functionBuilder
|
||||
defaultNull("invocationKind", "label", "body", "controlFlowGraphReference")
|
||||
default("inlineStatus", "InlineStatus.Unknown")
|
||||
withCopy()
|
||||
}
|
||||
|
||||
builder(propertyAccessor) {
|
||||
|
||||
Reference in New Issue
Block a user