mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
cache scope text for deep scopes (IDEA-114816)
This commit is contained in:
+16
-11
@@ -24,6 +24,8 @@ public class IntersectionPackageSet extends PackageSetBase {
|
||||
private final PackageSet myFirstSet;
|
||||
private final PackageSet mySecondSet;
|
||||
|
||||
private String myText;
|
||||
|
||||
public IntersectionPackageSet(PackageSet firstSet, PackageSet secondSet) {
|
||||
myFirstSet = firstSet;
|
||||
mySecondSet = secondSet;
|
||||
@@ -58,18 +60,21 @@ public class IntersectionPackageSet extends PackageSetBase {
|
||||
@Override
|
||||
@NotNull
|
||||
public String getText() {
|
||||
StringBuffer buf = new StringBuffer();
|
||||
boolean needParen = myFirstSet.getNodePriority() > getNodePriority();
|
||||
if (needParen) buf.append('(');
|
||||
buf.append(myFirstSet.getText());
|
||||
if (needParen) buf.append(')');
|
||||
buf.append("&&");
|
||||
needParen = mySecondSet.getNodePriority() > getNodePriority();
|
||||
if (needParen) buf.append('(');
|
||||
buf.append(mySecondSet.getText());
|
||||
if (needParen) buf.append(')');
|
||||
if (myText == null) {
|
||||
final StringBuilder buf = new StringBuilder();
|
||||
boolean needParen = myFirstSet.getNodePriority() > getNodePriority();
|
||||
if (needParen) buf.append('(');
|
||||
buf.append(myFirstSet.getText());
|
||||
if (needParen) buf.append(')');
|
||||
buf.append("&&");
|
||||
needParen = mySecondSet.getNodePriority() > getNodePriority();
|
||||
if (needParen) buf.append('(');
|
||||
buf.append(mySecondSet.getText());
|
||||
if (needParen) buf.append(')');
|
||||
|
||||
return buf.toString();
|
||||
myText = buf.toString();
|
||||
}
|
||||
return myText;
|
||||
}
|
||||
|
||||
public PackageSet getFirstSet() {
|
||||
|
||||
+6
-1
@@ -24,6 +24,8 @@ public class UnionPackageSet extends PackageSetBase {
|
||||
private final PackageSet myFirstSet;
|
||||
private final PackageSet mySecondSet;
|
||||
|
||||
private String myText;
|
||||
|
||||
public UnionPackageSet(@NotNull PackageSet set1, @NotNull PackageSet set2) {
|
||||
myFirstSet = set1;
|
||||
mySecondSet = set2;
|
||||
@@ -54,7 +56,10 @@ public class UnionPackageSet extends PackageSetBase {
|
||||
@Override
|
||||
@NotNull
|
||||
public String getText() {
|
||||
return myFirstSet.getText() + "||" + mySecondSet.getText();
|
||||
if (myText == null) {
|
||||
myText = myFirstSet.getText() + "||" + mySecondSet.getText();
|
||||
}
|
||||
return myText;
|
||||
}
|
||||
|
||||
public PackageSet getFirstSet() {
|
||||
|
||||
Reference in New Issue
Block a user