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.
Fields inherited from class polyglot.ast.Disamb_c |
amb, c, name, nf, pos, prefix, ts, v |
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 |
JifDisamb_c
public JifDisamb_c()
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