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

## jif.visit
Class FieldLabelResolver

    java.lang.Object
      polyglot.visit.NodeVisitor
          polyglot.visit.HaltingVisitor
              polyglot.visit.ErrorHandlingVisitor
                  polyglot.visit.ContextVisitor
                      jif.visit.FieldLabelResolver

All Implemented Interfaces:
  java.lang.Cloneable, polyglot.util.Copy

    public class FieldLabelResolver

extends polyglot.visit.ContextVisitor

A visitor used to resolving field labels. We want to resolving field labels of all the classes before the label checking pass, because these field labels might be included in other labels, thus need to resolve first.

Field Summary

Fields inherited from class polyglot.visit.ContextVisitor
`context, outer`

Fields inherited from class polyglot.visit.ErrorHandlingVisitor
`error, nf`

Constructor Summary
`FieldLabelResolver(polyglot.frontend.Job job, JifTypeSystem ts, polyglot.ast.NodeFactory nf)`

Method Summary
`polyglot.visit.NodeVisitor` | `enterCall(polyglot.ast.Node n)`
`polyglot.ast.Node` | `leaveCall(polyglot.ast.Node old, polyglot.ast.Node n, polyglot.visit.NodeVisitor v)`

Methods inherited from class polyglot.visit.ContextVisitor
`addDecls, begin, context, context, enter, enterScope, leave, superEnter`

Methods inherited from class polyglot.visit.ErrorHandlingVisitor
`catchErrors, enterCall, enterError, errorQueue, hasErrors, job, leaveCall, leaveCall, nodeFactory, typeSystem`

Methods inherited from class polyglot.visit.HaltingVisitor
`bypass, bypass, bypassChildren, override, visitChildren`

Methods inherited from class polyglot.visit.NodeVisitor
`copy, enter, finish, finish, leave, override, toString, visitEdge, visitEdgeNoOverride`

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

Constructor Detail

### FieldLabelResolver

    public FieldLabelResolver(polyglot.frontend.Job job,
                              JifTypeSystem ts,
                              polyglot.ast.NodeFactory nf)

Method Detail

### enterCall

    public polyglot.visit.NodeVisitor enterCall(polyglot.ast.Node n)
                                         throws polyglot.types.SemanticException

  Overrides:
    `enterCall` in class `polyglot.visit.ErrorHandlingVisitor`
  Throws:
    `polyglot.types.SemanticException`

### leaveCall

    public polyglot.ast.Node leaveCall(polyglot.ast.Node old,
                                       polyglot.ast.Node n,
                                       polyglot.visit.NodeVisitor v)
                                throws polyglot.types.SemanticException

  Overrides:
    `leaveCall` in class `polyglot.visit.ErrorHandlingVisitor`
  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