jif.ast
Interface JifNodeFactory

All Superinterfaces:
polyglot.ast.NodeFactory
All Known Implementing Classes:
JifNodeFactory_c

public interface JifNodeFactory
extends polyglot.ast.NodeFactory

The node factory of the Jif extension.


Method Summary
 ActsForConstraintNode ActsForConstraintNode(polyglot.util.Position pos, PrincipalNode actor, PrincipalNode granter)
           
 ActsForConstraintNode ActsForConstraintNode(polyglot.util.Position pos, PrincipalNode actor, PrincipalNode granter, boolean isEquiv)
           
 AmbPrincipalNode AmbConjunctivePrincipalNode(polyglot.util.Position pos, PrincipalNode left, PrincipalNode right)
           
 AmbPrincipalNode AmbDisjunctivePrincipalNode(polyglot.util.Position pos, PrincipalNode left, PrincipalNode right)
           
 AmbDynamicLabelNode AmbDynamicLabelNode(polyglot.util.Position pos, polyglot.ast.Expr expr)
           
 AmbNewArray AmbNewArray(polyglot.util.Position pos, polyglot.ast.TypeNode base, java.lang.Object expr, java.util.List dims, int addDims)
           
 AmbExprParam AmbParam(polyglot.util.Position pos, polyglot.ast.Expr expr, ParamInstance expectedPI)
           
 AmbParam AmbParam(polyglot.util.Position pos, polyglot.ast.Id name)
           
 AmbParam AmbParam(polyglot.util.Position pos, polyglot.ast.Id name, ParamInstance pi)
           
 AmbParamTypeOrAccess AmbParamTypeOrAccess(polyglot.util.Position pos, polyglot.ast.Receiver base, java.lang.Object expr)
           
 AmbPrincipalNode AmbPrincipalNode(polyglot.util.Position pos, polyglot.ast.Expr expr)
           
 AmbPrincipalNode AmbPrincipalNode(polyglot.util.Position pos, polyglot.ast.Id name)
           
 AmbThisLabelNode AmbThisLabelNode(polyglot.util.Position pos)
           
 AmbVarLabelNode AmbVarLabelNode(polyglot.util.Position pos, polyglot.ast.Id name)
           
 AuthConstraintNode AuthConstraintNode(polyglot.util.Position pos, java.util.List principals)
           
 AutoEndorseConstraintNode AutoEndorseConstraintNode(polyglot.util.Position pos, LabelNode endorseTo)
           
 CallerConstraintNode CallerConstraintNode(polyglot.util.Position pos, java.util.List principals)
           
 CanonicalConstraintNode CanonicalConstraintNode(polyglot.util.Position pos, Assertion constraint)
           
 CanonicalLabelNode CanonicalLabelNode(polyglot.util.Position pos, Label label)
           
 CanonicalPrincipalNode CanonicalPrincipalNode(polyglot.util.Position pos, Principal principal)
           
 CheckedEndorseStmt CheckedEndorseStmt(polyglot.util.Position pos, polyglot.ast.Expr e, LabelNode bound, LabelNode label, polyglot.ast.If body)
           
 polyglot.ast.TypeNode ConstArrayTypeNode(polyglot.util.Position position, polyglot.ast.TypeNode node)
           
 DeclassifyExpr DeclassifyExpr(polyglot.util.Position pos, polyglot.ast.Expr expr, LabelNode label)
           
 DeclassifyExpr DeclassifyExpr(polyglot.util.Position pos, polyglot.ast.Expr expr, LabelNode bound, LabelNode label)
           
 DeclassifyStmt DeclassifyStmt(polyglot.util.Position pos, LabelNode bound, LabelNode label, polyglot.ast.Stmt body)
           
 DeclassifyStmt DeclassifyStmt(polyglot.util.Position pos, LabelNode label, polyglot.ast.Stmt body)
           
 EndorseExpr EndorseExpr(polyglot.util.Position pos, polyglot.ast.Expr expr, LabelNode label)
           
 EndorseExpr EndorseExpr(polyglot.util.Position pos, polyglot.ast.Expr expr, LabelNode bound, LabelNode label)
           
 EndorseStmt EndorseStmt(polyglot.util.Position pos, LabelNode bound, LabelNode label, polyglot.ast.Stmt body)
           
 EndorseStmt EndorseStmt(polyglot.util.Position pos, LabelNode label, polyglot.ast.Stmt body)
           
 InstTypeNode InstTypeNode(polyglot.util.Position pos, polyglot.ast.TypeNode type, java.util.List params)
           
 JifClassDecl JifClassDecl(polyglot.util.Position pos, polyglot.types.Flags flags, polyglot.ast.Id name, java.util.List params, polyglot.ast.TypeNode superClass, java.util.List interfaces, java.util.List authority, polyglot.ast.ClassBody body)
           
 JifConstructorDecl JifConstructorDecl(polyglot.util.Position pos, polyglot.types.Flags flags, polyglot.ast.Id name, LabelNode startLabel, LabelNode returnLabel, java.util.List arguments, java.util.List exceptions, java.util.List constraints, polyglot.ast.Block body)
           
 JifMethodDecl JifMethodDecl(polyglot.util.Position pos, polyglot.types.Flags flags, polyglot.ast.TypeNode returnType, polyglot.ast.Id name, LabelNode startLabel, java.util.List arguments, LabelNode endLabel, java.util.List exceptions, java.util.List constraints, polyglot.ast.Block body)
           
 JoinLabelNode JoinLabelNode(polyglot.util.Position pos, java.util.List components)
           
 LabeledTypeNode LabeledTypeNode(polyglot.util.Position pos, polyglot.ast.TypeNode type, LabelNode label)
           
 LabelExpr LabelExpr(polyglot.util.Position pos, Label l)
           
 LabelLeAssertionNode LabelLeAssertionNode(polyglot.util.Position pos, LabelNode actor, LabelNode granter, boolean isEquiv)
           
 MeetLabelNode MeetLabelNode(polyglot.util.Position pos, java.util.List components)
           
 NewLabel NewLabel(polyglot.util.Position pos, LabelNode label)
           
 ParamDecl ParamDecl(polyglot.util.Position pos, ParamInstance.Kind kind, polyglot.ast.Id name)
           
 PolicyNode PolicyNode(polyglot.util.Position pos, Policy pol)
           
 PrincipalExpr PrincipalExpr(polyglot.util.Position pos, PrincipalNode principal)
           
 PolicyNode ReaderPolicyNode(polyglot.util.Position pos, PrincipalNode owner, java.util.List readers)
           
 PolicyNode WriterPolicyNode(polyglot.util.Position pos, PrincipalNode owner, java.util.List writers)
           
 
Methods inherited from interface polyglot.ast.NodeFactory
AmbAssign, AmbExpr, AmbExpr, AmbPrefix, AmbPrefix, AmbPrefix, AmbPrefix, AmbQualifierNode, AmbQualifierNode, AmbQualifierNode, AmbQualifierNode, AmbReceiver, AmbReceiver, AmbReceiver, AmbReceiver, AmbTypeNode, AmbTypeNode, AmbTypeNode, AmbTypeNode, ArrayAccess, ArrayAccessAssign, ArrayInit, ArrayInit, ArrayTypeNode, Assert, Assert, Assign, Binary, Block, Block, Block, Block, Block, Block, BooleanLit, Branch, Branch, Branch, Break, Break, Break, Call, Call, Call, Call, Call, Call, Call, Call, Call, Call, Call, Call, Call, Call, Call, Call, Call, Call, Call, Call, Call, Call, Call, Call, CanonicalTypeNode, Case, Cast, Catch, CharLit, ClassBody, ClassDecl, ClassDecl, ClassLit, Conditional, ConstructorCall, ConstructorCall, ConstructorDecl, ConstructorDecl, Continue, Continue, Continue, Default, disamb, Do, Empty, Eval, ExprFromQualifiedName, Field, Field, Field, Field, FieldAssign, FieldDecl, FieldDecl, FieldDecl, FieldDecl, FloatLit, For, Formal, Formal, Id, If, If, Import, Initializer, Instanceof, IntLit, Labeled, Labeled, Local, Local, LocalAssign, LocalClassDecl, LocalDecl, LocalDecl, LocalDecl, LocalDecl, MethodDecl, MethodDecl, New, New, New, New, NewArray, NewArray, NewArray, NewArray, NodeList, NodeList, NullLit, PackageNode, PrefixFromQualifiedName, QualifierNodeFromQualifiedName, ReceiverFromQualifiedName, Return, Return, SourceCollection, SourceFile, SourceFile, SourceFile, Special, Special, StringLit, Super, Super, SuperCall, SuperCall, Switch, SwitchBlock, Synchronized, This, This, ThisCall, ThisCall, Throw, Try, Try, TypeNodeFromQualifiedName, Unary, Unary, While
 

Method Detail

InstTypeNode

InstTypeNode InstTypeNode(polyglot.util.Position pos,
                          polyglot.ast.TypeNode type,
                          java.util.List params)

LabeledTypeNode

LabeledTypeNode LabeledTypeNode(polyglot.util.Position pos,
                                polyglot.ast.TypeNode type,
                                LabelNode label)

AmbNewArray

AmbNewArray AmbNewArray(polyglot.util.Position pos,
                        polyglot.ast.TypeNode base,
                        java.lang.Object expr,
                        java.util.List dims,
                        int addDims)

AmbParamTypeOrAccess

AmbParamTypeOrAccess AmbParamTypeOrAccess(polyglot.util.Position pos,
                                          polyglot.ast.Receiver base,
                                          java.lang.Object expr)

JoinLabelNode

JoinLabelNode JoinLabelNode(polyglot.util.Position pos,
                            java.util.List components)

MeetLabelNode

MeetLabelNode MeetLabelNode(polyglot.util.Position pos,
                            java.util.List components)

ReaderPolicyNode

PolicyNode ReaderPolicyNode(polyglot.util.Position pos,
                            PrincipalNode owner,
                            java.util.List readers)

WriterPolicyNode

PolicyNode WriterPolicyNode(polyglot.util.Position pos,
                            PrincipalNode owner,
                            java.util.List writers)

PolicyNode

PolicyNode PolicyNode(polyglot.util.Position pos,
                      Policy pol)

AmbDynamicLabelNode

AmbDynamicLabelNode AmbDynamicLabelNode(polyglot.util.Position pos,
                                        polyglot.ast.Expr expr)

AmbVarLabelNode

AmbVarLabelNode AmbVarLabelNode(polyglot.util.Position pos,
                                polyglot.ast.Id name)

AmbThisLabelNode

AmbThisLabelNode AmbThisLabelNode(polyglot.util.Position pos)

CanonicalLabelNode

CanonicalLabelNode CanonicalLabelNode(polyglot.util.Position pos,
                                      Label label)

AmbPrincipalNode

AmbPrincipalNode AmbPrincipalNode(polyglot.util.Position pos,
                                  polyglot.ast.Expr expr)

AmbPrincipalNode

AmbPrincipalNode AmbPrincipalNode(polyglot.util.Position pos,
                                  polyglot.ast.Id name)

AmbConjunctivePrincipalNode

AmbPrincipalNode AmbConjunctivePrincipalNode(polyglot.util.Position pos,
                                             PrincipalNode left,
                                             PrincipalNode right)

AmbDisjunctivePrincipalNode

AmbPrincipalNode AmbDisjunctivePrincipalNode(polyglot.util.Position pos,
                                             PrincipalNode left,
                                             PrincipalNode right)

CanonicalPrincipalNode

CanonicalPrincipalNode CanonicalPrincipalNode(polyglot.util.Position pos,
                                              Principal principal)

JifClassDecl

JifClassDecl JifClassDecl(polyglot.util.Position pos,
                          polyglot.types.Flags flags,
                          polyglot.ast.Id name,
                          java.util.List params,
                          polyglot.ast.TypeNode superClass,
                          java.util.List interfaces,
                          java.util.List authority,
                          polyglot.ast.ClassBody body)

JifMethodDecl

JifMethodDecl JifMethodDecl(polyglot.util.Position pos,
                            polyglot.types.Flags flags,
                            polyglot.ast.TypeNode returnType,
                            polyglot.ast.Id name,
                            LabelNode startLabel,
                            java.util.List arguments,
                            LabelNode endLabel,
                            java.util.List exceptions,
                            java.util.List constraints,
                            polyglot.ast.Block body)

JifConstructorDecl

JifConstructorDecl JifConstructorDecl(polyglot.util.Position pos,
                                      polyglot.types.Flags flags,
                                      polyglot.ast.Id name,
                                      LabelNode startLabel,
                                      LabelNode returnLabel,
                                      java.util.List arguments,
                                      java.util.List exceptions,
                                      java.util.List constraints,
                                      polyglot.ast.Block body)

AmbParam

AmbParam AmbParam(polyglot.util.Position pos,
                  polyglot.ast.Id name)

AmbParam

AmbParam AmbParam(polyglot.util.Position pos,
                  polyglot.ast.Id name,
                  ParamInstance pi)

AmbParam

AmbExprParam AmbParam(polyglot.util.Position pos,
                      polyglot.ast.Expr expr,
                      ParamInstance expectedPI)

ParamDecl

ParamDecl ParamDecl(polyglot.util.Position pos,
                    ParamInstance.Kind kind,
                    polyglot.ast.Id name)

CanonicalConstraintNode

CanonicalConstraintNode CanonicalConstraintNode(polyglot.util.Position pos,
                                                Assertion constraint)

AuthConstraintNode

AuthConstraintNode AuthConstraintNode(polyglot.util.Position pos,
                                      java.util.List principals)

CallerConstraintNode

CallerConstraintNode CallerConstraintNode(polyglot.util.Position pos,
                                          java.util.List principals)

AutoEndorseConstraintNode

AutoEndorseConstraintNode AutoEndorseConstraintNode(polyglot.util.Position pos,
                                                    LabelNode endorseTo)

ActsForConstraintNode

ActsForConstraintNode ActsForConstraintNode(polyglot.util.Position pos,
                                            PrincipalNode actor,
                                            PrincipalNode granter)

ActsForConstraintNode

ActsForConstraintNode ActsForConstraintNode(polyglot.util.Position pos,
                                            PrincipalNode actor,
                                            PrincipalNode granter,
                                            boolean isEquiv)

LabelLeAssertionNode

LabelLeAssertionNode LabelLeAssertionNode(polyglot.util.Position pos,
                                          LabelNode actor,
                                          LabelNode granter,
                                          boolean isEquiv)

LabelExpr

LabelExpr LabelExpr(polyglot.util.Position pos,
                    Label l)

DeclassifyStmt

DeclassifyStmt DeclassifyStmt(polyglot.util.Position pos,
                              LabelNode bound,
                              LabelNode label,
                              polyglot.ast.Stmt body)

DeclassifyStmt

DeclassifyStmt DeclassifyStmt(polyglot.util.Position pos,
                              LabelNode label,
                              polyglot.ast.Stmt body)

DeclassifyExpr

DeclassifyExpr DeclassifyExpr(polyglot.util.Position pos,
                              polyglot.ast.Expr expr,
                              LabelNode bound,
                              LabelNode label)

DeclassifyExpr

DeclassifyExpr DeclassifyExpr(polyglot.util.Position pos,
                              polyglot.ast.Expr expr,
                              LabelNode label)

EndorseStmt

EndorseStmt EndorseStmt(polyglot.util.Position pos,
                        LabelNode bound,
                        LabelNode label,
                        polyglot.ast.Stmt body)

EndorseStmt

EndorseStmt EndorseStmt(polyglot.util.Position pos,
                        LabelNode label,
                        polyglot.ast.Stmt body)

CheckedEndorseStmt

CheckedEndorseStmt CheckedEndorseStmt(polyglot.util.Position pos,
                                      polyglot.ast.Expr e,
                                      LabelNode bound,
                                      LabelNode label,
                                      polyglot.ast.If body)

EndorseExpr

EndorseExpr EndorseExpr(polyglot.util.Position pos,
                        polyglot.ast.Expr expr,
                        LabelNode bound,
                        LabelNode label)

EndorseExpr

EndorseExpr EndorseExpr(polyglot.util.Position pos,
                        polyglot.ast.Expr expr,
                        LabelNode label)

NewLabel

NewLabel NewLabel(polyglot.util.Position pos,
                  LabelNode label)

PrincipalExpr

PrincipalExpr PrincipalExpr(polyglot.util.Position pos,
                            PrincipalNode principal)

ConstArrayTypeNode

polyglot.ast.TypeNode ConstArrayTypeNode(polyglot.util.Position position,
                                         polyglot.ast.TypeNode node)