1- package liquidjava .rj_language . ast ;
1+ package liquidjava .rj_language ;
22
33import java .util .ArrayList ;
44import java .util .List ;
55import java .util .Objects ;
66
7- import liquidjava .diagnostics .errors .LJError ;
8- import liquidjava .rj_language .visitors .ExpressionVisitor ;
97import spoon .reflect .reference .CtTypeReference ;
108
11- public class SimplifiedExpression extends Expression {
9+ public class SimplifiedPredicate extends Predicate {
1210
13- private final Expression origin ;
11+ private final Predicate simplified ;
12+ private final Predicate origin ;
1413 private final List <Binder > binders ;
1514
16- public SimplifiedExpression ( Expression simplified , Expression origin ) {
15+ public SimplifiedPredicate ( Predicate simplified , Predicate origin ) {
1716 this (simplified , origin , List .of ());
1817 }
1918
20- public SimplifiedExpression (Expression simplified , Expression origin , List <Binder > binders ) {
21- addChild (simplified );
19+ public SimplifiedPredicate (Predicate simplified , Predicate origin , List <Binder > binders ) {
20+ super (simplified .getExpression ());
21+ this .simplified = simplified ;
2222 this .origin = origin ;
2323 this .binders = new ArrayList <>(binders );
2424 }
2525
26- public Expression getSimplifiedExpression () {
27- return children . get ( 0 ) ;
26+ public Predicate getSimplifiedPredicate () {
27+ return simplified ;
2828 }
2929
30- public Expression getOrigin () {
30+ public Predicate getOrigin () {
3131 return origin ;
3232 }
3333
3434 public List <Binder > getBinders () {
3535 return binders ;
3636 }
3737
38- @ Override
39- public <T > T accept (ExpressionVisitor <T > visitor ) throws LJError {
40- return visitor .visitSimplifiedNode (this );
41- }
42-
43- @ Override
44- public void getVariableNames (List <String > toAdd ) {
45- getSimplifiedExpression ().getVariableNames (toAdd );
46- }
47-
48- @ Override
49- public void getStateInvocations (List <String > toAdd , List <String > all ) {
50- getSimplifiedExpression ().getStateInvocations (toAdd , all );
51- }
52-
5338 @ Override
5439 public boolean isBooleanTrue () {
55- return getSimplifiedExpression ().isBooleanTrue ();
40+ return getSimplifiedPredicate ().isBooleanTrue ();
5641 }
5742
5843 @ Override
59- public Expression clone () {
60- return new SimplifiedExpression ( getSimplifiedExpression ().clone (), origin .clone (), binders );
44+ public SimplifiedPredicate clone () {
45+ return new SimplifiedPredicate ( getSimplifiedPredicate ().clone (), origin .clone (), binders );
6146 }
6247
6348 @ Override
6449 public String toString () {
65- return getSimplifiedExpression ().toString ();
50+ return getSimplifiedPredicate ().toString ();
6651 }
6752
6853 @ Override
6954 public int hashCode () {
70- return Objects .hash (getSimplifiedExpression (), origin , binders );
55+ return Objects .hash (getSimplifiedPredicate (), origin , binders );
7156 }
7257
7358 @ Override
@@ -78,8 +63,8 @@ public boolean equals(Object obj) {
7863 return false ;
7964 if (getClass () != obj .getClass ())
8065 return false ;
81- SimplifiedExpression other = (SimplifiedExpression ) obj ;
82- return getSimplifiedExpression ().equals (other .getSimplifiedExpression ()) && origin .equals (other .origin )
66+ SimplifiedPredicate other = (SimplifiedPredicate ) obj ;
67+ return getSimplifiedPredicate ().equals (other .getSimplifiedPredicate ()) && origin .equals (other .origin )
8368 && binders .equals (other .binders );
8469 }
8570
0 commit comments