Package polyglot.types

Contains the type system and all related classes.

See:
          Description

Interface Summary
ArrayType An ArrayType represents an array of other types.
ClassType A ClassType represents a class, either loaded from a classpath, parsed from a source file, or obtained from other source.
CodeInstance A CodeInstance contains the type information for a Java code-chunk (a method, a constructor, or initializer).
ConstructorInstance A ConstructorInstance contains type information for a constructor.
Context A context represents a stack of scopes used for looking up types, methods, and variables.
FieldInstance A FieldInstance contains type information for a field.
Importable An Importable is a type object that can be imported by another type object.
InitializerInstance A InitializerInstance contains the type information for a static or anonymous initializer.
LazyClassInitializer A LazyClassInitializer is responsible for initializing members of a class after it has been created.
LocalInstance A LocalInstance contains type information for a local variable.
MemberInstance A MemberInstance is an entity that can be a member of a class.
MethodInstance A MethodInstance represents the type information for a Java method.
Named A Named is a TypeObject that is named.
NullType A NullType represents the type of the Java null literal.
Package An Package represents a Java package.
ParsedClassType A ParsedClassType represents a class loaded from a source file.
PlaceHolder A place holder type used to serialize types that cannot be serialized.
PrimitiveType A PrimitiveType represents a type which may not be directly coerced to java.lang.Object (under the standard Java type system).
ProcedureInstance A ProcedureInstance contains the type information for a Java procedure (either a method or a constructor).
Qualifier A Qualifier can be used to qualify a type: it can be either a package or a named class type.
ReferenceType A ReferenceType represents a reference type: a type which contains methods and fields and which is a subtype of Object.
Resolver A Resolver is responsible for looking up types and packages by name.
TopLevelResolver  
Type A Type is the base type of all classes which represent types.
TypeObject A TypeObject is a compile-time value created by the type system.
TypeSystem The TypeSystem defines the types of the language and how they are related.
UnknownPackage An unknown package.
UnknownQualifier An unknown type qualifier.
UnknownType An unknown type.
VarInstance A VarInstance contains type information for a variable.
 

Class Summary
CachingResolver An CachingResolver memoizes another Resolver
ClassContextResolver A ClassContextResolver looks up type names qualified with a class name.
ClassResolver ClassResolver Overview: A ClassResolver is responsible for taking in the name of a class and returning a ClassType corresponding to that name.
ClassType.Kind  
CompoundResolver An CompoundResolver resolves names using more than one context.
Flags Flags is an immutable set of class, method, or field modifiers.
ImportTable An ImportTable is a type of ClassResolver that corresponds to a particular source file.
LoadedClassResolver Loads class information from class files, or serialized class infomation from within class files.
PackageContextResolver A PackageContextResolver is responsible for looking up types and packages in a package by name.
PrimitiveType.Kind The kind of the primitive type.
SourceClassResolver Loads class information from source files, class files, or serialized class infomation from within class files.
TableResolver A class resolver implemented as a map from names to types.
 

Exception Summary
BadSerializationException Signals an error in the class resolver system.
NoClassException Signals an error in the class resolver system.
NoMemberException Signals an error in the class resolver system.
SemanticException Thrown during any number of phases of the compiler during which a semantic error may be detected.
 

Package polyglot.types Description

Contains the type system and all related classes. This includes the definitions of Type as well as all the concrete classes for it (e.g., for classes and primitives ). It includes the TypeSystem interface. All type objects, including Type but also objects representing variables, methods, constructors, etc., implement the TypeObject interface.

See Also:
TypeSystem, Type, TypeObject