jif.ast
Class ActsFor_c

java.lang.Object
  |
  +--polyglot.ext.jl.ast.Node_c
        |
        +--polyglot.ext.jl.ast.Term_c
              |
              +--polyglot.ext.jl.ast.Stmt_c
                    |
                    +--jif.ast.ActsFor_c
All Implemented Interfaces:
ActsFor, java.lang.Cloneable, polyglot.ast.CompoundStmt, polyglot.util.Copy, polyglot.ast.JL, polyglot.ast.Node, polyglot.ast.NodeOps, polyglot.ast.Stmt, polyglot.ast.Term

public class ActsFor_c
extends polyglot.ext.jl.ast.Stmt_c
implements ActsFor

An implementation of the ActsFor interface.


Field Summary
protected  PrincipalNode actor
           
protected  polyglot.ast.Stmt alternative
           
protected  polyglot.ast.Stmt consequent
           
protected  PrincipalNode granter
           
 
Fields inherited from class polyglot.ext.jl.ast.Node_c
del, ext, position
 
Constructor Summary
ActsFor_c(polyglot.util.Position pos, PrincipalNode actor, PrincipalNode granter, polyglot.ast.Stmt consequent, polyglot.ast.Stmt alternative)
           
 
Method Summary
 java.util.List acceptCFG(polyglot.visit.CFGBuilder v, java.util.List succs)
           
 PrincipalNode actor()
          Gets the actor principal.
 ActsFor actor(PrincipalNode actor)
          Sets the actor principal.
 polyglot.ast.Stmt alternative()
          Gets the alternative statement.
 ActsFor alternative(polyglot.ast.Stmt alternative)
          Sets the alternative statement.
 polyglot.ast.Stmt consequent()
          Gets the consequent statement.
 ActsFor consequent(polyglot.ast.Stmt consequent)
          Sets the consequent statement.
 polyglot.ast.Term entry()
           
 PrincipalNode granter()
          Gets the granter principal.
 ActsFor granter(PrincipalNode granter)
          Sets the granter principal.
 void prettyPrint(polyglot.util.CodeWriter w, polyglot.visit.PrettyPrinter tr)
           
protected  ActsFor_c reconstruct(PrincipalNode actor, PrincipalNode granter, polyglot.ast.Stmt consequent, polyglot.ast.Stmt alternative)
          Reconstructs the node.
 java.lang.String toString()
           
 void translate(polyglot.util.CodeWriter w, polyglot.visit.Translator tr)
           
 polyglot.ast.Node typeCheck(polyglot.visit.TypeChecker tc)
          Type check the expression.
 polyglot.ast.Node visitChildren(polyglot.visit.NodeVisitor v)
          Visits the children of the node.
 
Methods inherited from class polyglot.ext.jl.ast.Term_c
listEntry
 
Methods inherited from class polyglot.ext.jl.ast.Node_c
addDecls, addMembers, addMembersEnter, addMembersOverride, buildTypes, buildTypesEnter, buildTypesOverride, childExpectedType, copy, del, del, disambiguate, disambiguateEnter, disambiguateOverride, dump, enterScope, exceptionCheck, exceptionCheckEnter, exceptionCheckOverride, ext, ext, ext, ext, foldConstants, foldConstantsEnter, foldConstantsOverride, init, node, position, position, print, printBlock, printSubStmt, throwTypes, typeCheckEnter, typeCheckOverride, visit, visitChild, 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, ext, ext, ext, ext, position, position, visit, visitChild, visitEdge
 
Methods inherited from interface polyglot.ast.JL
init, node
 
Methods inherited from interface polyglot.ast.NodeOps
addDecls, addMembers, addMembersEnter, buildTypes, buildTypesEnter, disambiguate, disambiguateEnter, enterScope, exceptionCheck, exceptionCheckEnter, foldConstants, foldConstantsEnter, throwTypes, typeCheckEnter
 
Methods inherited from interface polyglot.util.Copy
copy
 

Field Detail

actor

protected PrincipalNode actor

granter

protected PrincipalNode granter

consequent

protected polyglot.ast.Stmt consequent

alternative

protected polyglot.ast.Stmt alternative
Constructor Detail

ActsFor_c

public ActsFor_c(polyglot.util.Position pos,
                 PrincipalNode actor,
                 PrincipalNode granter,
                 polyglot.ast.Stmt consequent,
                 polyglot.ast.Stmt alternative)
Method Detail

actor

public PrincipalNode actor()
Gets the actor principal.

Specified by:
actor in interface ActsFor

actor

public ActsFor actor(PrincipalNode actor)
Sets the actor principal.

Specified by:
actor in interface ActsFor

granter

public PrincipalNode granter()
Gets the granter principal.

Specified by:
granter in interface ActsFor

granter

public ActsFor granter(PrincipalNode granter)
Sets the granter principal.

Specified by:
granter in interface ActsFor

consequent

public polyglot.ast.Stmt consequent()
Gets the consequent statement.

Specified by:
consequent in interface ActsFor

consequent

public ActsFor consequent(polyglot.ast.Stmt consequent)
Sets the consequent statement.

Specified by:
consequent in interface ActsFor

alternative

public polyglot.ast.Stmt alternative()
Gets the alternative statement.

Specified by:
alternative in interface ActsFor

alternative

public ActsFor alternative(polyglot.ast.Stmt alternative)
Sets the alternative statement.

Specified by:
alternative in interface ActsFor

reconstruct

protected ActsFor_c reconstruct(PrincipalNode actor,
                                PrincipalNode granter,
                                polyglot.ast.Stmt consequent,
                                polyglot.ast.Stmt alternative)
Reconstructs the node.


visitChildren

public polyglot.ast.Node visitChildren(polyglot.visit.NodeVisitor v)
Visits the children of the node.

Specified by:
visitChildren in interface polyglot.ast.NodeOps
Overrides:
visitChildren in class polyglot.ext.jl.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.ext.jl.ast.Node_c
polyglot.types.SemanticException

entry

public polyglot.ast.Term entry()
Specified by:
entry in interface polyglot.ast.Term
Overrides:
entry in class polyglot.ext.jl.ast.Term_c

acceptCFG

public java.util.List acceptCFG(polyglot.visit.CFGBuilder v,
                                java.util.List succs)
Specified by:
acceptCFG in interface polyglot.ast.Term
Overrides:
acceptCFG in class polyglot.ext.jl.ast.Term_c

toString

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

prettyPrint

public void prettyPrint(polyglot.util.CodeWriter w,
                        polyglot.visit.PrettyPrinter tr)
Specified by:
prettyPrint in interface polyglot.ast.NodeOps
Overrides:
prettyPrint in class polyglot.ext.jl.ast.Node_c

translate

public void translate(polyglot.util.CodeWriter w,
                      polyglot.visit.Translator tr)
Specified by:
translate in interface polyglot.ast.NodeOps
Overrides:
translate in class polyglot.ext.jl.ast.Node_c