mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-22 06:02:11 +02:00
Rename instantiateCommaSeparatedSubexpressions() to instantiateExpressions()
instantiateCommaSeparatedSubexpressions() is a clunky name, and in C++17 (with fold expressions) the function will no longer be limited to comma- separated expressions. Change-Id: Id242f58bb291e79cefe2b28db12dbde4bafba4ed
This commit is contained in:
parent
499cdbf01d
commit
f5322a32d3
4 changed files with 12 additions and 12 deletions
|
@ -108,12 +108,12 @@ public abstract class CPPDependentEvaluation extends CPPEvaluation {
|
|||
* This code is similar to CPPTemplates.instantiateArguments(), but applies to evaluations
|
||||
* rather than template arguments.
|
||||
*/
|
||||
protected static ICPPEvaluation[] instantiateCommaSeparatedSubexpressions(ICPPEvaluation[] subexpressions,
|
||||
InstantiationContext context, int maxDepth) {
|
||||
ICPPEvaluation[] result = subexpressions;
|
||||
protected static ICPPEvaluation[] instantiateExpressions(ICPPEvaluation[] expressions, InstantiationContext context,
|
||||
int maxDepth) {
|
||||
ICPPEvaluation[] result = expressions;
|
||||
int resultShift = 0;
|
||||
for (int i = 0; i < subexpressions.length; i++) {
|
||||
ICPPEvaluation origEval = subexpressions[i];
|
||||
for (int i = 0; i < expressions.length; i++) {
|
||||
ICPPEvaluation origEval = expressions[i];
|
||||
ICPPEvaluation newEval;
|
||||
if (origEval instanceof EvalPackExpansion) {
|
||||
ICPPEvaluation pattern = ((EvalPackExpansion) origEval).getExpansionPattern();
|
||||
|
@ -129,7 +129,7 @@ public abstract class CPPDependentEvaluation extends CPPEvaluation {
|
|||
newEval = origEval.instantiate(context, maxDepth);
|
||||
} else {
|
||||
int shift = packSize - 1;
|
||||
ICPPEvaluation[] newResult = new ICPPEvaluation[subexpressions.length + resultShift + shift];
|
||||
ICPPEvaluation[] newResult = new ICPPEvaluation[expressions.length + resultShift + shift];
|
||||
System.arraycopy(result, 0, newResult, 0, i + resultShift);
|
||||
int oldPackOffset = context.getPackOffset();
|
||||
for (int j = 0; j < packSize; ++j) {
|
||||
|
@ -147,12 +147,12 @@ public abstract class CPPDependentEvaluation extends CPPEvaluation {
|
|||
newEval = origEval.instantiate(context, maxDepth);
|
||||
}
|
||||
|
||||
if (result != subexpressions) {
|
||||
if (result != expressions) {
|
||||
result[i + resultShift] = newEval;
|
||||
} else if (newEval != origEval) {
|
||||
assert resultShift == 0;
|
||||
result = new ICPPEvaluation[subexpressions.length];
|
||||
System.arraycopy(subexpressions, 0, result, 0, i);
|
||||
result = new ICPPEvaluation[expressions.length];
|
||||
System.arraycopy(expressions, 0, result, 0, i);
|
||||
result[i] = newEval;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -229,7 +229,7 @@ public final class EvalFunctionCall extends CPPDependentEvaluation {
|
|||
|
||||
@Override
|
||||
public ICPPEvaluation instantiate(InstantiationContext context, int maxDepth) {
|
||||
ICPPEvaluation[] args = instantiateCommaSeparatedSubexpressions(fArguments, context, maxDepth);
|
||||
ICPPEvaluation[] args = instantiateExpressions(fArguments, context, maxDepth);
|
||||
if (args == fArguments)
|
||||
return this;
|
||||
|
||||
|
|
|
@ -138,7 +138,7 @@ public class EvalInitList extends CPPDependentEvaluation {
|
|||
|
||||
@Override
|
||||
public ICPPEvaluation instantiate(InstantiationContext context, int maxDepth) {
|
||||
ICPPEvaluation[] clauses = instantiateCommaSeparatedSubexpressions(fClauses, context, maxDepth);
|
||||
ICPPEvaluation[] clauses = instantiateExpressions(fClauses, context, maxDepth);
|
||||
if (clauses == fClauses)
|
||||
return this;
|
||||
return new EvalInitList(clauses, getTemplateDefinition());
|
||||
|
|
|
@ -379,7 +379,7 @@ public class EvalTypeId extends CPPDependentEvaluation {
|
|||
|
||||
@Override
|
||||
public ICPPEvaluation instantiate(InstantiationContext context, int maxDepth) {
|
||||
ICPPEvaluation[] args = instantiateCommaSeparatedSubexpressions(fArguments, context, maxDepth);
|
||||
ICPPEvaluation[] args = instantiateExpressions(fArguments, context, maxDepth);
|
||||
IType type = CPPTemplates.instantiateType(fInputType, context);
|
||||
if (args == fArguments && type == fInputType)
|
||||
return this;
|
||||
|
|
Loading…
Add table
Reference in a new issue