jif.ast
Class PrincipalNode_c

java.lang.Object
  extended by polyglot.ast.Node_c
      extended by polyglot.ast.Term_c
          extended by polyglot.ast.Expr_c
              extended by jif.ast.PrincipalNode_c
All Implemented Interfaces:
java.lang.Cloneable, ParamNode, PrincipalNode, polyglot.ast.Expr, polyglot.ast.JL, polyglot.ast.Node, polyglot.ast.NodeOps, polyglot.ast.Prefix, polyglot.ast.Receiver, polyglot.ast.Term, polyglot.ast.Typed, polyglot.util.Copy
Direct Known Subclasses:
AmbJunctivePrincipalNode_c, AmbPrincipalNode_c, CanonicalPrincipalNode_c

public abstract class PrincipalNode_c
extends polyglot.ast.Expr_c
implements PrincipalNode

An implementation of the PrincipalNode interface.


Field Summary
 
Fields inherited from class polyglot.ast.Expr_c
type
 
Fields inherited from class polyglot.ast.Term_c
exceptions, reachable
 
Fields inherited from class polyglot.ast.Node_c
del, error, ext, position
 
Fields inherited from interface polyglot.ast.Term
ENTRY, EXIT
 
Constructor Summary
PrincipalNode_c(polyglot.util.Position pos)
           
 
Method Summary
 boolean isDisambiguated()
           
 Param parameter()
           
 Principal principal()
           
 PrincipalNode principal(Principal principal)
           
 java.util.List throwTypes(polyglot.types.TypeSystem ts)
           
 java.lang.String toString()
           
 polyglot.ast.Node typeCheck(polyglot.visit.TypeChecker tc)
          Type check the expression.
 
Methods inherited from class polyglot.ast.Expr_c
booleanValue, buildTypes, byteValue, charValue, constantValue, constantValueSet, doubleValue, dump, floatValue, intValue, isConstant, isTypeChecked, longValue, precedence, printSubExpr, printSubExpr, shortValue, stringValue, type, type
 
Methods inherited from class polyglot.ast.Term_c
acceptCFG, exceptionCheck, exceptions, exceptions, listChild, reachable, reachable
 
Methods inherited from class polyglot.ast.Node_c
addDecls, buildTypesEnter, checkConstants, childExpectedType, copy, copy, copy, del, del, disambiguate, disambiguateEnter, disambiguateOverride, dump, dump, enterChildScope, enterScope, error, error, exceptionCheckEnter, ext, ext, ext, ext, init, node, position, position, prettyPrint, prettyPrint, prettyPrint, print, printBlock, printSubStmt, translate, 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.Expr
constantValue, constantValueSet, isConstant, precedence, printSubExpr, printSubExpr, type
 
Methods inherited from interface polyglot.ast.Typed
type
 
Methods inherited from interface polyglot.ast.Term
acceptCFG, exceptions, exceptions, firstChild, reachable, reachable
 

Constructor Detail

PrincipalNode_c

public PrincipalNode_c(polyglot.util.Position pos)
Method Detail

principal

public Principal principal()
Specified by:
principal in interface PrincipalNode

principal

public PrincipalNode principal(Principal principal)
Specified by:
principal in interface PrincipalNode

parameter

public Param parameter()
Specified by:
parameter in interface ParamNode

toString

public java.lang.String toString()
Overrides:
toString in class polyglot.ast.Node_c

isDisambiguated

public boolean isDisambiguated()
Specified by:
isDisambiguated in interface polyglot.ast.Node
Overrides:
isDisambiguated in class polyglot.ast.Node_c

throwTypes

public java.util.List throwTypes(polyglot.types.TypeSystem ts)
Specified by:
throwTypes in interface polyglot.ast.NodeOps
Overrides:
throwTypes in class polyglot.ast.Node_c

typeCheck

public polyglot.ast.Node typeCheck(polyglot.visit.TypeChecker tc)
                            throws polyglot.types.SemanticException
Type check the expression.

Specified by:
typeCheck in interface polyglot.ast.NodeOps
Overrides:
typeCheck in class polyglot.ast.Node_c
Throws:
polyglot.types.SemanticException