Skip to content

Commit 80e654c

Browse files
committed
Rename Classes
1 parent 0fafd24 commit 80e654c

4 files changed

Lines changed: 13 additions & 13 deletions

File tree

liquidjava-verifier/src/main/java/liquidjava/rj_language/opt/ConstantFolding.java renamed to liquidjava-verifier/src/main/java/liquidjava/rj_language/opt/ExpressionFolding.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,11 @@
1212
import liquidjava.rj_language.opt.derivation_node.UnaryDerivationNode;
1313
import liquidjava.rj_language.opt.derivation_node.ValDerivationNode;
1414

15-
public class ConstantFolding {
15+
public class ExpressionFolding {
1616

1717
/**
18-
* Performs constant folding on a derivation node by evaluating nodes with constant values. Returns a new derivation
19-
* node representing the folding steps taken
18+
* Performs expression folding on a derivation node by evaluating nodes when possible. Returns a new derivation node
19+
* representing the folding steps taken
2020
*/
2121
public static ValDerivationNode fold(ValDerivationNode node) {
2222
Expression exp = node.getValue();
@@ -35,7 +35,7 @@ public static ValDerivationNode fold(ValDerivationNode node) {
3535
}
3636

3737
/**
38-
* Folds a binary expression node if both children are constant values (e.g. 1 + 2 => 3)
38+
* Folds a binary expression node (e.g. 1 + 2 => 3)
3939
*/
4040
private static ValDerivationNode foldBinary(ValDerivationNode node) {
4141
BinaryExpression binExp = (BinaryExpression) node.getValue();
@@ -148,7 +148,7 @@ else if (left instanceof LiteralBoolean && right instanceof LiteralBoolean) {
148148
}
149149

150150
/**
151-
* Folds a unary expression node if the child (operand) is a constant value (e.g. !true => false)
151+
* Folds a unary expression node (e.g. !true => false)
152152
*/
153153
private static ValDerivationNode foldUnary(ValDerivationNode node) {
154154
UnaryExpression unaryExp = (UnaryExpression) node.getValue();

liquidjava-verifier/src/main/java/liquidjava/rj_language/opt/ExpressionSimplifier.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ public static ValDerivationNode simplify(Expression exp) {
2727
*/
2828
private static ValDerivationNode simplifyToFixedPoint(ValDerivationNode current, Expression prevExp) {
2929
// apply propagation and folding
30-
ValDerivationNode prop = ConstantPropagation.propagate(prevExp, current);
31-
ValDerivationNode fold = ConstantFolding.fold(prop);
30+
ValDerivationNode prop = VariablePropagation.propagate(prevExp, current);
31+
ValDerivationNode fold = ExpressionFolding.fold(prop);
3232
ValDerivationNode simplified = simplifyValDerivationNode(fold);
3333
Expression currExp = simplified.getValue();
3434

liquidjava-verifier/src/main/java/liquidjava/rj_language/opt/ConstantPropagation.java renamed to liquidjava-verifier/src/main/java/liquidjava/rj_language/opt/VariablePropagation.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,12 @@
1313
import java.util.HashMap;
1414
import java.util.Map;
1515

16-
public class ConstantPropagation {
16+
public class VariablePropagation {
1717

1818
/**
19-
* Performs constant propagation on an expression, by substituting variables with their constant values. Uses the
20-
* VariableResolver to extract variable equalities from the expression first. Returns a derivation node representing
21-
* the propagation steps taken.
19+
* Performs constant and variable propagation on an expression, by substituting variables. Uses the VariableResolver
20+
* to extract variable equalities from the expression first. Returns a derivation node representing the propagation
21+
* steps taken.
2222
*/
2323
public static ValDerivationNode propagate(Expression exp, ValDerivationNode previousOrigin) {
2424
Map<String, Expression> substitutions = VariableResolver.resolve(exp);
@@ -32,7 +32,7 @@ public static ValDerivationNode propagate(Expression exp, ValDerivationNode prev
3232
}
3333

3434
/**
35-
* Recursively performs constant propagation on an expression (e.g. x + y && x == 1 && y == 2 => 1 + 2)
35+
* Recursively performs propagation on an expression (e.g. x + y && x == 1 && y == 2 => 1 + 2)
3636
*/
3737
private static ValDerivationNode propagateRecursive(Expression exp, Map<String, Expression> subs,
3838
Map<String, DerivationNode> varOrigins) {

liquidjava-verifier/src/test/java/liquidjava/api/tests/TestExamples.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
import java.util.stream.Stream;
1212
import liquidjava.api.CommandLineLauncher;
1313
import liquidjava.diagnostics.Diagnostics;
14+
import liquidjava.diagnostics.errors.*;
1415

15-
import liquidjava.diagnostics.errors.LJError;
1616
import org.junit.Test;
1717
import org.junit.jupiter.params.ParameterizedTest;
1818
import org.junit.jupiter.params.provider.MethodSource;

0 commit comments

Comments
 (0)