jif.types
Class JifSubstClassType_c

java.lang.Object
  extended by polyglot.types.TypeObject_c
      extended by polyglot.types.Type_c
          extended by polyglot.types.ReferenceType_c
              extended by polyglot.types.ClassType_c
                  extended by polyglot.ext.param.types.SubstClassType_c
                      extended by jif.types.JifSubstClassType_c
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, JifClassType, JifSubstType, polyglot.ext.param.types.InstType, polyglot.ext.param.types.SubstType, polyglot.types.ClassType, polyglot.types.Declaration, polyglot.types.Importable, polyglot.types.MemberInstance, polyglot.types.Named, polyglot.types.Qualifier, polyglot.types.ReferenceType, polyglot.types.Type, polyglot.types.TypeObject, polyglot.util.Copy

public class JifSubstClassType_c
extends polyglot.ext.param.types.SubstClassType_c
implements JifSubstType

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from interface polyglot.types.ClassType
polyglot.types.ClassType.Kind
 
Field Summary
 
Fields inherited from class polyglot.ext.param.types.SubstClassType_c
base, subst
 
Fields inherited from class polyglot.types.ClassType_c
decl, memberCache
 
Fields inherited from class polyglot.types.TypeObject_c
position, ts
 
Fields inherited from interface polyglot.types.ClassType
ANONYMOUS, LOCAL, MEMBER, TOP_LEVEL
 
Constructor Summary
JifSubstClassType_c(JifTypeSystem ts, polyglot.util.Position pos, polyglot.types.ClassType base, JifSubst subst)
           
 
Method Summary
 java.util.List actuals()
          Returns a list of Params, being the parameters with which this class is instantiated.
 java.util.List authority()
          The principals that grant authority to objects of this class, that is, the principals listed in the authority clause.
 java.util.List constructorCallAuthority()
          The principals whose authority is required by the context that creates a new instance of this class.
 polyglot.ext.param.types.PClass instantiatedFrom()
           
 ThisLabel thisLabel()
          Returns this class's "this" label.
 java.lang.String toString()
           
 
Methods inherited from class polyglot.ext.param.types.SubstClassType_c
base, constructors, entries, equalsImpl, fields, flags, fullName, hashCode, inStaticContext, interfaces, job, kind, memberClasses, methods, name, outer, package_, setContainer, setFlags, subst, superType, translate, typeEqualsImpl
 
Methods inherited from class polyglot.types.ClassType_c
container, copy, declaration, descendsFromImpl, fieldNamed, hasEnclosingInstance, hasEnclosingInstanceImpl, isAnonymous, isCanonical, isCastValidImpl, isClass, isEnclosed, isEnclosedImpl, isImplicitCastValidImpl, isInner, isInnerClass, isLocal, isMember, isNested, isThrowable, isTopLevel, isUncheckedException, memberClassNamed, members, print, resolver, setDeclaration, toClass
 
Methods inherited from class polyglot.types.ReferenceType_c
hasMethod, hasMethodImpl, isReference, methods, methodsNamed, toReference
 
Methods inherited from class polyglot.types.Type_c
arrayOf, arrayOf, descendsFrom, isArray, isBoolean, isByte, isCastValid, isChar, isComparable, isDouble, isFloat, isImplicitCastValid, isInt, isIntOrLess, isLong, isLongOrLess, isNull, isNumeric, isPackage, isPrimitive, isShort, isSubtype, isSubtypeImpl, isType, isVoid, numericConversionValid, numericConversionValid, numericConversionValidImpl, numericConversionValidImpl, toArray, toNull, toPackage, toPrimitive, toType, typeEquals
 
Methods inherited from class polyglot.types.TypeObject_c
equals, position, typeSystem
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface polyglot.types.ClassType
constructors, fieldNamed, hasEnclosingInstance, hasEnclosingInstanceImpl, inStaticContext, isAnonymous, isEnclosed, isEnclosedImpl, isInner, isInnerClass, isLocal, isMember, isNested, isTopLevel, kind, memberClasses, memberClassNamed, outer, resolver
 
Methods inherited from interface polyglot.types.Importable
package_
 
Methods inherited from interface polyglot.types.Named
fullName, name
 
Methods inherited from interface polyglot.types.ReferenceType
fields, hasMethod, hasMethodImpl, interfaces, members, methods, methods, methodsNamed, superType
 
Methods inherited from interface polyglot.types.Type
arrayOf, arrayOf, descendsFrom, descendsFromImpl, isArray, isBoolean, isByte, isCastValid, isCastValidImpl, isChar, isClass, isComparable, isDouble, isFloat, isImplicitCastValid, isImplicitCastValidImpl, isInt, isIntOrLess, isLong, isLongOrLess, isNull, isNumeric, isPrimitive, isReference, isShort, isSubtype, isSubtypeImpl, isThrowable, isUncheckedException, isVoid, numericConversionValid, numericConversionValid, numericConversionValidImpl, numericConversionValidImpl, print, toArray, toClass, toNull, toPrimitive, toReference, translate, typeEquals, typeEqualsImpl
 
Methods inherited from interface polyglot.types.Qualifier
isPackage, isType, toPackage, toType
 
Methods inherited from interface polyglot.types.MemberInstance
container, flags, setContainer, setFlags
 
Methods inherited from interface polyglot.types.Declaration
declaration, setDeclaration
 
Methods inherited from interface polyglot.ext.param.types.SubstType
base, entries, subst
 

Constructor Detail

JifSubstClassType_c

public JifSubstClassType_c(JifTypeSystem ts,
                           polyglot.util.Position pos,
                           polyglot.types.ClassType base,
                           JifSubst subst)
Method Detail

instantiatedFrom

public polyglot.ext.param.types.PClass instantiatedFrom()
Specified by:
instantiatedFrom in interface polyglot.ext.param.types.InstType

actuals

public java.util.List actuals()
Description copied from interface: JifClassType
Returns a list of Params, being the parameters with which this class is instantiated.

Specified by:
actuals in interface JifClassType
Specified by:
actuals in interface polyglot.ext.param.types.InstType
Returns:
List of Param

authority

public java.util.List authority()
Description copied from interface: JifClassType
The principals that grant authority to objects of this class, that is, the principals listed in the authority clause.

Specified by:
authority in interface JifClassType

constructorCallAuthority

public java.util.List constructorCallAuthority()
Description copied from interface: JifClassType
The principals whose authority is required by the context that creates a new instance of this class. More precisely, this is (possibly instantiated) parameter principals that are in the authority list. See Andrew's thesis, 4.6.2.

Specified by:
constructorCallAuthority in interface JifClassType

thisLabel

public ThisLabel thisLabel()
Description copied from interface: JifClassType
Returns this class's "this" label.

Specified by:
thisLabel in interface JifClassType
See Also:
ThisLabel

toString

public java.lang.String toString()
Specified by:
toString in interface polyglot.types.Type
Overrides:
toString in class polyglot.ext.param.types.SubstClassType_c