EOS 2  1.1.0
Einfache Objektbasierte Sprache
IsNotEqual.java
gehe zur Dokumentation dieser Datei
1 package de.lathanda.eos.baseparser;
2 
3 import de.lathanda.eos.vm.Command;
4 import de.lathanda.eos.vm.commands.NEQ;
5 
6 import java.util.ArrayList;
7 
14 public class IsNotEqual extends Expression {
15 
16  private final Expression left;
17  private final Expression right;
18 
19  public IsNotEqual(Expression left, Expression right) {
20  this.left = left;
21  this.right = right;
22  type = Type.getBoolean();
23  prio = 3;
24  }
25 
26  @Override
27  public void compile(ArrayList<Command> ops, boolean autoWindow) throws Exception {
28  left.compile(ops, autoWindow);
29  right.compile(ops, autoWindow);
30  ops.add(new NEQ());
31  }
32 
33  @Override
34  public void resolveNamesAndTypes(Expression with, Environment env) {
35  left.resolveNamesAndTypes(with, env);
36  right.resolveNamesAndTypes(with, env);
37  }
38 
39  @Override
40  public String toString() {
41  return "(" + left + " != " + right + ")";
42  }
43 
44  @Override
45  public String getLabel() {
46  return createText("NotEqual.Label", getLabelLeft(left), getLabelRight(right));
47  }
48 }
String getLabelRight(Expression e)
Definition: Expression.java:82
void compile(ArrayList< Command > ops, boolean autoWindow)
Definition: IsNotEqual.java:27
IsNotEqual(Expression left, Expression right)
Definition: IsNotEqual.java:19
void resolveNamesAndTypes(Expression with, Environment env)
Definition: IsNotEqual.java:34
abstract void compile(ArrayList< Command > ops, boolean autoWindow)
final String createText(String id, Object... args)
Definition: Node.java:34
abstract void resolveNamesAndTypes(Expression with, Environment env)
static SystemType getBoolean()
Definition: Type.java:88
Impressum