mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-22 22:22:11 +02:00
Rename EvalParameterPack to EvalPackExpansion
EvalParameterPack was a misleading name. This evaluation represents a pack expansion expression; the expansion pattern has to contain one or more parameter packs, but they can be nested inside an arbitrarily complex expression. Change-Id: I16d09c349fc6c2b1086e37fd6743f613f02bf5eb
This commit is contained in:
parent
9792a72dae
commit
e05566a452
8 changed files with 23 additions and 23 deletions
|
@ -69,7 +69,7 @@ public interface ITypeMarshalBuffer {
|
|||
EVAL_ID = 0x0A,
|
||||
EVAL_INIT_LIST = 0x0B,
|
||||
EVAL_MEMBER_ACCESS = 0x0C,
|
||||
EVAL_PARAMETER_PACK = 0x0D,
|
||||
EVAL_PACK_EXPANSION = 0x0D,
|
||||
EVAL_TYPE_ID = 0x0E,
|
||||
EVAL_UNARY = 0x0F,
|
||||
EVAL_UNARY_TYPE_ID = 0x10,
|
||||
|
|
|
@ -22,7 +22,7 @@ import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTPackExpansionExpression;
|
|||
import org.eclipse.cdt.internal.core.dom.parser.ASTNode;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.IASTAmbiguityParent;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.CPPEvaluation;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalParameterPack;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalPackExpansion;
|
||||
|
||||
/**
|
||||
* Implementation of pack expansion expression.
|
||||
|
@ -65,7 +65,7 @@ public class CPPASTPackExpansionExpression extends ASTNode implements ICPPASTPac
|
|||
@Override
|
||||
public ICPPEvaluation getEvaluation() {
|
||||
if (fEvaluation == null) {
|
||||
fEvaluation = new EvalParameterPack(((ICPPASTExpression) fPattern).getEvaluation(), this);
|
||||
fEvaluation = new EvalPackExpansion(((ICPPASTExpression) fPattern).getEvaluation(), this);
|
||||
}
|
||||
return fEvaluation;
|
||||
}
|
||||
|
|
|
@ -19,7 +19,7 @@ import org.eclipse.cdt.core.dom.ast.cpp.ICPPParameterPackType;
|
|||
import org.eclipse.cdt.core.dom.ast.cpp.ICPPTemplateArgument;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.IntegralValue;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalFixed;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalParameterPack;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalPackExpansion;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalTypeId;
|
||||
import org.eclipse.core.runtime.Assert;
|
||||
|
||||
|
@ -96,8 +96,8 @@ public final class CPPTemplateNonTypeArgument implements ICPPTemplateArgument {
|
|||
IType t= ((ICPPParameterPackType) type).getType();
|
||||
if (t != null) {
|
||||
ICPPEvaluation evaluation;
|
||||
if (fEvaluation instanceof EvalParameterPack) {
|
||||
evaluation = ((EvalParameterPack) fEvaluation).getExpansionPattern();
|
||||
if (fEvaluation instanceof EvalPackExpansion) {
|
||||
evaluation = ((EvalPackExpansion) fEvaluation).getExpansionPattern();
|
||||
} else {
|
||||
evaluation = new EvalTypeId(t, fEvaluation.getTemplateDefinition(), false, false, fEvaluation);
|
||||
}
|
||||
|
|
|
@ -112,8 +112,8 @@ public abstract class CPPDependentEvaluation extends CPPEvaluation {
|
|||
for (int i = 0; i < subexpressions.length; i++) {
|
||||
ICPPEvaluation origEval = subexpressions[i];
|
||||
ICPPEvaluation newEval;
|
||||
if (origEval instanceof EvalParameterPack) {
|
||||
ICPPEvaluation pattern = ((EvalParameterPack) origEval).getExpansionPattern();
|
||||
if (origEval instanceof EvalPackExpansion) {
|
||||
ICPPEvaluation pattern = ((EvalPackExpansion) origEval).getExpansionPattern();
|
||||
if (pattern == null) {
|
||||
newEval = EvalFixed.INCOMPLETE;
|
||||
} else {
|
||||
|
|
|
@ -27,15 +27,15 @@ import org.eclipse.core.runtime.CoreException;
|
|||
/**
|
||||
* Evaluation for a pack expansion expression.
|
||||
*/
|
||||
public class EvalParameterPack extends CPPDependentEvaluation {
|
||||
public class EvalPackExpansion extends CPPDependentEvaluation {
|
||||
private ICPPEvaluation fExpansionPattern;
|
||||
private IType fType;
|
||||
|
||||
public EvalParameterPack(ICPPEvaluation expansionPattern, IASTNode pointOfDefinition) {
|
||||
public EvalPackExpansion(ICPPEvaluation expansionPattern, IASTNode pointOfDefinition) {
|
||||
this(expansionPattern, findEnclosingTemplate(pointOfDefinition));
|
||||
}
|
||||
|
||||
public EvalParameterPack(ICPPEvaluation expansionPattern, IBinding templateDefinition) {
|
||||
public EvalPackExpansion(ICPPEvaluation expansionPattern, IBinding templateDefinition) {
|
||||
super(templateDefinition);
|
||||
fExpansionPattern = expansionPattern;
|
||||
}
|
||||
|
@ -97,7 +97,7 @@ public class EvalParameterPack extends CPPDependentEvaluation {
|
|||
ICPPEvaluation expansionPattern = fExpansionPattern.instantiate(context, maxDepth);
|
||||
if (expansionPattern == fExpansionPattern)
|
||||
return this;
|
||||
return new EvalParameterPack(expansionPattern, getTemplateDefinition());
|
||||
return new EvalPackExpansion(expansionPattern, getTemplateDefinition());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -107,7 +107,7 @@ public class EvalParameterPack extends CPPDependentEvaluation {
|
|||
return this;
|
||||
}
|
||||
|
||||
EvalParameterPack evalParamPack = new EvalParameterPack(expansionPattern, getTemplateDefinition());
|
||||
EvalPackExpansion evalParamPack = new EvalPackExpansion(expansionPattern, getTemplateDefinition());
|
||||
return evalParamPack;
|
||||
}
|
||||
|
||||
|
@ -123,7 +123,7 @@ public class EvalParameterPack extends CPPDependentEvaluation {
|
|||
|
||||
@Override
|
||||
public void marshal(ITypeMarshalBuffer buffer, boolean includeValue) throws CoreException {
|
||||
buffer.putShort(ITypeMarshalBuffer.EVAL_PARAMETER_PACK);
|
||||
buffer.putShort(ITypeMarshalBuffer.EVAL_PACK_EXPANSION);
|
||||
buffer.marshalEvaluation(fExpansionPattern, includeValue);
|
||||
marshalTemplateDefinition(buffer);
|
||||
}
|
||||
|
@ -131,6 +131,6 @@ public class EvalParameterPack extends CPPDependentEvaluation {
|
|||
public static ICPPEvaluation unmarshal(short firstBytes, ITypeMarshalBuffer buffer) throws CoreException {
|
||||
ICPPEvaluation expansionPattern = buffer.unmarshalEvaluation();
|
||||
IBinding templateDefinition = buffer.unmarshalBinding();
|
||||
return new EvalParameterPack(expansionPattern, templateDefinition);
|
||||
return new EvalPackExpansion(expansionPattern, templateDefinition);
|
||||
}
|
||||
}
|
|
@ -585,7 +585,7 @@ public class LookupData extends ScopeLookupData {
|
|||
int count= 0;
|
||||
if (functionArgs != null) {
|
||||
for (ICPPEvaluation arg : functionArgs) {
|
||||
if (arg instanceof EvalParameterPack)
|
||||
if (arg instanceof EvalPackExpansion)
|
||||
count++;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -99,7 +99,7 @@ import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalFunctionSet;
|
|||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalID;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalInitList;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalMemberAccess;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalParameterPack;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalPackExpansion;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalTypeId;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalUnary;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalUnaryTypeID;
|
||||
|
@ -441,12 +441,12 @@ public class CPPCompositesFactory extends AbstractCompositeFactory {
|
|||
compositeTemplateDefinition);
|
||||
return e;
|
||||
}
|
||||
if (eval instanceof EvalParameterPack) {
|
||||
EvalParameterPack e = (EvalParameterPack) eval;
|
||||
if (eval instanceof EvalPackExpansion) {
|
||||
EvalPackExpansion e = (EvalPackExpansion) eval;
|
||||
ICPPEvaluation a = e.getExpansionPattern();
|
||||
ICPPEvaluation a2 = getCompositeEvaluation(a);
|
||||
if (a != a2 || templateDefinition != compositeTemplateDefinition)
|
||||
e = new EvalParameterPack(a2, compositeTemplateDefinition);
|
||||
e = new EvalPackExpansion(a2, compositeTemplateDefinition);
|
||||
return e;
|
||||
}
|
||||
if (eval instanceof EvalTypeId) {
|
||||
|
|
|
@ -131,7 +131,7 @@ import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalFunctionSet;
|
|||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalID;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalInitList;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalMemberAccess;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalParameterPack;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalPackExpansion;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalPointer;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalReference;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.cpp.semantics.EvalTypeId;
|
||||
|
@ -1682,8 +1682,8 @@ class PDOMCPPLinkage extends PDOMLinkage implements IIndexCPPBindingConstants {
|
|||
return EvalInitList.unmarshal(firstBytes, buffer);
|
||||
case ITypeMarshalBuffer.EVAL_MEMBER_ACCESS:
|
||||
return EvalMemberAccess.unmarshal(firstBytes, buffer);
|
||||
case ITypeMarshalBuffer.EVAL_PARAMETER_PACK:
|
||||
return EvalParameterPack.unmarshal(firstBytes, buffer);
|
||||
case ITypeMarshalBuffer.EVAL_PACK_EXPANSION:
|
||||
return EvalPackExpansion.unmarshal(firstBytes, buffer);
|
||||
case ITypeMarshalBuffer.EVAL_TYPE_ID:
|
||||
return EvalTypeId.unmarshal(firstBytes, buffer);
|
||||
case ITypeMarshalBuffer.EVAL_UNARY:
|
||||
|
|
Loading…
Add table
Reference in a new issue