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
Class JifUtil

    java.lang.Object
      jif.ast.JifUtil

    public class JifUtil

extends java.lang.Object

An implementation of the `Jif` interface.

Constructor Summary
`JifUtil()`

Method Summary
`static java.lang.String` | `accessPathDescrip(AccessPath path, java.lang.String kind)`
`static polyglot.ast.Expr` | `effectiveExpr(polyglot.ast.Expr expr)` Returns the "effective expression" for expr.
`static AccessPath` | `exprToAccessPath(polyglot.ast.Expr e, JifContext context)`
`static AccessPath` | `exprToAccessPath(polyglot.ast.Expr e, polyglot.types.Type expectedType, JifContext context)`
`static Label` | `exprToLabel(JifTypeSystem ts, polyglot.ast.Expr e, JifContext context)`
`static Principal` | `exprToPrincipal(JifTypeSystem ts, polyglot.ast.Expr e, JifContext context)`
`static PathMap` | `getPathMap(polyglot.ast.Node n)`
`static boolean` | `isFinalAccessExprOrConst(JifTypeSystem ts, polyglot.ast.Expr e)`
`static boolean` | `isFinalAccessExprOrConst(JifTypeSystem ts, polyglot.ast.Expr e, polyglot.types.Type expectedType)`
`static Jif` | `jifExt(polyglot.ast.Node n)`
`static polyglot.ast.Node` | `updatePathMap(polyglot.ast.Node n, PathMap X)`
`static AccessPath` | `varInstanceToAccessPath(polyglot.types.VarInstance vi, polyglot.util.Position pos)`
`static AccessPath` | `varInstanceToAccessPath(polyglot.types.VarInstance vi, java.lang.String name, polyglot.util.Position pos)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### JifUtil

    public JifUtil()

Method Detail

### getPathMap

    public static PathMap getPathMap(polyglot.ast.Node n)

### jifExt

    public static Jif jifExt(polyglot.ast.Node n)

### updatePathMap

    public static polyglot.ast.Node updatePathMap(polyglot.ast.Node n,
                                                  PathMap X)

### varInstanceToAccessPath

    public static AccessPath varInstanceToAccessPath(polyglot.types.VarInstance vi,
                                                     polyglot.util.Position pos)
                                              throws polyglot.types.SemanticException

  Throws:
    `polyglot.types.SemanticException`

### varInstanceToAccessPath

    public static AccessPath varInstanceToAccessPath(polyglot.types.VarInstance vi,
                                                     java.lang.String name,
                                                     polyglot.util.Position pos)
                                              throws polyglot.types.SemanticException

  Throws:
    `polyglot.types.SemanticException`

### exprToAccessPath

    public static AccessPath exprToAccessPath(polyglot.ast.Expr e,
                                              JifContext context)
                                       throws polyglot.types.SemanticException

  Throws:
    `polyglot.types.SemanticException`

### exprToAccessPath

    public static AccessPath exprToAccessPath(polyglot.ast.Expr e,
                                              polyglot.types.Type expectedType,
                                              JifContext context)
                                       throws polyglot.types.SemanticException

  Throws:
    `polyglot.types.SemanticException`

### isFinalAccessExprOrConst

    public static boolean isFinalAccessExprOrConst(JifTypeSystem ts,
                                                   polyglot.ast.Expr e)

### isFinalAccessExprOrConst

    public static boolean isFinalAccessExprOrConst(JifTypeSystem ts,
                                                   polyglot.ast.Expr e,
                                                   polyglot.types.Type expectedType)

### exprToLabel

    public static Label exprToLabel(JifTypeSystem ts,
                                    polyglot.ast.Expr e,
                                    JifContext context)
                             throws polyglot.types.SemanticException

  Throws:
    `polyglot.types.SemanticException`

### exprToPrincipal

    public static Principal exprToPrincipal(JifTypeSystem ts,
                                            polyglot.ast.Expr e,
                                            JifContext context)
                                     throws polyglot.types.SemanticException

  Throws:
    `polyglot.types.SemanticException`

### accessPathDescrip

    public static java.lang.String accessPathDescrip(AccessPath path,
                                                     java.lang.String kind)

### effectiveExpr

    public static polyglot.ast.Expr effectiveExpr(polyglot.ast.Expr expr)

  Returns the "effective expression" for expr. That is, it strips away casts and downgrade expressions.

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