Represents a strict inequality expression of the form " e1 < e2 " where e1 and e2 are the operand expressions . @author David J. Pearce
| 3537 | * |
| 3538 | */ |
| 3539 | public static class IntegerLessThan extends AbstractItem implements BinaryOperator { |
| 3540 | public IntegerLessThan(Expr lhs, Expr rhs) { |
| 3541 | super(EXPR_integerlessthan, lhs, rhs); |
| 3542 | } |
| 3543 | |
| 3544 | @Override |
| 3545 | public Type getType() { |
| 3546 | return Type.Bool; |
| 3547 | } |
| 3548 | |
| 3549 | @Override |
| 3550 | public void setType(Type type) { |
| 3551 | if(!type.equals(Type.Bool)) { |
| 3552 | throw new IllegalArgumentException(); |
| 3553 | } |
| 3554 | } |
| 3555 | |
| 3556 | @Override |
| 3557 | public Expr getFirstOperand() { |
| 3558 | return (Expr) super.get(0); |
| 3559 | } |
| 3560 | |
| 3561 | @Override |
| 3562 | public Expr getSecondOperand() { |
| 3563 | return (Expr) super.get(1); |
| 3564 | } |
| 3565 | |
| 3566 | @Override |
| 3567 | public Expr clone(Syntactic.Item[] operands) { |
| 3568 | return new IntegerLessThan((Expr) operands[0], (Expr) operands[1]); |
| 3569 | } |
| 3570 | |
| 3571 | @Override |
| 3572 | public String toString() { |
| 3573 | return " < "; |
| 3574 | } |
| 3575 | |
| 3576 | public static final Descriptor DESCRIPTOR_0 = new Descriptor(Operands.TWO, Data.ZERO, "EXPR_integerlessthan") { |
| 3577 | @Override |
| 3578 | public Syntactic.Item construct(int opcode, Syntactic.Item[] operands, byte[] data) { |
| 3579 | return new IntegerLessThan((Expr) operands[0], (Expr) operands[1]); |
| 3580 | } |
| 3581 | }; |
| 3582 | } |
| 3583 | |
| 3584 | /** |
| 3585 | * Represents a non-strict <i>inequality expression</i> of the form |
nothing calls this directly
no outgoing calls
no test coverage detected