Skip to content

Commit a40735f

Browse files
committed
Use Strings in Error Classes
`CtElement` will also need to be replaced at some point
1 parent 8bfc82b commit a40735f

File tree

3 files changed

+20
-16
lines changed

3 files changed

+20
-16
lines changed
Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package liquidjava.diagnostics.errors;
22

3-
import liquidjava.rj_language.Predicate;
43
import spoon.reflect.declaration.CtElement;
54

65
/**
@@ -10,21 +9,21 @@
109
*/
1110
public class GhostInvocationError extends LJError {
1211

13-
private Predicate expected;
12+
private String expected;
1413

15-
public GhostInvocationError(CtElement element, Predicate expected) {
14+
public GhostInvocationError(CtElement element, String expected) {
1615
super("Ghost Invocation Error", "Invalid types or number of arguments in ghost invocation", element);
1716
this.expected = expected;
1817
}
1918

20-
public Predicate getExpected() {
19+
public String getExpected() {
2120
return expected;
2221
}
2322

2423
@Override
2524
public String toString() {
2625
StringBuilder sb = new StringBuilder();
27-
sb.append("Expected: ").append(expected.toString()).append("\n");
26+
sb.append("Expected: ").append(expected).append("\n");
2827
return super.toString(sb.toString());
2928
}
3029
}

liquidjava-verifier/src/main/java/liquidjava/diagnostics/errors/RefinementError.java

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package liquidjava.diagnostics.errors;
22

3-
import liquidjava.rj_language.Predicate;
43
import liquidjava.rj_language.opt.derivation_node.ValDerivationNode;
54
import liquidjava.utils.Utils;
65
import spoon.reflect.declaration.CtElement;
@@ -12,19 +11,27 @@
1211
*/
1312
public class RefinementError extends LJError {
1413

15-
private Predicate expected;
14+
private String expected;
1615
private ValDerivationNode found;
1716

18-
public RefinementError(CtElement element, Predicate expected, ValDerivationNode found) {
17+
public RefinementError(CtElement element, String expected, ValDerivationNode found) {
1918
super("Refinement Error", String.format("%s is not a subtype of %s", found.getValue(), expected), element);
2019
this.expected = expected;
2120
this.found = found;
2221
}
2322

23+
public String getExpected() {
24+
return expected;
25+
}
26+
27+
public ValDerivationNode getFound() {
28+
return found;
29+
}
30+
2431
@Override
2532
public String toString() {
2633
StringBuilder sb = new StringBuilder();
27-
sb.append("Expected: ").append(Utils.stripParens(expected.toString())).append("\n");
34+
sb.append("Expected: ").append(Utils.stripParens(expected)).append("\n");
2835
sb.append("Found: ").append(found.getValue());
2936
return super.toString(sb.toString());
3037
}
Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package liquidjava.diagnostics.errors;
22

3-
import liquidjava.rj_language.Predicate;
43
import spoon.reflect.declaration.CtElement;
54

65
/**
@@ -10,19 +9,19 @@
109
*/
1110
public class StateConflictError extends LJError {
1211

13-
private Predicate predicate;
12+
private String state;
1413
private String className;
1514

16-
public StateConflictError(CtElement element, Predicate predicate, String className) {
15+
public StateConflictError(CtElement element, String state, String className) {
1716
super("State Conflict Error",
1817
"Found multiple disjoint states in state transition — State transition can only go to one state of each state set",
1918
element);
20-
this.predicate = predicate;
19+
this.state = state;
2120
this.className = className;
2221
}
2322

24-
public Predicate getPredicate() {
25-
return predicate;
23+
public String getState() {
24+
return state;
2625
}
2726

2827
public String getClassName() {
@@ -33,7 +32,6 @@ public String getClassName() {
3332
public String toString() {
3433
StringBuilder sb = new StringBuilder();
3534
sb.append("Class: ").append(className).append("\n");
36-
sb.append("Predicate: ").append(predicate.toString());
3735
return super.toString(sb.toString());
3836
}
3937
}

0 commit comments

Comments
 (0)