polyglot.ext.param.types
Class PClass_c
java.lang.Object
polyglot.ext.jl.types.TypeObject_c
polyglot.ext.param.types.PClass_c
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, PClass, Importable, Named, TypeObject, Copy
- Direct Known Subclasses:
- MuPClass_c
public abstract class PClass_c
- extends TypeObject_c
- implements PClass
A base implementation for parametric classes.
This class is a wrapper around
a ClassType that associates formal parameters with the class.
formals can be any type object.
- See Also:
- Serialized Form
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface polyglot.util.Copy |
copy |
PClass_c
protected PClass_c()
PClass_c
public PClass_c(TypeSystem ts)
PClass_c
public PClass_c(TypeSystem ts,
Position pos)
instantiate
public ClassType instantiate(Position pos,
java.util.List actuals)
throws SemanticException
- Description copied from interface:
PClass
- Instantiate
this
.
- Specified by:
instantiate
in interface PClass
- Parameters:
pos
- The position of the instantiationactuals
- The actual type parameters for the instantiation
- Throws:
SemanticException
isCanonical
public boolean isCanonical()
- Description copied from interface:
TypeObject
- Return true if the type object contains no unknown/ambiguous types.
- Specified by:
isCanonical
in interface TypeObject
name
public java.lang.String name()
- Description copied from interface:
Named
- Simple name of the type object. Anonymous classes do not have names.
- Specified by:
name
in interface Named
fullName
public java.lang.String fullName()
- Description copied from interface:
Named
- Full dotted-name of the type object. For a package, top level class,
top level interface, or primitive type, this is
the fully qualified name. For a member class or interface that is
directly enclosed in a class or interface with a fully qualified name,
then this is the fully qualified name of the member class or interface.
For local and anonymous classes, this method returns a string that is
not the fully qualified name (as these classes do not have fully
qualified names), but that may be suitable for debugging or error
messages.
- Specified by:
fullName
in interface Named
package_
public Package package_()
- Specified by:
package_
in interface Importable