Cache getting qualified name for package expression
This commit is contained in:
@@ -33,6 +33,8 @@ import java.util.List;
|
|||||||
* @author abreslav
|
* @author abreslav
|
||||||
*/
|
*/
|
||||||
public class JetNamespaceHeader extends JetReferenceExpression {
|
public class JetNamespaceHeader extends JetReferenceExpression {
|
||||||
|
private String qualifiedNameCache = null;
|
||||||
|
|
||||||
public JetNamespaceHeader(@NotNull ASTNode node) {
|
public JetNamespaceHeader(@NotNull ASTNode node) {
|
||||||
super(node);
|
super(node);
|
||||||
}
|
}
|
||||||
@@ -104,9 +106,14 @@ public class JetNamespaceHeader extends JetReferenceExpression {
|
|||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
public String getQualifiedName() {
|
public String getQualifiedName() {
|
||||||
return getQualifiedNameParentOf(null);
|
if (qualifiedNameCache == null) {
|
||||||
|
qualifiedNameCache = getQualifiedNameParentOf(null);
|
||||||
|
}
|
||||||
|
|
||||||
|
return qualifiedNameCache;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@NotNull
|
||||||
private String getQualifiedNameParentOf(@Nullable JetReferenceExpression nameExpression) {
|
private String getQualifiedNameParentOf(@Nullable JetReferenceExpression nameExpression) {
|
||||||
StringBuilder builder = new StringBuilder();
|
StringBuilder builder = new StringBuilder();
|
||||||
for (JetSimpleNameExpression e : findChildrenByClass(JetSimpleNameExpression.class)) {
|
for (JetSimpleNameExpression e : findChildrenByClass(JetSimpleNameExpression.class)) {
|
||||||
|
|||||||
Reference in New Issue
Block a user