# Package jif.visit

Contains the Jif visitors, such as the label checker and the Jif translator.

See: Description

- Class Summary
  Class | Description
  --- | ---
  ConstChecker | Visitor which traverses an expression AST, and determines if the expression is a constant expression.
  FieldLabelResolver | A visitor used to resolving field labels.
  FinalParams |
  IntegerBoundsChecker | This class finds integral bounds on expressions.
  IntegerBoundsChecker.ArrayLengthBound |
  IntegerBoundsChecker.Bound |
  IntegerBoundsChecker.Bounds |
  IntegerBoundsChecker.DataFlowItem | The items that this dataflow analysis operates on is essetially a set of integer constraints.
  IntegerBoundsChecker.Interval | A closed interval over the integers.
  IntegerBoundsChecker.LocalBound |
  JifExceptionChecker |
  JifExceptionChecker.FatalExceptionSetter |
  JifInitChecker | Override the init checker, since type nodes may now mention local variables.
  JifLabelSubst | This visitor substitutes labels for each variable in the path maps of each JifExt object.
  JifTranslator | The Jif translator is used to generate Java files from the current ASTs.
  JifTypeChecker |
  LabelChecker | The `LabelChecker` class is used in the label checking of Jif.
  LabelCheckPass | A pass which runs a visitor.
  LabelSubstitutionVisitor | Visits an AST, and applies a `LabelSubstitution` to all labels that occur in the AST.
  NativeConstructorAdder | For convenience in writing signatures, we allow native constructors (with empty bodies).
  NotNullChecker | Visitor which determines at which program points local variables and final fields of this class cannot be null, and thus field access and method calls to them cannot produce NullPointerExceptions.
  PreciseClassChecker | Visitor which determines at which program points more precise information is known about the runtime class of local variables and final access paths.

- Enum Summary
  Enum | Description
  --- | ---
  IntegerBoundsChecker.Bound.Type |

## Package jif.visit Description

Contains the Jif visitors, such as the label checker and the Jif translator.

@see polyglot.ast.NodeVisitor @see polyglot.visit.SemanticVisitor