in gdscript/src/main/kotlin/gdscript/refactoring/inline/GdInlineVariableProcessor.kt [52:82]
override fun performRefactoring(usages: Array<out UsageInfo>) {
val parent = element.parent
val replacementExpr: GdExpr = when (parent) {
is GdVarDeclSt -> parent.expr
is GdClassVarDeclTl -> parent.expr
is GdConstDeclSt -> parent.expr
is GdConstDeclTl -> parent.expr
else -> null
} ?: return
if (inlineThisOnly) {
this.initializer?.replace(replacementExpr)
} else {
usages.forEach {
val element = it.element ?: return@forEach
try {
element.replace(replacementExpr)
} catch (e: IncorrectOperationException) {
LOG.error(e)
}
}
}
if (!inlineThisOnly && removeDeclaration) {
try {
parent.delete()
} catch (e: IncorrectOperationException) {
LOG.error(e)
}
}
}