Move: Fix exception on moving top-level declaration from/to script file

#KT-20260 Fixed
This commit is contained in:
Alexey Sedunov
2018-05-31 14:48:21 +03:00
parent c63854948b
commit 3c267b206b
21 changed files with 72 additions and 5 deletions
@@ -578,4 +578,13 @@ fun KtNamedDeclaration.safeFqNameForLazyResolve(): FqName? {
//NOTE: should only create special names for package level declarations, so we can safely rely on real fq name for parent
val parentFqName = KtNamedDeclarationUtil.getParentFqName(this)
return parentFqName?.child(safeNameForLazyResolve())
}
fun isTopLevelInFileOrScript(element: PsiElement): Boolean {
val parent = element.parent
return when (parent) {
is KtFile -> true
is KtBlockExpression -> parent.parent is KtScript
else -> false
}
}