1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-23 14:42:11 +02:00

Cosmetics.

This commit is contained in:
Sergey Prigogin 2010-03-29 03:54:04 +00:00
parent cd70847e0a
commit c602341aad
2 changed files with 37 additions and 45 deletions

View file

@ -43,7 +43,6 @@ public class CPPASTBinaryExpression extends ASTNode implements ICPPASTBinaryExpr
private ICPPFunction overload= UNINITIALIZED_FUNCTION;
private IASTImplicitName[] implicitNames = null;
public CPPASTBinaryExpression() {
}
@ -108,9 +107,9 @@ public class CPPASTBinaryExpression extends ASTNode implements ICPPASTBinaryExpr
}
public IASTImplicitName[] getImplicitNames() {
if(implicitNames == null) {
if (implicitNames == null) {
ICPPFunction overload = getOverload();
if(overload == null)
if (overload == null)
return implicitNames = IASTImplicitName.EMPTY_NAME_ARRAY;
CPPASTImplicitName operatorName = new CPPASTImplicitName(overload.getNameCharArray(), this);
@ -123,7 +122,6 @@ public class CPPASTBinaryExpression extends ASTNode implements ICPPASTBinaryExpr
return implicitNames;
}
@Override
public boolean accept(ASTVisitor action) {
if (operand1 instanceof IASTBinaryExpression || operand2 instanceof IASTBinaryExpression) {
@ -132,8 +130,8 @@ public class CPPASTBinaryExpression extends ASTNode implements ICPPASTBinaryExpr
if (action.shouldVisitExpressions) {
switch (action.visit(this)) {
case ASTVisitor.PROCESS_ABORT : return false;
case ASTVisitor.PROCESS_SKIP : return true;
case ASTVisitor.PROCESS_ABORT: return false;
case ASTVisitor.PROCESS_SKIP: return true;
default : break;
}
}
@ -170,7 +168,7 @@ public class CPPASTBinaryExpression extends ASTNode implements ICPPASTBinaryExpr
public static boolean acceptWithoutRecursion(IASTBinaryExpression bexpr, ASTVisitor action) {
N stack= new N(bexpr);
while(stack != null) {
while (stack != null) {
IASTBinaryExpression expr= stack.fExpression;
if (stack.fState == 0) {
if (action.shouldVisitExpressions) {
@ -196,7 +194,8 @@ public class CPPASTBinaryExpression extends ASTNode implements ICPPASTBinaryExpr
if (stack.fState == 1) {
if (action.shouldVisitImplicitNames) {
for (IASTImplicitName name : ((IASTImplicitNameOwner) expr).getImplicitNames()) {
if(!name.accept(action)) return false;
if (!name.accept(action))
return false;
}
}
stack.fState= 2;
@ -300,7 +299,6 @@ public class CPPASTBinaryExpression extends ASTNode implements ICPPASTBinaryExpr
return type;
}
switch (op) {
case IASTBinaryExpression.op_lessEqual:
case IASTBinaryExpression.op_lessThan:
@ -311,11 +309,13 @@ public class CPPASTBinaryExpression extends ASTNode implements ICPPASTBinaryExpr
case IASTBinaryExpression.op_equals:
case IASTBinaryExpression.op_notequals:
return new CPPBasicType(Kind.eBoolean, 0, this);
case IASTBinaryExpression.op_plus:
if (type2 instanceof IPointerType) {
return type2;
}
break;
case IASTBinaryExpression.op_minus:
if (type2 instanceof IPointerType) {
if (type1 instanceof IPointerType) {
@ -324,6 +324,7 @@ public class CPPASTBinaryExpression extends ASTNode implements ICPPASTBinaryExpr
return type1;
}
break;
case ICPPASTBinaryExpression.op_pmarrow:
case ICPPASTBinaryExpression.op_pmdot:
if (type2 instanceof ICPPPointerToMemberType) {
@ -333,5 +334,4 @@ public class CPPASTBinaryExpression extends ASTNode implements ICPPASTBinaryExpr
}
return type1;
}
}

View file

@ -94,11 +94,10 @@ public class CPPASTUnaryExpression extends ASTNode implements ICPPASTUnaryExpres
return op == op_postFixDecr || op == op_postFixIncr;
}
public IASTImplicitName[] getImplicitNames() {
if(implicitNames == null) {
if (implicitNames == null) {
ICPPFunction overload = getOverload();
if(overload == null)
if (overload == null)
return implicitNames = IASTImplicitName.EMPTY_NAME_ARRAY;
CPPASTImplicitName operatorName = new CPPASTImplicitName(overload.getNameCharArray(), this);
@ -111,7 +110,6 @@ public class CPPASTUnaryExpression extends ASTNode implements ICPPASTUnaryExpres
return implicitNames;
}
@Override
public boolean accept(ASTVisitor action) {
if (action.shouldVisitExpressions) {
@ -124,17 +122,19 @@ public class CPPASTUnaryExpression extends ASTNode implements ICPPASTUnaryExpres
final boolean isPostfix = isPostfixOperator();
if(!isPostfix && action.shouldVisitImplicitNames) {
for(IASTImplicitName name : getImplicitNames()) {
if(!name.accept(action)) return false;
if (!isPostfix && action.shouldVisitImplicitNames) {
for (IASTImplicitName name : getImplicitNames()) {
if (!name.accept(action))
return false;
}
}
if (operand != null && !operand.accept(action)) return false;
if (operand != null && !operand.accept(action))
return false;
if(isPostfix && action.shouldVisitImplicitNames) {
for(IASTImplicitName name : getImplicitNames()) {
if(!name.accept(action)) return false;
if (isPostfix && action.shouldVisitImplicitNames) {
for (IASTImplicitName name : getImplicitNames()) {
if (!name.accept(action)) return false;
}
}
@ -142,7 +142,7 @@ public class CPPASTUnaryExpression extends ASTNode implements ICPPASTUnaryExpres
switch (action.leave(this)) {
case ASTVisitor.PROCESS_ABORT: return false;
case ASTVisitor.PROCESS_SKIP: return true;
default : break;
default: break;
}
}
return true;
@ -156,20 +156,17 @@ public class CPPASTUnaryExpression extends ASTNode implements ICPPASTUnaryExpres
}
}
public ICPPFunction getOverload() {
if (overload != UNINITIALIZED_FUNCTION)
return overload;
overload = CPPSemantics.findOverloadedOperator(this);
if(overload != null && op == op_amper && computePointerToMemberType() instanceof CPPPointerToMemberType)
if (overload != null && op == op_amper && computePointerToMemberType() instanceof CPPPointerToMemberType)
overload = null;
return overload;
}
private IType computePointerToMemberType() {
IASTNode child= operand;
boolean inParenthesis= false;
@ -200,7 +197,6 @@ public class CPPASTUnaryExpression extends ASTNode implements ICPPASTUnaryExpres
return null;
}
public IType getExpressionType() {
final int op= getOperator();
switch (op) {
@ -215,11 +211,11 @@ public class CPPASTUnaryExpression extends ASTNode implements ICPPASTUnaryExpres
if (op == op_amper) { // check for pointer to member
IType ptm = computePointerToMemberType();
if(ptm != null)
if (ptm != null)
return ptm;
IType operator = findOperatorReturnType();
if(operator != null)
if (operator != null)
return operator;
IType type= operand.getExpressionType();
@ -227,7 +223,6 @@ public class CPPASTUnaryExpression extends ASTNode implements ICPPASTUnaryExpres
return new CPPPointerType(type);
}
if (op == op_star) {
IType type= operand.getExpressionType();
type = SemanticUtil.getNestedType(type, TDEF | REF | CVTYPE);
@ -235,7 +230,7 @@ public class CPPASTUnaryExpression extends ASTNode implements ICPPASTUnaryExpres
return type;
}
IType operator = findOperatorReturnType();
if(operator != null) {
if (operator != null) {
return operator;
} else if (type instanceof IPointerType || type instanceof IArrayType) {
return ((ITypeContainer) type).getType();
@ -245,11 +240,10 @@ public class CPPASTUnaryExpression extends ASTNode implements ICPPASTUnaryExpres
return new ProblemBinding(this, IProblemBinding.SEMANTIC_INVALID_TYPE, this.getRawSignature().toCharArray());
}
IType origType= operand.getExpressionType();
IType type = SemanticUtil.getUltimateTypeUptoPointers(origType);
IType operator = findOperatorReturnType();
if(operator != null) {
if (operator != null) {
return operator;
}
@ -295,7 +289,7 @@ public class CPPASTUnaryExpression extends ASTNode implements ICPPASTUnaryExpres
private IType findOperatorReturnType() {
ICPPFunction operatorFunction = getOverload();
if(operatorFunction != null) {
if (operatorFunction != null) {
try {
return operatorFunction.getType().getReturnType();
} catch (DOMException e) {
@ -304,6 +298,4 @@ public class CPPASTUnaryExpression extends ASTNode implements ICPPASTUnaryExpres
}
return null;
}
}