1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-06-06 09:16:02 +02:00

cleaned up CPPASTQualifiedName a bit

This commit is contained in:
Mike Kucera 2008-02-13 19:55:00 +00:00
parent 616efbbdbe
commit 4117aeccbd
2 changed files with 14 additions and 16 deletions

View file

@ -48,7 +48,7 @@ public class CPPASTQualifiedName extends CPPASTNode implements
// The full qualified name resolves to the same thing as the last name // The full qualified name resolves to the same thing as the last name
removeNullNames(); removeNullNames();
IASTName lastName = getLastName(); IASTName lastName = getLastName();
return lastName != null ? lastName.resolveBinding() : null; return lastName == null ? null : lastName.resolveBinding();
} }
public IASTCompletionContext getCompletionContext() { public IASTCompletionContext getCompletionContext() {
@ -63,10 +63,9 @@ public class CPPASTQualifiedName extends CPPASTNode implements
return null; return null;
} }
@Override
public String toString() { public String toString() {
if (signature == null) return (signature == null) ? "" : signature; //$NON-NLS-1$
return ""; //$NON-NLS-1$
return signature;
} }
public void addName(IASTName name) { public void addName(IASTName name) {
@ -83,7 +82,7 @@ public class CPPASTQualifiedName extends CPPASTNode implements
private IASTName[] names = null; private IASTName[] names = null;
private int namesPos=-1; private int namesPos=-1;
private boolean value; private boolean isFullyQualified;
private String signature; private String signature;
@ -103,7 +102,7 @@ public class CPPASTQualifiedName extends CPPASTNode implements
public char[] toCharArray() { public char[] toCharArray() {
if (names == null) if (names == null)
return "".toCharArray(); //$NON-NLS-1$ return new char[0];
removeNullNames(); removeNullNames();
// count first // count first
@ -132,19 +131,20 @@ public class CPPASTQualifiedName extends CPPASTNode implements
} }
public boolean isFullyQualified() { public boolean isFullyQualified() {
return value; return isFullyQualified;
} }
public void setFullyQualified(boolean value) { public void setFullyQualified(boolean isFullyQualified) {
this.value = value; this.isFullyQualified = isFullyQualified;
} }
public void setValue(String string) { public void setSignature(String signature) {
this.signature = string; this.signature = signature;
} }
@Override
public boolean accept(ASTVisitor action) { public boolean accept(ASTVisitor action) {
if (action.shouldVisitNames) { if (action.shouldVisitNames) {
switch (action.visit(this)) { switch (action.visit(this)) {
@ -317,10 +317,8 @@ public class CPPASTQualifiedName extends CPPASTNode implements
} }
private boolean nameMatches(char[] potential, char[] name, boolean isPrefix) { private boolean nameMatches(char[] potential, char[] name, boolean isPrefix) {
if (isPrefix) { if (isPrefix)
return CharArrayUtils.equals(potential, 0, name.length, name, true); return CharArrayUtils.equals(potential, 0, name.length, name, true);
} else { return CharArrayUtils.equals(potential, name);
return CharArrayUtils.equals(potential, name);
}
} }
} }

View file

@ -2512,7 +2512,7 @@ public class GNUCPPSourceParser extends AbstractGNUSourceCodeParser {
protected ICPPASTQualifiedName createQualifiedName(ITokenDuple duple) { protected ICPPASTQualifiedName createQualifiedName(ITokenDuple duple) {
CPPASTQualifiedName result = new CPPASTQualifiedName(); CPPASTQualifiedName result = new CPPASTQualifiedName();
result.setOffsetAndLength(duple.getStartOffset(), duple.getEndOffset() - duple.getStartOffset()); result.setOffsetAndLength(duple.getStartOffset(), duple.getEndOffset() - duple.getStartOffset());
result.setValue(duple.toString()); result.setSignature(duple.toString());
ITokenDuple[] segments = duple.getSegments(); ITokenDuple[] segments = duple.getSegments();
int startingValue = 0; int startingValue = 0;
if (segments.length > 0) { if (segments.length > 0) {