1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-29 19:45:01 +02:00

Cleaned up some extra code that is unnecessary with completion handling at the name level.

This commit is contained in:
Doug Schaefer 2005-04-16 14:20:15 +00:00
parent d1eda86d21
commit 7766575f77
2 changed files with 2 additions and 48 deletions

View file

@ -493,7 +493,7 @@ public abstract class AbstractGNUSourceCodeParser implements ISourceCodeParser {
IASTCompoundStatement result = createCompoundStatement();
((ASTNode) result).setOffset(startingOffset);
result.setPropertyInParent(IASTFunctionDefinition.FUNCTION_BODY);
while (LT(1) != IToken.tRBRACE && LT(1) != IToken.tCOMPLETION && LT(1) != IToken.tEOC) {
while (LT(1) != IToken.tRBRACE && LT(1) != IToken.tEOC) {
int checkToken = LA(1).hashCode();
try {
IASTStatement s = statement();
@ -520,44 +520,6 @@ public abstract class AbstractGNUSourceCodeParser implements ISourceCodeParser {
int lastOffset = token.getEndOffset();
((ASTNode) result).setLength(lastOffset - startingOffset);
if (token.getType() == IToken.tCOMPLETION) {
if (token.getLength() > 0) {
// At the beginning of a statement, this could be either an expression
// statement or a declaration statement. We'll create both and add them
// to the completion node.
// First the expression statement
IASTExpressionStatement exprStmt = createExpressionStatement();
exprStmt.setParent(result);
exprStmt.setPropertyInParent(IASTCompoundStatement.NESTED_STATEMENT);
IASTIdExpression expr = createIdExpression();
exprStmt.setExpression(expr);
expr.setParent(exprStmt);
expr.setPropertyInParent(IASTExpressionStatement.EXPFRESSION);
IASTName exprName = createName(token);
expr.setName(exprName);
exprName.setParent(expr);
exprName.setPropertyInParent(IASTIdExpression.ID_NAME);
// Now the declaration statement
IASTDeclarationStatement declStmt = createDeclarationStatement();
declStmt.setParent(result);
declStmt.setPropertyInParent(IASTCompoundStatement.NESTED_STATEMENT);
IASTSimpleDeclaration decl = createSimpleDeclaration();
declStmt.setDeclaration(decl);
decl.setParent(declStmt);
decl.setPropertyInParent(IASTDeclarationStatement.DECLARATION);
IASTNamedTypeSpecifier declSpec = createNamedTypeSpecifier();
decl.setDeclSpecifier(declSpec);
declSpec.setParent(decl);
declSpec.setPropertyInParent(IASTSimpleDeclaration.DECL_SPECIFIER);
IASTName declSpecName = createName(token);
declSpec.setName(declSpecName);
declSpecName.setParent(declSpec);
declSpecName.setPropertyInParent(IASTNamedTypeSpecifier.NAME);
}
}
return result;
}

View file

@ -1768,6 +1768,7 @@ public class GNUCPPSourceParser extends AbstractGNUSourceCodeParser {
case IToken.tIDENTIFIER:
case IToken.tCOLONCOLON:
case IToken.t_operator:
case IToken.tCOMPLETION:
case IToken.tCOMPL: {
IASTName name = idExpression();
IASTIdExpression idExpression = createIdExpression();
@ -1780,15 +1781,6 @@ public class GNUCPPSourceParser extends AbstractGNUSourceCodeParser {
name.setPropertyInParent(IASTIdExpression.ID_NAME);
return idExpression;
}
case IToken.tCOMPLETION: {
IToken token = consume();
IASTName name = createName(token);
IASTIdExpression idExpression = createIdExpression();
idExpression.setName(name);
name.setParent(idExpression);
name.setPropertyInParent(IASTIdExpression.ID_NAME);
return idExpression;
}
default:
IToken la = LA(1);
int startingOffset = la.getOffset();