Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTExpression.java')
-rw-r--r--core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTExpression.java260
1 files changed, 0 insertions, 260 deletions
diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTExpression.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTExpression.java
deleted file mode 100644
index 7f2c2f1075b..00000000000
--- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/ast/complete/ASTExpression.java
+++ /dev/null
@@ -1,260 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2002,2003 Rational Software Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v0.5
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v05.html
- *
- * Contributors:
- * IBM Rational Software - Initial API and implementation
-***********************************************************************/
-package org.eclipse.cdt.internal.core.parser.ast.complete;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.cdt.core.parser.ISourceElementRequestor;
-import org.eclipse.cdt.core.parser.ITokenDuple;
-import org.eclipse.cdt.core.parser.ast.ASTNotImplementedException;
-import org.eclipse.cdt.core.parser.ast.ExpressionEvaluationException;
-import org.eclipse.cdt.core.parser.ast.IASTExpression;
-import org.eclipse.cdt.core.parser.ast.IASTReference;
-import org.eclipse.cdt.core.parser.ast.IASTTypeId;
-
-/**
- * @author jcamelon
- *
- */
-public class ASTExpression implements IASTExpression
-{
- private final Kind kind;
- private final IASTExpression lhs;
- private final IASTExpression rhs;
- private final IASTExpression thirdExpression;
- private final String literal, idExpression;
- private ITokenDuple idExpressionDuple;
- private final IASTTypeId typeId;
- private final IASTNewExpressionDescriptor newDescriptor;
- private final List references;
- private ExpressionResult resultType;
- /**
- *
- */
- public ASTExpression( Kind kind, IASTExpression lhs, IASTExpression rhs,
- IASTExpression thirdExpression, IASTTypeId typeId, ITokenDuple idExpression, String literal, IASTNewExpressionDescriptor newDescriptor, List references )
- {
- this.kind = kind;
- this.lhs = lhs;
- this.rhs = rhs;
- this.thirdExpression = thirdExpression;
- this.literal = literal;
- this.typeId = typeId;
- this.newDescriptor = newDescriptor;
- this.references = references;
- this.idExpressionDuple = idExpression;
- this.idExpression = idExpressionDuple == null ? "" : idExpressionDuple.toString();
- }
- /* (non-Javadoc)
- * @see org.eclipse.cdt.core.parser.ast.IASTExpression#getExpressionKind()
- */
- public Kind getExpressionKind()
- {
- return kind;
- }
- /* (non-Javadoc)
- * @see org.eclipse.cdt.core.parser.ast.IASTExpression#getLHSExpression()
- */
- public IASTExpression getLHSExpression()
- {
- return lhs;
- }
- /* (non-Javadoc)
- * @see org.eclipse.cdt.core.parser.ast.IASTExpression#getRHSExpression()
- */
- public IASTExpression getRHSExpression()
- {
- return rhs;
- }
- /* (non-Javadoc)
- * @see org.eclipse.cdt.core.parser.ast.IASTExpression#getThirdExpression()
- */
- public IASTExpression getThirdExpression()
- {
- return thirdExpression;
- }
- /* (non-Javadoc)
- * @see org.eclipse.cdt.core.parser.ast.IASTExpression#getLiteralString()
- */
- public String getLiteralString()
- {
- return literal;
- }
- /* (non-Javadoc)
- * @see org.eclipse.cdt.core.parser.ast.IASTExpression#getTypeId()
- */
- public IASTTypeId getTypeId()
- {
- return typeId;
- }
- /*
- * returns the type id token
- */
- public ITokenDuple getTypeIdTokenDuple()
- {
- if( typeId == null ) return null;
- return ((ASTTypeId)typeId).getTokenDuple();
- }
- /* (non-Javadoc)
- * @see org.eclipse.cdt.core.parser.ast.IASTExpression#getNewExpressionDescriptor()
- */
- public IASTNewExpressionDescriptor getNewExpressionDescriptor()
- {
- return newDescriptor;
- }
- /* (non-Javadoc)
- * @see org.eclipse.cdt.core.parser.ast.IASTExpression#evaluateExpression()
- */
- public int evaluateExpression() throws ExpressionEvaluationException
- {
- throw new ExpressionEvaluationException();
- }
-
- public List getReferences()
- {
- return references;
- }
- /* (non-Javadoc)
- * @see org.eclipse.cdt.core.parser.ISourceElementCallbackDelegate#acceptElement(org.eclipse.cdt.core.parser.ISourceElementRequestor)
- */
- public void acceptElement(ISourceElementRequestor requestor)
- {
- try
- {
- reconcileReferences();
- }
- catch (ASTNotImplementedException e)
- {
- // will not get thrown
- }
- if( ! references.isEmpty() )
- new ASTReferenceStore( references ).processReferences(requestor);
-
- if( typeId != null )
- typeId.acceptElement(requestor);
-
- if( lhs != null )
- lhs.acceptElement(requestor);
-
- if( rhs!= null )
- rhs.acceptElement(requestor);
-
- if( thirdExpression != null )
- thirdExpression.acceptElement(requestor);
-
- if( newDescriptor != null )
- newDescriptor.acceptElement(requestor);
-
- try
- {
- purgeReferences();
- }
- catch (ASTNotImplementedException e)
- {
- // will not get thrown
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.core.parser.ISourceElementCallbackDelegate#enterScope(org.eclipse.cdt.core.parser.ISourceElementRequestor)
- */
- public void enterScope(ISourceElementRequestor requestor)
- {
- }
- /* (non-Javadoc)
- * @see org.eclipse.cdt.core.parser.ISourceElementCallbackDelegate#exitScope(org.eclipse.cdt.core.parser.ISourceElementRequestor)
- */
- public void exitScope(ISourceElementRequestor requestor)
- {
- }
-
- /**
- * @return
- */
- public ExpressionResult getResultType() {
- return resultType;
- }
-
- /**
- * @param i
- */
- public void setResultType(ExpressionResult i) {
- resultType = i;
- }
- /* (non-Javadoc)
- * @see org.eclipse.cdt.core.parser.ast.IASTExpression#getIdExpression()
- */
- public String getIdExpression()
- {
- return idExpression;
- }
- /**
- * @return
- */
- public ITokenDuple getIdExpressionTokenDuple()
- {
- return idExpressionDuple;
- }
- /* (non-Javadoc)
- * @see org.eclipse.cdt.core.parser.ast.IASTExpression#reconcileReferences()
- */
- public void reconcileReferences() throws ASTNotImplementedException
- {
- if( lhs != null )
- lhs.reconcileReferences();
- if( rhs != null )
- rhs.reconcileReferences();
- if( thirdExpression != null )
- thirdExpression.reconcileReferences();
-
- reconcileSubExpression((ASTExpression)lhs);
- reconcileSubExpression((ASTExpression)rhs);
- reconcileSubExpression((ASTExpression)thirdExpression);
- }
- protected void reconcileSubExpression(ASTExpression subExpression)
- {
- if( subExpression != null && subExpression.getReferences() != null )
- {
- Iterator subExp = subExpression.getReferences().iterator();
- while( subExp.hasNext() )
- {
- IASTReference aReference = (IASTReference)subExp.next();
- if( aReference != null && references.contains( aReference ) )
- subExp.remove();
- }
- }
- }
- /* (non-Javadoc)
- * @see org.eclipse.cdt.core.parser.ast.IASTExpression#purgeReferences()
- */
- public void purgeReferences() throws ASTNotImplementedException
- {
- if( lhs != null )
- lhs.purgeReferences();
- if( rhs != null )
- rhs.purgeReferences();
- if( thirdExpression != null )
- thirdExpression.purgeReferences();
-
- purgeSubExpression((ASTExpression)lhs);
- purgeSubExpression((ASTExpression)rhs);
- purgeSubExpression((ASTExpression)thirdExpression);
- }
- protected void purgeSubExpression(ASTExpression subExpression)
- {
- if( subExpression != null && subExpression.getReferences() != null )
- {
- subExpression.getReferences().clear();
- }
- }
-
-}

Back to the top