Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## jif.types
Class Equation

    java.lang.Object
      jif.types.Equation

    public class Equation

extends java.lang.Object

Label equation derived from a label constraint. A label equation represents an inequality that must be satisfied, namely `lhs <= rhs` in the environment `env`.

See Also:
  `LabelConstraint`

Method Summary
`LabelConstraint` | `constraint()`
`LabelEnv` | `env()`
`boolean` | `equals(java.lang.Object o)`
`boolean` | `evaluate()` Evaluate this equation.
`int` | `hashCode()`
`Label` | `lhs()`
`polyglot.util.Position` | `position()`
`Label` | `rhs()`
`void` | `subst(LabelSubstitution subst)` Replace the `lhs` and `rhs` with the result of `lhs.subst(subst)` and `rhs.subst(subst)` respectively.
`java.lang.String` | `toString()`
`java.util.List` | `variables()` Return a `List` of variables that occur in either the left or right hand side.

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Method Detail

### lhs

    public Label lhs()

### rhs

    public Label rhs()

### constraint

    public LabelConstraint constraint()

### env

    public LabelEnv env()

### position

    public polyglot.util.Position position()

### variables

    public java.util.List variables()

  Return a `List` of variables that occur in either the left or right hand side.

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `java.lang.Object`

### equals

    public boolean equals(java.lang.Object o)

  Overrides:
    `equals` in class `java.lang.Object`

### toString

    public java.lang.String toString()

  Overrides:
    `toString` in class `java.lang.Object`

### evaluate

    public boolean evaluate()

  Evaluate this equation. This method is shorthand for the code `this.env().leq(this.lhs(), this.rhs())`.

### subst

    public void subst(LabelSubstitution subst)
               throws polyglot.types.SemanticException

  Replace the `lhs` and `rhs` with the result of `lhs.subst(subst)` and `rhs.subst(subst)` respectively.

  Throws:
    `polyglot.types.SemanticException`

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD