Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## 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
`ActsFor` | `ActsFor(polyglot.util.Position pos, ActsFor.Kind kind, PrincipalNode actor, PrincipalNode granter, polyglot.ast.Stmt consequent, polyglot.ast.Stmt alternative)`
`ActsFor` | `ActsFor(polyglot.util.Position pos, ActsFor.Kind kind, Principal actor, Principal granter, polyglot.ast.Stmt consequent, polyglot.ast.Stmt alternative)`
`ActsForConstraintNode` | `ActsForConstraintNode(polyglot.util.Position pos, PrincipalNode actor, PrincipalNode granter)`
`ActsForConstraintNode` | `ActsForConstraintNode(polyglot.util.Position pos, PrincipalNode actor, PrincipalNode granter, boolean isEquiv)`
`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)`
`AmbExprParam` | `AmbParam(polyglot.util.Position pos, polyglot.ast.Expr expr, ParamInstance expectedPI)`
`AmbParam` | `AmbParam(polyglot.util.Position pos, java.lang.String name)`
`AmbParam` | `AmbParam(polyglot.util.Position pos, java.lang.String 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, java.lang.String name)`
`AmbThisLabelNode` | `AmbThisLabelNode(polyglot.util.Position pos)`
`AmbVarLabelNode` | `AmbVarLabelNode(polyglot.util.Position pos, java.lang.String name)`
`AuthConstraintNode` | `AuthConstraintNode(polyglot.util.Position pos, java.util.List principals)`
`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)`
`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)`
`InstTypeNode` | `InstTypeNode(polyglot.util.Position pos, polyglot.ast.TypeNode type, java.util.List params)`
`JifClassDecl` | `JifClassDecl(polyglot.util.Position pos, polyglot.types.Flags flags, java.lang.String 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, java.lang.String 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, java.lang.String 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)`
`LabelIf` | `LabelIf(polyglot.util.Position pos, LabelExpr lhs, LabelExpr rhs, polyglot.ast.Stmt consequent, polyglot.ast.Stmt alternative)`
`LabelLeAssertionNode` | `LabelLeAssertionNode(polyglot.util.Position pos, LabelNode actor, LabelNode granter)`
`NewLabel` | `NewLabel(polyglot.util.Position pos, LabelNode label)`
`ParamDecl` | `ParamDecl(polyglot.util.Position pos, ParamInstance.Kind kind, java.lang.String name)`
`PolicyLabelNode` | `PolicyLabelNode(polyglot.util.Position pos, PrincipalNode owner, java.util.List readers)`

Methods inherited from interface polyglot.ast.NodeFactory
`AmbAssign, AmbExpr, AmbPrefix, AmbPrefix, AmbQualifierNode, AmbQualifierNode, AmbReceiver, AmbReceiver, AmbTypeNode, AmbTypeNode, ArrayAccess, ArrayAccessAssign, ArrayInit, ArrayInit, ArrayTypeNode, Assert, Assert, Assign, Binary, Block, Block, Block, Block, Block, Block, BooleanLit, Branch, Branch, Break, Break, Call, Call, Call, Call, Call, Call, Call, Call, Call, Call, Call, Call, CanonicalTypeNode, Case, Cast, Catch, CharLit, ClassBody, ClassDecl, ClassLit, Conditional, ConstructorCall, ConstructorCall, ConstructorDecl, Continue, Continue, Default, disamb, Do, Empty, Eval, Field, Field, FieldAssign, FieldDecl, FieldDecl, FloatLit, For, Formal, If, If, Import, Initializer, Instanceof, IntLit, Labeled, Local, LocalAssign, LocalClassDecl, LocalDecl, LocalDecl, MethodDecl, New, New, New, New, NewArray, NewArray, NewArray, NewArray, NullLit, PackageNode, Return, Return, SourceCollection, SourceFile, SourceFile, SourceFile, Special, Special, StringLit, Super, Super, SuperCall, SuperCall, Switch, SwitchBlock, Synchronized, This, This, ThisCall, ThisCall, Throw, Try, Try, 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)

### 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)

### PolicyLabelNode

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

### AmbDynamicLabelNode

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

### AmbVarLabelNode

    AmbVarLabelNode AmbVarLabelNode(polyglot.util.Position pos,
                                    java.lang.String 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,
                                      java.lang.String name)

### CanonicalPrincipalNode

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

### JifClassDecl

    JifClassDecl JifClassDecl(polyglot.util.Position pos,
                              polyglot.types.Flags flags,
                              java.lang.String 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,
                                java.lang.String 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,
                                          java.lang.String 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,
                      java.lang.String name)

### AmbParam

    AmbParam AmbParam(polyglot.util.Position pos,
                      java.lang.String 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,
                        java.lang.String 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)

### 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)

### ActsFor

    ActsFor ActsFor(polyglot.util.Position pos,
                    ActsFor.Kind kind,
                    Principal actor,
                    Principal granter,
                    polyglot.ast.Stmt consequent,
                    polyglot.ast.Stmt alternative)

### ActsFor

    ActsFor ActsFor(polyglot.util.Position pos,
                    ActsFor.Kind kind,
                    PrincipalNode actor,
                    PrincipalNode granter,
                    polyglot.ast.Stmt consequent,
                    polyglot.ast.Stmt alternative)

### LabelIf

    LabelIf LabelIf(polyglot.util.Position pos,
                    LabelExpr lhs,
                    LabelExpr rhs,
                    polyglot.ast.Stmt consequent,
                    polyglot.ast.Stmt alternative)

### LabelExpr

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

### DeclassifyStmt

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

### DeclassifyExpr

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

### NewLabel

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

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD