|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectpolyglot.ast.Node_c
jif.ast.AmbParam_c
public class AmbParam_c
An implementation of the AmbParam
interface.
Field Summary | |
---|---|
protected java.lang.String |
name
|
protected ParamInstance |
pi
|
Fields inherited from class polyglot.ast.Node_c |
---|
del, error, ext, position |
Constructor Summary | |
---|---|
AmbParam_c(polyglot.util.Position pos,
java.lang.String name,
ParamInstance pi)
|
Method Summary | |
---|---|
polyglot.ast.Node |
disambiguate(polyglot.visit.AmbiguityRemover sc)
Disambiguates name . |
boolean |
isDisambiguated()
|
java.lang.String |
name()
|
AmbParam |
name(java.lang.String name)
|
Param |
parameter()
|
protected polyglot.ast.Node |
paramToParam(ParamInstance pi,
polyglot.visit.AmbiguityRemover sc)
Turns a PramaInstance object into a label node or a
principal node. |
protected polyglot.ast.Node |
principalToParam(PrincipalInstance vi,
polyglot.visit.AmbiguityRemover sc)
Turns a PrincipalInstance object into a principal node. |
java.lang.String |
toString()
|
protected polyglot.ast.Node |
varToParam(JifVarInstance vi,
polyglot.visit.AmbiguityRemover sc)
Turns a JifVarInstance object into a label node or
a principal node |
Methods inherited from class polyglot.ast.Node_c |
---|
addDecls, buildTypes, buildTypesEnter, checkConstants, childExpectedType, copy, del, del, disambiguateEnter, disambiguateOverride, dump, dump, dump, enterChildScope, enterScope, error, error, exceptionCheck, exceptionCheckEnter, ext, ext, ext, ext, init, isTypeChecked, node, position, position, prettyPrint, prettyPrint, prettyPrint, print, printBlock, printSubStmt, throwTypes, translate, typeCheck, typeCheckEnter, typeCheckOverride, visit, visitChild, visitChildren, visitEdge, visitList |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface polyglot.ast.Node |
---|
childExpectedType, del, del, dump, error, error, ext, ext, ext, ext, isTypeChecked, position, position, visit, visitChild, visitEdge, visitList |
Methods inherited from interface polyglot.ast.JL |
---|
init, node |
Methods inherited from interface polyglot.ast.NodeOps |
---|
addDecls, buildTypes, buildTypesEnter, checkConstants, disambiguateEnter, disambiguateOverride, dump, dump, enterChildScope, enterScope, exceptionCheck, exceptionCheckEnter, prettyPrint, prettyPrint, prettyPrint, throwTypes, translate, typeCheck, typeCheckEnter, typeCheckOverride, visitChildren |
Methods inherited from interface polyglot.ast.Node |
---|
childExpectedType, del, del, dump, error, error, ext, ext, ext, ext, isTypeChecked, position, position, visit, visitChild, visitEdge, visitList |
Methods inherited from interface polyglot.ast.JL |
---|
init, node |
Methods inherited from interface polyglot.ast.NodeOps |
---|
addDecls, buildTypes, buildTypesEnter, checkConstants, disambiguateEnter, disambiguateOverride, dump, dump, enterChildScope, enterScope, exceptionCheck, exceptionCheckEnter, prettyPrint, prettyPrint, prettyPrint, throwTypes, translate, typeCheck, typeCheckEnter, typeCheckOverride, visitChildren |
Field Detail |
---|
protected java.lang.String name
protected ParamInstance pi
Constructor Detail |
---|
public AmbParam_c(polyglot.util.Position pos, java.lang.String name, ParamInstance pi)
Method Detail |
---|
public boolean isDisambiguated()
isDisambiguated
in interface polyglot.ast.Node
isDisambiguated
in class polyglot.ast.Node_c
public java.lang.String name()
public AmbParam name(java.lang.String name)
public Param parameter()
parameter
in interface ParamNode
public java.lang.String toString()
toString
in class polyglot.ast.Node_c
public polyglot.ast.Node disambiguate(polyglot.visit.AmbiguityRemover sc) throws polyglot.types.SemanticException
name
.
If name
is a VarInstance, we get a dynamic label/principal
node. If name
is a PrincipalInstance, we get the same
principal. If name
is a ParamInstance, we get a ParamLabel
or a ParamPrincipal.
disambiguate
in interface polyglot.ast.NodeOps
disambiguate
in class polyglot.ast.Node_c
polyglot.types.SemanticException
protected polyglot.ast.Node varToParam(JifVarInstance vi, polyglot.visit.AmbiguityRemover sc) throws polyglot.types.SemanticException
JifVarInstance
object into a label node or
a principal node
polyglot.types.SemanticException
protected polyglot.ast.Node principalToParam(PrincipalInstance vi, polyglot.visit.AmbiguityRemover sc) throws polyglot.types.SemanticException
PrincipalInstance
object into a principal node.
polyglot.types.SemanticException
protected polyglot.ast.Node paramToParam(ParamInstance pi, polyglot.visit.AmbiguityRemover sc) throws polyglot.types.SemanticException
PramaInstance
object into a label node or a
principal node.
polyglot.types.SemanticException
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |