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

## jif.ast
Class JifDisamb_c

    java.lang.Object
      polyglot.ast.Disamb_c
          jif.ast.JifDisamb_c

All Implemented Interfaces:
  polyglot.ast.Disamb

    public class JifDisamb_c

extends polyglot.ast.Disamb_c

Utility class which is used to disambiguate ambiguous AST nodes (Expr, Type, Receiver, Qualifier, Prefix). We need to override the default functionality of `Disamb_c` to deal with using the correct instantiations of polymorphic classes.

Field Summary

Fields inherited from class polyglot.ast.Disamb_c
`amb, c, name, nf, pos, prefix, ts, v`

Constructor Summary
`JifDisamb_c()`

Method Summary
`protected polyglot.ast.Node` | `disambiguateVarInstance(polyglot.types.VarInstance vi)`
`protected polyglot.ast.Receiver` | `makeMissingFieldTarget(polyglot.types.FieldInstance fi)` Override superclass functionality to avoid returning an uninstantiated polymorphic class.

Methods inherited from class polyglot.ast.Disamb_c
`disambiguate, disambiguate, disambiguateExprPrefix, disambiguateNoPrefix, disambiguatePackagePrefix, disambiguateTypeNodePrefix, exprOK, packageOK, toString, typeOK`

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

Constructor Detail

### JifDisamb_c

    public JifDisamb_c()

Method Detail

### disambiguateVarInstance

    protected polyglot.ast.Node disambiguateVarInstance(polyglot.types.VarInstance vi)
                                                 throws polyglot.types.SemanticException

  Overrides:
    `disambiguateVarInstance` in class `polyglot.ast.Disamb_c`
  Throws:
    `polyglot.types.SemanticException`

### makeMissingFieldTarget

    protected polyglot.ast.Receiver makeMissingFieldTarget(polyglot.types.FieldInstance fi)
                                                    throws polyglot.types.SemanticException

  Override superclass functionality to avoid returning an uninstantiated polymorphic class.

  Overrides:
    `makeMissingFieldTarget` in class `polyglot.ast.Disamb_c`
  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