Skip to content

Commit 170d60f

Browse files
committed
make Operators to enum
1 parent e2229a9 commit 170d60f

98 files changed

Lines changed: 1037 additions & 6387 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

key.core.infflow/src/main/java/de/uka/ilkd/key/informationflow/po/snippet/BasicLoopExecutionSnippet.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
import de.uka.ilkd.key.java.ast.Statement;
1010
import de.uka.ilkd.key.java.ast.StatementBlock;
1111
import de.uka.ilkd.key.java.ast.expression.Assignment;
12-
import de.uka.ilkd.key.java.ast.expression.operator.CopyAssignment;
1312
import de.uka.ilkd.key.java.ast.reference.ExecutionContext;
1413
import de.uka.ilkd.key.java.ast.statement.MethodFrame;
1514
import de.uka.ilkd.key.logic.JTerm;
@@ -23,6 +22,8 @@
2322
import org.key_project.util.collection.ImmutableSLList;
2423
import org.key_project.util.collection.Pair;
2524

25+
import static de.uka.ilkd.key.java.ast.expression.Assignment.AssignmentKind.Copy;
26+
2627
public class BasicLoopExecutionSnippet extends ReplaceAndRegisterMethod implements FactoryMethod {
2728

2829
@Override
@@ -102,8 +103,9 @@ private Pair<JavaBlock, JavaBlock> buildJavaBlock(BasicSnippetData d) {
102103
LoopSpecification inv = (LoopSpecification) d.get(BasicSnippetData.Key.LOOP_INVARIANT);
103104
StatementBlock sb = (StatementBlock) inv.getLoop().getBody();
104105

105-
final Assignment guardVarDecl = new CopyAssignment((LocationVariable) d.origVars.guard.op(),
106-
inv.getLoop().getGuardExpression());
106+
final Assignment guardVarDecl =
107+
new Assignment(Copy, (LocationVariable) d.origVars.guard.op(),
108+
inv.getLoop().getGuardExpression());
107109
final Statement guardVarMethodFrame = context == null ? guardVarDecl
108110
: new MethodFrame(null, context, new StatementBlock(guardVarDecl));
109111

key.core.infflow/src/main/java/de/uka/ilkd/key/informationflow/po/snippet/BasicSymbolicExecutionSnippet.java

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@
1212
import de.uka.ilkd.key.java.ast.declaration.Modifier;
1313
import de.uka.ilkd.key.java.ast.declaration.ParameterDeclaration;
1414
import de.uka.ilkd.key.java.ast.declaration.VariableSpecification;
15+
import de.uka.ilkd.key.java.ast.expression.Assignment;
1516
import de.uka.ilkd.key.java.ast.expression.Expression;
1617
import de.uka.ilkd.key.java.ast.expression.literal.NullLiteral;
17-
import de.uka.ilkd.key.java.ast.expression.operator.CopyAssignment;
1818
import de.uka.ilkd.key.java.ast.expression.operator.New;
1919
import de.uka.ilkd.key.java.ast.reference.TypeRef;
2020
import de.uka.ilkd.key.java.ast.reference.TypeReference;
@@ -124,7 +124,7 @@ private JavaBlock buildJavaBlock(BasicSnippetData d, ImmutableList<JTerm> formal
124124
formalArray.toArray(new Expression[formalArray.size()]);
125125
KeYJavaType forClass = (KeYJavaType) d.get(BasicSnippetData.Key.FOR_CLASS);
126126
final New n = new New(formalArray2, new TypeRef(forClass), null);
127-
final CopyAssignment ca = new CopyAssignment(selfVar, n);
127+
final Assignment ca = new Assignment(selfVar, n);
128128
sb = new StatementBlock(ca);
129129
} else {
130130
final MethodBodyStatement call =
@@ -137,19 +137,17 @@ private JavaBlock buildJavaBlock(BasicSnippetData d, ImmutableList<JTerm> formal
137137
final TypeReference excTypeRef = javaInfo.createTypeReference(eType);
138138

139139
// create try statement
140-
final CopyAssignment nullStat = new CopyAssignment(exceptionVar, NullLiteral.NULL);
140+
final Assignment nullStat = new Assignment(exceptionVar, NullLiteral.NULL);
141141
final VariableSpecification eSpec = new VariableSpecification(eVar);
142142
final ParameterDeclaration excDecl =
143143
new ParameterDeclaration(new Modifier[0], excTypeRef, eSpec, false);
144-
final CopyAssignment assignStat = new CopyAssignment(exceptionVar, eVar);
144+
final Assignment assignStat = new Assignment(exceptionVar, eVar);
145145
final Catch catchStat = new Catch(excDecl, new StatementBlock(assignStat));
146146
final Try tryStat = new Try(sb, new Branch[] { catchStat });
147147
final StatementBlock sb2 = new StatementBlock(nullStat, tryStat);
148148

149149
// create java block
150-
JavaBlock result = JavaBlock.createJavaBlock(sb2);
151-
152-
return result;
150+
return JavaBlock.createJavaBlock(sb2);
153151
}
154152

155153

key.core.proof_references/src/main/java/de/uka/ilkd/key/proof_references/analyst/ProgramVariableReferencesAnalyst.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
import de.uka.ilkd.key.java.ast.ExpressionContainer;
1010
import de.uka.ilkd.key.java.ast.ProgramElement;
1111
import de.uka.ilkd.key.java.ast.SourceElement;
12-
import de.uka.ilkd.key.java.ast.expression.operator.CopyAssignment;
12+
import de.uka.ilkd.key.java.ast.expression.Assignment;
1313
import de.uka.ilkd.key.java.ast.reference.FieldReference;
1414
import de.uka.ilkd.key.java.ast.reference.ReferencePrefix;
1515
import de.uka.ilkd.key.java.ast.statement.If;
@@ -20,6 +20,8 @@
2020
import de.uka.ilkd.key.proof_references.reference.DefaultProofReference;
2121
import de.uka.ilkd.key.proof_references.reference.IProofReference;
2222

23+
import static de.uka.ilkd.key.java.ast.expression.Assignment.AssignmentKind.Copy;
24+
2325
/**
2426
* Extracts read and write access to fields ({@link IProgramVariable}) via assignments.
2527
*
@@ -33,9 +35,9 @@ public class ProgramVariableReferencesAnalyst implements IProofReferencesAnalyst
3335
public LinkedHashSet<IProofReference<?>> computeReferences(Node node, Services services) {
3436
if (node.getAppliedRuleApp() != null && node.getNodeInfo() != null) {
3537
SourceElement statement = node.getNodeInfo().getActiveStatement();
36-
if (statement instanceof CopyAssignment) {
38+
if (statement instanceof Assignment a && a.getKind() == Copy) {
3739
LinkedHashSet<IProofReference<?>> result = new LinkedHashSet<>();
38-
listReferences(node, (CopyAssignment) statement,
40+
listReferences(node, a,
3941
services.getJavaInfo().getArrayLength(), result, true);
4042
return result;
4143
} else if (statement instanceof If) {
@@ -66,7 +68,7 @@ protected void listReferences(Node node, ProgramElement pe, ProgramVariable arra
6668
if (pv.isMember()) {
6769
DefaultProofReference<ProgramVariable> reference =
6870
new DefaultProofReference<>(IProofReference.ACCESS, node,
69-
(ProgramVariable) pe);
71+
pv);
7072
ProofReferenceUtil.merge(toFill, reference);
7173
}
7274
} else if (pe instanceof FieldReference fr) {

key.core.symbolic_execution/src/main/java/de/uka/ilkd/key/symbolic_execution/model/impl/ExecutionOperationContract.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
import de.uka.ilkd.key.java.ast.ProgramElement;
1212
import de.uka.ilkd.key.java.ast.SourceElement;
1313
import de.uka.ilkd.key.java.ast.abstraction.KeYJavaType;
14-
import de.uka.ilkd.key.java.ast.expression.operator.CopyAssignment;
14+
import de.uka.ilkd.key.java.ast.expression.Assignment;
1515
import de.uka.ilkd.key.java.ast.statement.MethodFrame;
1616
import de.uka.ilkd.key.logic.JTerm;
1717
import de.uka.ilkd.key.logic.TermBuilder;
@@ -305,7 +305,7 @@ protected static LocationVariable extractResultVariableFromPostBranch(Node node,
305305
postModality = TermBuilder.goBelowUpdates(postModality);
306306
MethodFrame mf = JavaTools.getInnermostMethodFrame(postModality.javaBlock(), services);
307307
SourceElement firstElement = NodeInfo.computeActiveStatement(mf.getFirstElement());
308-
if (!(firstElement instanceof CopyAssignment assignment)) {
308+
if (!(firstElement instanceof Assignment assignment)) {
309309
return null;
310310
}
311311
ProgramElement rightChild = assignment.getChildAt(1);

key.core.symbolic_execution/src/main/java/de/uka/ilkd/key/symbolic_execution/slicing/AbstractBackwardSlicer.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@
1414
import de.uka.ilkd.key.java.ast.NonTerminalProgramElement;
1515
import de.uka.ilkd.key.java.ast.ProgramElement;
1616
import de.uka.ilkd.key.java.ast.SourceElement;
17+
import de.uka.ilkd.key.java.ast.expression.Assignment;
1718
import de.uka.ilkd.key.java.ast.expression.Expression;
18-
import de.uka.ilkd.key.java.ast.expression.operator.CopyAssignment;
1919
import de.uka.ilkd.key.java.ast.reference.ReferencePrefix;
2020
import de.uka.ilkd.key.java.ast.reference.ThisReference;
2121
import de.uka.ilkd.key.proof.Node;
@@ -64,9 +64,8 @@ public ImmutableArray<Node> doSlicing(Node seedNode, Location seedLocation,
6464
if (oldAliases != null) {
6565
try {
6666
// Update relevant locations if required
67-
if (activeStatement instanceof CopyAssignment) {
68-
SourceElement originalTarget =
69-
((CopyAssignment) activeStatement).getArguments().get(0);
67+
if (activeStatement instanceof Assignment a) {
68+
SourceElement originalTarget = a.getArguments().get(0);
7069
ReferencePrefix relevantTarget = toReferencePrefix(originalTarget);
7170
Location normalizedPrefix =
7271
normalizeAlias(services, relevantTarget, info);

key.core.symbolic_execution/src/main/java/de/uka/ilkd/key/symbolic_execution/slicing/ThinBackwardSlicer.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99

1010
import de.uka.ilkd.key.java.Services;
1111
import de.uka.ilkd.key.java.ast.SourceElement;
12+
import de.uka.ilkd.key.java.ast.expression.Assignment;
1213
import de.uka.ilkd.key.java.ast.expression.Expression;
13-
import de.uka.ilkd.key.java.ast.expression.operator.CopyAssignment;
1414
import de.uka.ilkd.key.java.ast.reference.ReferencePrefix;
1515
import de.uka.ilkd.key.java.ast.statement.MethodBodyStatement;
1616
import de.uka.ilkd.key.logic.JTerm;
@@ -38,7 +38,7 @@ protected boolean accept(Node node, Node previousChild, Services services,
3838
throws ProofInputException {
3939
try {
4040
boolean accept = false;
41-
if (activeStatement instanceof CopyAssignment copyAssignment) {
41+
if (activeStatement instanceof Assignment copyAssignment) {
4242
ImmutableArray<Expression> arguments = copyAssignment.getArguments();
4343
if (arguments.size() >= 1) {
4444
SourceElement originalTarget = arguments.get(0);

key.core/src/main/java/de/uka/ilkd/key/java/JavaService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -794,7 +794,7 @@ public JavaBlock readBlock(String block, JPContext context,
794794
}
795795
var f = JavaBlock
796796
.createJavaBlock((StatementBlock) getConverter(allowSchemaJava).process(sb));
797-
JavaLogger.print(block, f);
797+
// JavaLogger.print(block, f);
798798
return f;
799799
}
800800

0 commit comments

Comments
 (0)