Separate tree structures for local and non-local root declarations
This commit is contained in:
@@ -1030,7 +1030,7 @@ public class JetPsiUtil {
|
||||
return header != null ? header.getQualifiedName() : null;
|
||||
}
|
||||
|
||||
public static JetElement getLocalizingCodeBlock(@NotNull JetNamedDeclaration declaration) {
|
||||
public static JetElement getEnclosingBlockForLocalDeclaration(@NotNull JetNamedDeclaration declaration) {
|
||||
//noinspection unchecked
|
||||
JetDeclaration container =
|
||||
PsiTreeUtil.getParentOfType(declaration, JetNamedFunction.class, JetPropertyAccessor.class, JetClassInitializer.class);
|
||||
@@ -1041,4 +1041,8 @@ public class JetPsiUtil {
|
||||
? ((JetClassInitializer) container).getBody()
|
||||
: ((JetDeclarationWithBody) container).getBodyExpression();
|
||||
}
|
||||
|
||||
public static boolean isLocal(@NotNull JetNamedDeclaration declaration) {
|
||||
return getEnclosingBlockForLocalDeclaration(declaration) != null;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user