fabric.types
Class FabricTypeSystem_c

java.lang.Object
  extended by JifTypeSystem_c
      extended by fabric.types.FabricTypeSystem_c
All Implemented Interfaces:
FabricTypeSystem

public class FabricTypeSystem_c
extends JifTypeSystem_c
implements FabricTypeSystem


Constructor Summary
FabricTypeSystem_c(TypeSystem jlts)
           
 
Method Summary
protected  FabricArrayType arrayType(Position pos, Type type)
           
 boolean containsThisLabel(Label label)
           
 ParsedClassType createClassType(LazyClassInitializer init, Source fromSource)
           
 Context createContext()
           
 Solver createSolver(java.lang.String solverName)
           
 java.util.List defaultPackageImports()
           
 ClassType DelegatingPrincipal()
           
 DynamicPrincipal dynamicPrincipal(Position pos, AccessPath path)
           
protected  PrincipalToJavaExpr dynamicPrincipalTranslator()
           
 FabricArrayType fabricArrayOf(Position pos, Type t)
           
 FabricArrayType fabricArrayOf(Position pos, Type t, int dims)
           
 ClassType FObject()
           
 ImportTable importTable(java.lang.Package pkg)
           
 ImportTable importTable(java.lang.String sourcename, java.lang.Package pkg)
           
 boolean isCastValid(Type fromType, Type toType)
           
 boolean isFabricArray(Type t)
           
 boolean isFabricClass(Type type)
          Checks whether type is a Fabric class, that is, inherits fabric.lang.Object.
 boolean isImplicitCastValid(Type fromType, Type toType)
           
 boolean isLocalWorkerAccessPath(AccessPath ap)
           
 java.lang.String LabelClassName()
           
 java.lang.String LabelUtilClassName()
           
 Flags legalInterfaceFlags()
           
 Flags legalTopLevelClassFlags()
           
protected  LabelToJavaExpr pairLabelTranslator()
           
 Principal pathToPrincipal(Position pos, AccessPath path)
           
 java.lang.String PrincipalClassName()
           
 java.lang.String PrincipalUtilClassName()
           
 ClassType RemoteWorker()
           
 ConfPolicy representableConfProjection(Label L)
           
 IntegPolicy representableIntegProjection(Label L)
           
 java.lang.String RuntimePackageName()
           
 ClassType Store()
           
 Type strip(Type type)
           
 Subst subst(java.util.Map substMap, java.util.Map cache)
           
 FabricArrayType toFabricArray(Type t)
           
 java.lang.String translateClass(Resolver c, ClassType t)
           
 ClassType Worker()
           
 JifLocalInstance workerLocalInstance()
           
 Principal workerPrincipal(Position pos)
          Constructs a principal for the local worker.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FabricTypeSystem_c

public FabricTypeSystem_c(TypeSystem jlts)
Method Detail

FObject

public ClassType FObject()
Specified by:
FObject in interface FabricTypeSystem

PrincipalClassName

public java.lang.String PrincipalClassName()

RuntimePackageName

public java.lang.String RuntimePackageName()

PrincipalUtilClassName

public java.lang.String PrincipalUtilClassName()

LabelClassName

public java.lang.String LabelClassName()

LabelUtilClassName

public java.lang.String LabelUtilClassName()

defaultPackageImports

public java.util.List defaultPackageImports()

importTable

public ImportTable importTable(java.lang.Package pkg)

importTable

public ImportTable importTable(java.lang.String sourcename,
                               java.lang.Package pkg)

createClassType

public ParsedClassType createClassType(LazyClassInitializer init,
                                       Source fromSource)

RemoteWorker

public ClassType RemoteWorker()
Specified by:
RemoteWorker in interface FabricTypeSystem

Worker

public ClassType Worker()
Specified by:
Worker in interface FabricTypeSystem

Store

public ClassType Store()
Specified by:
Store in interface FabricTypeSystem

DelegatingPrincipal

public ClassType DelegatingPrincipal()
Specified by:
DelegatingPrincipal in interface FabricTypeSystem

workerLocalInstance

public JifLocalInstance workerLocalInstance()
Specified by:
workerLocalInstance in interface FabricTypeSystem

workerPrincipal

public Principal workerPrincipal(Position pos)
Description copied from interface: FabricTypeSystem
Constructs a principal for the local worker. Remote workers directly use DynamicPrincipal.

Specified by:
workerPrincipal in interface FabricTypeSystem
Returns:

isCastValid

public boolean isCastValid(Type fromType,
                           Type toType)

isImplicitCastValid

public boolean isImplicitCastValid(Type fromType,
                                   Type toType)

dynamicPrincipalTranslator

protected PrincipalToJavaExpr dynamicPrincipalTranslator()

createSolver

public Solver createSolver(java.lang.String solverName)

createContext

public Context createContext()

strip

public Type strip(Type type)
Specified by:
strip in interface FabricTypeSystem

subst

public Subst subst(java.util.Map substMap,
                   java.util.Map cache)

dynamicPrincipal

public DynamicPrincipal dynamicPrincipal(Position pos,
                                         AccessPath path)

pathToPrincipal

public Principal pathToPrincipal(Position pos,
                                 AccessPath path)

isLocalWorkerAccessPath

public boolean isLocalWorkerAccessPath(AccessPath ap)
Specified by:
isLocalWorkerAccessPath in interface FabricTypeSystem

pairLabelTranslator

protected LabelToJavaExpr pairLabelTranslator()

representableConfProjection

public ConfPolicy representableConfProjection(Label L)
Specified by:
representableConfProjection in interface FabricTypeSystem

representableIntegProjection

public IntegPolicy representableIntegProjection(Label L)
Specified by:
representableIntegProjection in interface FabricTypeSystem

isFabricClass

public boolean isFabricClass(Type type)
Description copied from interface: FabricTypeSystem
Checks whether type is a Fabric class, that is, inherits fabric.lang.Object.

Specified by:
isFabricClass in interface FabricTypeSystem

isFabricArray

public boolean isFabricArray(Type t)
Specified by:
isFabricArray in interface FabricTypeSystem

toFabricArray

public FabricArrayType toFabricArray(Type t)
Specified by:
toFabricArray in interface FabricTypeSystem

legalTopLevelClassFlags

public Flags legalTopLevelClassFlags()

legalInterfaceFlags

public Flags legalInterfaceFlags()

containsThisLabel

public boolean containsThisLabel(Label label)
Specified by:
containsThisLabel in interface FabricTypeSystem

fabricArrayOf

public FabricArrayType fabricArrayOf(Position pos,
                                     Type t)
Specified by:
fabricArrayOf in interface FabricTypeSystem

fabricArrayOf

public FabricArrayType fabricArrayOf(Position pos,
                                     Type t,
                                     int dims)
Specified by:
fabricArrayOf in interface FabricTypeSystem

arrayType

protected FabricArrayType arrayType(Position pos,
                                    Type type)

translateClass

public java.lang.String translateClass(Resolver c,
                                       ClassType t)