|
||||||||||
| PREV NEXT | FRAMES NO FRAMES | |||||||||
| Packages that use SymbolData | |
|---|---|
| edu.rice.cs.javalanglevels | |
| Uses of SymbolData in edu.rice.cs.javalanglevels |
|---|
| Subclasses of SymbolData in edu.rice.cs.javalanglevels | |
|---|---|
class |
ArrayData
Represents the data for an array class. |
class |
PrimitiveData
Represents the data for a given primitive type. |
| Fields in edu.rice.cs.javalanglevels declared as SymbolData | |
|---|---|
static SymbolData |
SymbolData.AMBIGUOUS_REFERENCE
Used when 2 or more SymbolDatas could match |
static SymbolData |
SymbolData.BOOLEAN_TYPE
This anonymous class represents the boolean primitive type |
static SymbolData |
SymbolData.BYTE_TYPE
This anonymous class represents the byte primitive type |
static SymbolData |
SymbolData.CHAR_TYPE
This anonymous class represents the char primitive type. |
static SymbolData |
SymbolData.DOUBLE_TYPE
This represents the double primitive |
static SymbolData |
SymbolData.EXCEPTION
Used for an exception |
static SymbolData |
SymbolData.FLOAT_TYPE
This represents the float primitive |
static SymbolData |
SymbolData.INT_TYPE
This anonymous class represents the int primitive type. |
static SymbolData |
SymbolData.LONG_TYPE
This represents the long primitive |
static SymbolData |
SymbolData.NOT_FOUND
Used to signal a symbol table search that failed. |
static SymbolData |
SymbolData.NULL_TYPE
Singleton class representing null |
static SymbolData |
SymbolData.SHORT_TYPE
This anonymous class represents the short primitive type. |
static SymbolData |
SymbolData.SUPER_CONSTRUCTOR
Used when a super constructor invocation is seen. |
static SymbolData |
SymbolData.THIS_CONSTRUCTOR
Used when a this constructor invocation is seen. |
static SymbolData |
SymbolData.VOID_TYPE
Used for the void type. |
| Fields in edu.rice.cs.javalanglevels with type parameters of type SymbolData | |
|---|---|
HashMap<String,SymbolData> |
LanguageLevelVisitor._genericTypes
|
protected LinkedList<SymbolData> |
Data._innerClasses
Any inner classes that are defined in this data. |
static Hashtable<SymbolData,LanguageLevelVisitor> |
LanguageLevelConverter._newSDs
Stores all the SymbolDatas (and corresponding visitors) created as in course of conversion. |
protected LinkedList<Pair<SymbolData,JExpression>> |
SpecialTypeChecker._thrown
The list of SymbolDatas corresponding to exceptions thrown in this body. |
| Methods in edu.rice.cs.javalanglevels that return SymbolData | |
|---|---|
static SymbolData |
LanguageLevelConverter._classFile2SymbolData(String qualifiedClassName)
Defines library classes assuming they are available to the PathClassLoader. |
static SymbolData |
LanguageLevelConverter._classFile2SymbolData(String qualifiedClassName,
String programRoot)
Uses the ASM class reader to read the class file corresponding to the class in the specified directory, and uses the information from ASM to build a SymbolData corresponding to the class. |
protected SymbolData |
ExpressionTypeChecker._getLeastRestrictiveType(SymbolData sd1,
SymbolData sd2)
Returns the least restrictive numerical type. |
static SymbolData |
LanguageLevelConverter._getPrimitiveSymbolData(String className)
Checks to see if the provided class name is the name of a primative type, and if so, returns the corresponding SymbolData. |
protected SymbolData |
LanguageLevelVisitor._getSymbolDataFromFileSystem(String qualifiedClassName,
SourceInfo si,
boolean resolve,
boolean addError)
Checks the file system for the class name, returning the corresponding SymbolData if there is an up-to-date match. |
protected SymbolData |
LanguageLevelVisitor._identifyType(String name,
SourceInfo si,
String enclosingClassName)
Identifies the SymbolData matching name in symbolTable. |
protected SymbolData |
LanguageLevelVisitor._lookupTypeFromWithinClass(ReferenceType rt,
String qualifiedClassName)
Looks up the type with name rt (which is arbitrary source text for a type) from within the class name qualifiedClassName. |
protected SymbolData |
LanguageLevelVisitor.addInnerSymbolData(SourceInfo si,
String qualifiedTypeName,
Data enclosing)
|
protected SymbolData |
LanguageLevelVisitor.createImportedSymbolContinuation(String qualifiedTypeName,
SourceInfo si)
Create a continuation for imported class specified by qualifiedName if one does not already exist. |
protected SymbolData |
LanguageLevelVisitor.defineAnonymousSymbolData(AnonymousClassInstantiation anonInst,
String qualifiedAnonName,
String superName)
This method takes in an AnonymousClassInstantion, generates a SymbolData for it, and adds the name and SymbolData pair to the symbol table. |
protected SymbolData |
LanguageLevelVisitor.defineInnerSymbolData(TypeDefBase typeDefBase,
String relName,
String qualifiedTypeName,
Data enclosing)
Takes in a TypeDefBase (which is either an InnerClassDef or an InnerInterfaceDef) and creates a SymbolData for it, either by converting a continuation to it or by creating a new symbol (if no continuationis present). |
protected SymbolData |
LanguageLevelVisitor.defineSymbolData(TypeDefBase typeDefBase,
String qualifiedTypeName)
Overloaded signature for defineSymbolData. |
protected SymbolData |
LanguageLevelVisitor.defineSymbolData(TypeDefBase typeDefBase,
String qualifiedTypeName,
String enclosingClassName)
Given a TypeDefBase (which is either a ClassDef or an InterfaceDef) and the corresponding qualifiedTypeName, this method generates a SymbolData, and adds the name and SymbolData pair to the symbol table. |
protected static SymbolData |
TypeChecker.defineTestCaseClass()
Adds an appropriate definition of junit.framework.TestCase to symbolTable. |
protected SymbolData |
SpecialTypeChecker.findClassReference(TypeData lhs,
String namePiece,
JExpression jexpr)
Return the symbol data corresponding to the lhs and the namePiece, if possible. |
protected SymbolData |
BodyTypeChecker.getCommonSuperType(SymbolData s1,
SymbolData s2)
Check if the two given SymbolDatas have a common super type. |
protected SymbolData |
TypeChecker.getCommonSuperTypeBaseCase(SymbolData sdLeft,
SymbolData sdRight)
Returns the common super type of the two types provided. |
SymbolData |
ArrayData.getElementType()
|
SymbolData |
Data.getEnclosingClass()
|
SymbolData |
Data.getInnerClassOrInterface(String relName)
Takes in a relative name and tries to match it with one of this Data's inner classes or inner interfaces. |
protected SymbolData |
SymbolData.getInnerClassOrInterfaceHelper(String nameToMatch,
int firstIndexOfDot)
Takes in a name and tries to match it with one of this Data's inner classes or inner interfaces. |
protected SymbolData |
Data.getInnerClassOrInterfaceHelper(String relName,
int firstIndexOfDot)
Takes in a relative name and tries to match it with one of this Data's inner classes or inner interfaces. |
SymbolData |
Data.getNextAnonymousInnerClass()
Determines the name of the next anonymous inner class (enclosing class name + '$' + sequence number). |
protected SymbolData |
LanguageLevelVisitor.getQualifiedSymbolData(String qualClassName)
Tries to find (or in some cases creates) the SymbolData for the fiven fully qualified class name. |
protected SymbolData |
LanguageLevelVisitor.getQualifiedSymbolData(String qualClassName,
SourceInfo si)
Tries to find (or in some cases creates) the SymbolData for the fiven fully qualified class name. |
protected SymbolData |
LanguageLevelVisitor.getQualifiedSymbolData(String qualClassName,
SourceInfo si,
boolean resolve)
This method tries to find (or in some cases creates) the SymbolData for the fiven fully qualified class name. |
protected SymbolData |
LanguageLevelVisitor.getQualifiedSymbolData(String qualClassName,
SourceInfo si,
boolean resolve,
boolean fromClassFile,
boolean addError)
This method tries to find (or in some cases creates) the SymbolData for the fiven fully qualified class name or class name. |
SymbolData |
MethodData.getReturnType()
|
SymbolData |
SymbolData.getSuperClass()
|
SymbolData |
BodyData.getSymbolData()
Return the enclosing SymbolData, corresponding to the enclosing class. |
SymbolData |
SymbolData.getSymbolData()
|
SymbolData |
InstanceData.getSymbolData()
|
abstract SymbolData |
TypeData.getSymbolData()
|
SymbolData |
PackageData.getSymbolData()
|
abstract SymbolData |
Data.getSymbolData()
Return the enclosing getSymbolData() |
SymbolData |
TypeChecker.getSymbolData(boolean giveAmbigException,
String className,
Data enclosingData,
JExpression jexpr,
boolean giveException)
Returns the SymbolData corresponding to the name className. |
protected SymbolData |
LanguageLevelVisitor.getSymbolData(File file,
String pkg,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
String enclosingClassName,
String className,
SourceInfo si,
boolean addError,
boolean checkImports)
This method processes classNames which may or may not include qualifying prefixes. |
SymbolData |
TypeChecker.getSymbolData(String className,
Data enclosingData,
JExpression jexpr)
Returns the SymbolData corresponding to the name className. |
SymbolData |
TypeChecker.getSymbolData(String className,
Data enclosingData,
JExpression jexpr,
boolean giveException)
Call the next version of GetSymbolData, but pass it giveException as the flag for whether or not to give ambigException. |
SymbolData |
TypeChecker.getSymbolData(String className,
JExpression jexpr,
boolean giveException,
boolean runnableNotOkay)
Returns the SymbolData corresponding to the name className, assuming that className does not refer to an unqualified or partially-qualified inner class. |
SymbolData |
LanguageLevelVisitor.getSymbolData(String className,
SourceInfo si)
Call getSymbolData with some default values. |
protected SymbolData |
LanguageLevelVisitor.getSymbolData(String className,
SourceInfo si,
boolean addError)
Call getSymbolData with some default values. |
protected SymbolData |
LanguageLevelVisitor.getSymbolData(String className,
SourceInfo si,
boolean addError,
boolean checkImports)
Simple signature for getSymbol that uses the current context to fill in context information, i.e., it passes _file for file, _package for pkg, _importedFiles for importedFiles, _importedPackages for importedPackages, and _enclosingClass for enclosingClassName. |
protected SymbolData |
LanguageLevelVisitor.getSymbolData(TypeData lhs,
String name,
SourceInfo si,
boolean addError)
Try to look up name from the context of the lhs. |
static SymbolData |
LanguageLevelConverter.getSymbolDataForClassFile(String className,
String programRoot)
Resolves a reference to a class embedded in a class file. |
SymbolData |
VariableData.getType()
|
SymbolData |
ExpressionTypeChecker.handleAnonymousClassInstantiation(AnonymousClassInstantiation that,
SymbolData superC)
Do the work that is shared between SimpleAnonymousClassInstantiation and ComplexAnonymousClassInstantiation. |
protected SymbolData |
LanguageLevelVisitor.makeContinuation(SourceInfo si,
String qualClassName)
This method creates the specified continuation in the symbol table. |
SymbolData |
SymbolData.resolve(SourceInfo si,
LanguageLevelVisitor llv)
Resolves this symbol using the visitor llv. |
SymbolData |
LanguageLevelVisitor.resolveSymbol(SourceInfo si,
SymbolData cont)
Resolves the continuation cont. |
| Methods in edu.rice.cs.javalanglevels that return types with arguments of type SymbolData | |
|---|---|
LinkedList<SymbolData> |
Data.getInnerClasses()
|
LinkedList<SymbolData> |
SymbolData.getInnerInterfaces()
|
ArrayList<SymbolData> |
SymbolData.getInterfaces()
|
Iterator<SymbolData> |
SymbolData.innerClassesAndInterfacesIterator()
Iterate over first the inner classes and then the inner interfaces. |
Iterator<SymbolData> |
Data.innerClassesAndInterfacesIterator()
|
| Methods in edu.rice.cs.javalanglevels with parameters of type SymbolData | |
|---|---|
protected void |
TypeChecker._checkAbstractMethods(SymbolData sd,
JExpression classDef)
The method will add an error for each abstract method in the current SymbolData's inheritance hierarchy that does not have a concrete implementation. |
protected SymbolData |
ExpressionTypeChecker._getLeastRestrictiveType(SymbolData sd1,
SymbolData sd2)
Returns the least restrictive numerical type. |
protected Pair<LinkedList<MethodData>,LinkedList<MethodData>> |
TypeChecker._getMatchingMethods(String methodName,
SymbolData enclosingSD,
InstanceData[] arguments,
JExpression jexpr,
boolean isConstructor,
SymbolData thisSD)
Finds and returns all matching methods. |
protected static boolean |
TypeChecker._isAssignableFrom(SymbolData sdLeft,
SymbolData sdRight)
Return whether the value on the right can be assigned to the value on the left. |
protected boolean |
TypeChecker._isAssignableFromWithoutAutoboxing(SymbolData sdLeft,
SymbolData sdRight)
Return whether the value on the right can be assigned to the value on the left. |
protected MethodData |
TypeChecker._lookupMethod(String methodName,
SymbolData enclosingSD,
InstanceData[] arguments,
JExpression jexpr,
String errorMsg,
boolean isConstructor,
SymbolData thisSD)
Finds which SymbolData this method is in, beginning at this SymbolData and recursively visiting super classes. |
protected MethodData |
TypeChecker._lookupMethodHelper(String methodName,
SymbolData enclosingSD,
InstanceData[] arguments,
JExpression jexpr,
boolean isConstructor,
SymbolData thisSD)
Pass a default value |
protected MethodData |
TypeChecker._lookupMethodHelper(String methodName,
SymbolData enclosingSD,
InstanceData[] arguments,
JExpression jexpr,
boolean isConstructor,
SymbolData thisSD,
LinkedList<MethodData> matchingMethods)
Finds which SymbolData this method is in, beginning at this SymbolData and recursively visiting super classes. |
protected static void |
LanguageLevelVisitor.addGeneratedMethod(SymbolData sd,
MethodData md)
If the method being generated already exists in the SymbolData, throw an error, because generated methods cannot be overwritten. |
void |
Data.addInnerClass(SymbolData innerClass)
Add the specified SymbolData to the end of the list of inner classes. |
void |
SymbolData.addInnerInterface(SymbolData innerInterface)
Add the specified innerInterface to the list of innerInterfaces |
void |
SymbolData.addInterface(SymbolData interphace)
Add an interface to the list of interfaces. |
void |
LanguageLevelVisitor.anonymousClassInstantiationHelper(AnonymousClassInstantiation that,
SymbolData enclosing,
String superName)
Do the common work for SimpleAnonymousClassInstantiations and ComplexAnonymousClassInstantiations and in FullJava and Functional Java. |
static boolean |
TypeChecker.checkAccess(JExpression piece,
ModifiersAndVisibility mav,
String name,
SymbolData enclosingSD,
SymbolData thisSD,
String dataType)
Checks that the method is accessible given the SymbolData it's in and the current SymbolData. |
static boolean |
TypeChecker.checkAccess(JExpression piece,
ModifiersAndVisibility mav,
String name,
SymbolData enclosingSD,
SymbolData thisSD,
String dataType,
boolean addError)
Determines if thisSD can reference specified name defined in enclosingSD. |
static boolean |
TypeChecker.checkAccess(ModifiersAndVisibility mav,
SymbolData enclosingSD,
SymbolData thisSD)
Call this version when you don't want to add an error--only take in what is necessary to do the check, give default values for anything that will not be used. |
protected static boolean |
SymbolData.checkDifferentReturnTypes(MethodData md,
SymbolData sd,
boolean addError,
JavaVersion version)
Called to make sure that no method has the same name and parameters as a method it inherits while having different return types. |
protected static boolean |
SymbolData.checkDifferentReturnTypes(MethodData md,
SymbolData sd,
JavaVersion version)
Call checkDifferentReturnTypes with addError set to true by default |
protected boolean |
TypeChecker.checkForCyclicInheritance(SymbolData sd,
LinkedList<SymbolData> hierarchy,
TypeDefBase tdb)
Checks for cyclic inheritance by traversing sd's list of superclasses and interfaces and checking if we've seen them before. |
InstanceData |
ExpressionTypeChecker.classInstantiationHelper(ClassInstantiation that,
SymbolData classToInstantiate)
Visit the ClassInstantiation's arguments. |
protected void |
BodyTypeChecker.compareThrownAndCaught(TryCatchStatement that,
SymbolData[] caught_array,
LinkedList<Pair<SymbolData,JExpression>> thrown)
Make sure that every Exception in thrown is either in caught or in the list of what can be thrown from where we are. |
protected void |
TryCatchBodyTypeChecker.compareThrownAndCaught(TryCatchStatement that,
SymbolData[] caught_array,
LinkedList<Pair<SymbolData,JExpression>> thrown)
Make sure that every Exception in thrown is either in caught or in the list of what can be thrown from where we are. |
void |
IntermediateVisitor.complexAnonymousClassInstantiationHelper(ComplexAnonymousClassInstantiation that,
SymbolData enclosing)
Do not resolve the super class type of this instantiation, because it will have already been resolved (it is an inner class of the enclosing SD. |
void |
FullJavaVisitor.complexAnonymousClassInstantiationHelper(ComplexAnonymousClassInstantiation that,
SymbolData enclosing)
Do not resolve the super class type of this instantiation, because it will have already been resolved (it is an inner class of the enclosing of this instantiation. |
protected static void |
LanguageLevelVisitor.createAccessors(SymbolData sd,
File file)
Create a method that is an accessor for each field in the class. |
void |
FullJavaVisitor.createConstructor(SymbolData sd)
At the FullJava Level, there is no code augmentation. |
void |
LanguageLevelVisitor.createConstructor(SymbolData sd)
Creates the automatically generated constructor for this class. |
protected void |
FullJavaVisitor.createEquals(SymbolData sd)
This is a noop, because we do not do code augmentation at the Advanced Level. |
protected void |
LanguageLevelVisitor.createEquals(SymbolData sd)
Creates a method called equals() that takes in an Object argument and returns a boolean. |
protected void |
FullJavaVisitor.createHashCode(SymbolData sd)
This is a noop, because we do not do code augmentation at the Advanced Level. |
protected void |
LanguageLevelVisitor.createHashCode(SymbolData sd)
Creates a method called hashCode that returns an int. |
protected MethodData |
LanguageLevelVisitor.createMethodData(MethodDef that,
SymbolData sd)
Creates a MethodData corresponding to the MethodDef within the context of the SymbolData sd. |
protected void |
FullJavaVisitor.createToString(SymbolData sd)
This is a noop, because we do not do code augmentation at the Advanced Level. |
protected void |
LanguageLevelVisitor.createToString(SymbolData sd)
Create a method called toString that returns type String. |
ArrayData |
LanguageLevelVisitor.defineArraySymbolData(SymbolData eltSd,
LanguageLevelVisitor llv,
SourceInfo si)
|
TypeData |
SpecialTypeChecker.forArrayInitializerHelper(ArrayInitializer that,
SymbolData type)
Makes sure that the specified type is an array type, and then examines the elements in the array initializer and makes sure each has a type assignable to the elementType of the specified array type. |
TypeData |
BodyTypeChecker.forCatchBlockOnly(CatchBlock that,
SymbolData exception_result,
TypeData block_result)
|
protected static TypeData[] |
Augmentor.formalParameters2TypeDatas(FormalParameter[] fps,
SymbolData enclosing)
Convert the provided FormalParameter array into an array of TypeData corresponding to the types of the FormalParameters. |
protected VariableData[] |
LanguageLevelVisitor.formalParameters2VariableData(FormalParameter[] fps,
SymbolData enclosing)
Convert the specified array of FormalParameters into an array of VariableDatas which is then returned. |
protected SymbolData |
BodyTypeChecker.getCommonSuperType(SymbolData s1,
SymbolData s2)
Check if the two given SymbolDatas have a common super type. |
protected SymbolData |
TypeChecker.getCommonSuperTypeBaseCase(SymbolData sdLeft,
SymbolData sdRight)
Returns the common super type of the two types provided. |
static VariableData |
TypeChecker.getFieldOrVariable(String text,
Data data,
SymbolData thisSD,
JExpression piece)
Return the field or variable with the name text inside of data. |
static VariableData |
TypeChecker.getFieldOrVariable(String text,
Data data,
SymbolData thisSD,
JExpression piece,
LinkedList<VariableData> vars)
|
static VariableData |
TypeChecker.getFieldOrVariable(String text,
Data data,
SymbolData thisSD,
JExpression piece,
LinkedList<VariableData> vars,
boolean shouldRecur)
|
static VariableData |
TypeChecker.getFieldOrVariable(String text,
Data data,
SymbolData thisSD,
JExpression piece,
LinkedList<VariableData> vars,
boolean shouldRecur,
boolean addError)
This method checks if the identifier called text is a field or variable visible from the context of the param "data" and is accessible from the context of thisSD. |
SymbolData |
ExpressionTypeChecker.handleAnonymousClassInstantiation(AnonymousClassInstantiation that,
SymbolData superC)
Do the work that is shared between SimpleAnonymousClassInstantiation and ComplexAnonymousClassInstantiation. |
void |
SpecialTypeChecker.handleUncheckedException(SymbolData sd,
JExpression j)
If an exception is thrown but not caught, throw the appropriate error, based on the JExpression. |
void |
ExpressionTypeChecker.handleUncheckedException(SymbolData sd,
JExpression j)
Throw the appropriate error, based on the type of the JExpression where the exception was unchecked |
boolean |
SymbolData.hasInterface(SymbolData i)
Check to see if the interface i appears anywhere in the hierarchy for this class/interface |
boolean |
SymbolData.isAssignableTo(SymbolData assignTo,
JavaVersion version)
See if this can be assigned to assignTo. |
boolean |
ArrayData.isAssignableTo(SymbolData assignTo,
JavaVersion version)
Returns true only under the following conditions: if assignTo is a class, assignTo must be java.lang.Object. |
boolean |
SymbolData.isCastableTo(SymbolData castTo,
JavaVersion version)
See if this can be cast as a castTo. |
boolean |
ArrayData.isCastableTo(SymbolData castTo,
JavaVersion version)
Return true iff castTo is a class type and is Object castTo is an interface type that is Serializable or Clonable castTo is an array type then this and castTo must have element types that are either the same primitive type or (both reference types and this's element type must be castable to castTo's element type) |
boolean |
SpecialTypeChecker.isCheckedException(SymbolData sd,
JExpression that)
Returns whether the sd is a checked exception, i.e. |
boolean |
ExpressionTypeChecker.isCheckedException(SymbolData sd,
JExpression that)
Returns whether the sd is a checked exception, i.e. |
protected boolean |
BodyTypeChecker.isException(SymbolData sd)
|
boolean |
SymbolData.isInnerClassOf(SymbolData outerClass,
boolean stopAtStatic)
Checks to see if this SymbolData is an inner class of outerClass (that is, that outerClass appears somewhere in its enclosing data chain. |
boolean |
SymbolData.isSubClassOf(SymbolData sd)
Depth-first traversal of the tree of enclosing data checking to see if sd is above this SymbolData in the class hierarchy. |
boolean |
BodyTypeChecker.isUncaughtCheckedException(SymbolData sd,
JExpression that)
Return true if the Exception is unchecked, and false otherwise. |
boolean |
SpecialTypeChecker.isUncaughtCheckedException(SymbolData sd,
JExpression that)
Return true if the Exception is a checked exception yet is not caught or declared to be thrown, and false otherwise. |
boolean |
ExpressionTypeChecker.isUncaughtCheckedException(SymbolData sd,
JExpression that)
Return true if the Exception is a checked exception yet is not caught or declared to be thrown, and false otherwise. |
static MethodData |
MethodData.make(String name,
ModifiersAndVisibility modifiersAndVisibility,
TypeParameter[] typeParameters,
SymbolData returnType,
VariableData[] params,
String[] thrown,
SymbolData enclosingClass,
JExpression jexpr)
Factory methods used for debugging purposes among other things. |
protected void |
BodyTypeChecker.makeSureCaughtStuffWasThrown(TryCatchStatement that,
SymbolData[] caught_array,
LinkedList<Pair<SymbolData,JExpression>> thrown)
Make sure that every exception that is caught could have been thrown in the try statement |
LanguageLevelVisitor |
IntermediateVisitor.newClassBodyVisitor(SymbolData anonSD,
String anonName)
Factory method inherited from LLV class. |
LanguageLevelVisitor |
LanguageLevelVisitor.newClassBodyVisitor(SymbolData anonSD,
String anonName)
Factory method that constructs an appropriate class body visitor for this visitor class (either ClassBodyIntermediateVisitor or ClassBodyFullJavaVisitor). |
protected boolean |
TypeChecker.notRightPackage(SymbolData sd)
Return false if the symbolData is in the wrong package. |
SymbolData |
LanguageLevelVisitor.resolveSymbol(SourceInfo si,
SymbolData cont)
Resolves the continuation cont. |
void |
MethodData.setReturnType(SymbolData rt)
set the return type to be rt |
void |
SymbolData.setSuperClass(SymbolData superClass)
Set the super class to the specified value. |
void |
VariableData.setType(SymbolData type)
Sets the SymbolData representing the type of this variable. |
void |
IntermediateVisitor.simpleAnonymousClassInstantiationHelper(SimpleAnonymousClassInstantiation that,
SymbolData enclosing)
Look up the supertype of this class instantiation and add it to the symbol table. |
void |
FullJavaVisitor.simpleAnonymousClassInstantiationHelper(SimpleAnonymousClassInstantiation that,
SymbolData enclosing)
Look up the super type of this class instantiation and add it to the symbol table. |
protected static void |
Augmentor.writeAccessors(SymbolData sd,
int baseIndent)
Write an accessor method for each previously generated (determined by MethodData.isGenerated()) accessor. |
protected static void |
Augmentor.writeConstructor(String className,
SymbolData sd,
int baseIndent)
Write a constructor for a previously generated (determined by MethodData.isGenerated()) constructor, if one exists. |
protected static void |
Augmentor.writeEquals(String className,
SymbolData sd,
int baseIndent,
String valueEqualsName)
Write an equals method that requires the Object parameter to be an instanceof this type and have matching fields for each of the fields with visible accessors. |
protected static void |
Augmentor.writeHashCode(String className,
SymbolData sd,
int baseIndent,
boolean waitForVarDef,
String valueHashCodeName)
Write a hashCode method that is consistent with the generated equals(Object) method. |
protected static void |
Augmentor.writeSafeEquals(String className,
SymbolData sd,
int baseIndent,
String valueEqualsName,
MethodData[] accessors)
Helper to writeEquals; writes an equals that handles infinitely-recursive data structures. |
protected static void |
Augmentor.writeSafeHashCode(String className,
SymbolData sd,
int baseIndent,
boolean waitForVarDef,
String valueHashCodeName,
MethodData[] accessors)
Helper to writeHashCode; writes a hashCode that handles infinitely-recursive data structures. |
protected static void |
Augmentor.writeSafeToString(SymbolData sd,
int baseIndent,
String valueToStringName,
MethodData[] accessors)
Helper to writeToString; writes a toString that handles infinitely-recursive data structures. |
protected static void |
Augmentor.writeSimpleEquals(String className,
SymbolData sd,
int baseIndent,
String valueEqualsName,
MethodData[] accessors)
Helper to writeEquals; writes a simple equals that does not handle infinitely-recursive data structures. |
protected static void |
Augmentor.writeSimpleHashCode(String className,
SymbolData sd,
int baseIndent,
boolean waitForVarDef,
String valueHashCodeName,
MethodData[] accessors)
Helper to writeHashCode; writes a simple hashCode that does not handle infinitely-recursive data structures. |
protected static void |
Augmentor.writeSimpleToString(SymbolData sd,
int baseIndent,
String valueToStringName,
MethodData[] accessors)
Helper to writeToString; writes a short toString that does not handle infinitely-recursive data structures. |
protected static void |
Augmentor.writeToString(SymbolData sd,
int baseIndent,
String valueToStringName)
Write a toString method that prints out each field with a visible accessor. |
| Method parameters in edu.rice.cs.javalanglevels with type arguments of type SymbolData | |
|---|---|
protected boolean |
TypeChecker.checkForCyclicInheritance(SymbolData sd,
LinkedList<SymbolData> hierarchy,
TypeDefBase tdb)
Checks for cyclic inheritance by traversing sd's list of superclasses and interfaces and checking if we've seen them before. |
protected void |
BodyTypeChecker.compareThrownAndCaught(TryCatchStatement that,
SymbolData[] caught_array,
LinkedList<Pair<SymbolData,JExpression>> thrown)
Make sure that every Exception in thrown is either in caught or in the list of what can be thrown from where we are. |
protected void |
TryCatchBodyTypeChecker.compareThrownAndCaught(TryCatchStatement that,
SymbolData[] caught_array,
LinkedList<Pair<SymbolData,JExpression>> thrown)
Make sure that every Exception in thrown is either in caught or in the list of what can be thrown from where we are. |
protected BodyTypeChecker |
BodyTypeChecker.createANewInstanceOfMe(BodyData bodyData,
File file,
String pakage,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
LinkedList<VariableData> vars,
LinkedList<Pair<SymbolData,JExpression>> thrown)
Create a new instance of this class for visiting inner bodies. |
protected BodyTypeChecker |
ConstructorBodyTypeChecker.createANewInstanceOfMe(BodyData bodyData,
File file,
String pakage,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
LinkedList<VariableData> vars,
LinkedList<Pair<SymbolData,JExpression>> thrown)
Creates a new instance of this class for visiting inner bodies. |
protected BodyTypeChecker |
TryCatchBodyTypeChecker.createANewInstanceOfMe(BodyData bodyData,
File file,
String pakage,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
LinkedList<VariableData> vars,
LinkedList<Pair<SymbolData,JExpression>> thrown)
Create a new instance of this class for visiting inner bodies. |
protected void |
BodyTypeChecker.makeSureCaughtStuffWasThrown(TryCatchStatement that,
SymbolData[] caught_array,
LinkedList<Pair<SymbolData,JExpression>> thrown)
Make sure that every exception that is caught could have been thrown in the try statement |
void |
Data.setInnerClasses(LinkedList<SymbolData> innerClasses)
Sets the inner classes of this Data. |
void |
SymbolData.setInterfaces(ArrayList<SymbolData> interfaces)
Set the interfaces to be the specified list |
| Constructors in edu.rice.cs.javalanglevels with parameters of type SymbolData | |
|---|---|
ArrayData(SymbolData sd,
LanguageLevelVisitor llv,
SourceInfo si)
Creates a new ArrayData corresponding to the elementType sd. |
|
Augmentor.MethodBodyAugmentor(SymbolData enclosing)
Mandatory forwarding constructor. |
|
Augmentor(SymbolData d)
Create another Augmentor sharing the same static fields as the current Augmentor, but with a new _enclosingData d. |
|
ClassBodyFullJavaVisitor(SymbolData sd,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps,
HashMap<String,SymbolData> genericTypes)
Preferred constructor for ClassBodyFullJavaVisitor. |
|
ClassBodyFullJavaVisitor(SymbolData sd,
String className,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps)
Deprecated onstructor for ClassBodyFullJavaVisitor. |
|
ClassBodyIntermediateVisitor(SymbolData sd,
String className,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps)
Constructor for ClassBodyAdvancedVisitor. |
|
ClassBodyTypeChecker(SymbolData sd,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
LinkedList<VariableData> vars,
LinkedList<Pair<SymbolData,JExpression>> thrown)
Constructor for ClassBodyTypeChecker. |
|
InstanceData(SymbolData classSD)
|
|
InterfaceBodyFullJavaVisitor(SymbolData sd,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps)
Old constructor for InterfaceBodyFullJavaVisitor. |
|
InterfaceBodyFullJavaVisitor(SymbolData sd,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps,
HashMap<String,SymbolData> genericTypes)
Preferred constructor for InterfaceBodyFullJavaVisitor. |
|
InterfaceBodyIntermediateVisitor(SymbolData sd,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps)
Constructor for InterfaceBodyIntermediateVisitor. |
|
InterfaceBodyTypeChecker(SymbolData sd,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
LinkedList<VariableData> vars,
LinkedList<Pair<SymbolData,JExpression>> thrown)
|
|
MethodData(String name,
ModifiersAndVisibility modifiersAndVisibility,
TypeParameter[] typeParameters,
SymbolData returnType,
VariableData[] params,
String[] thrown,
SymbolData enclosingClass,
JExpression jexpr)
Constructor for MethodData. |
|
SymbolData(String name,
ModifiersAndVisibility modifiersAndVisibility,
TypeParameter[] typeParameters,
SymbolData superClass,
ArrayList<SymbolData> interfaces,
Data outerData)
Constructor for SymbolData |
|
SymbolData(String name,
ModifiersAndVisibility modifiersAndVisibility,
TypeParameter[] typeParameters,
SymbolData superClass,
ArrayList<SymbolData> interfaces,
Data outerData,
String pkg)
Constructor for SymbolData |
|
VariableData(String name,
ModifiersAndVisibility modifiersAndVisibility,
SymbolData type,
boolean hasBeenAssigned,
Data enclosingData)
Constructor for VariableData. |
|
VariableData(SymbolData type)
This constructor is only used when reading method parameters in a class file because class files only store the types of method parameters. |
|
| Constructor parameters in edu.rice.cs.javalanglevels with type arguments of type SymbolData | |
|---|---|
BodyBodyFullJavaVisitor(BodyData bodyData,
File file,
String packageName,
String enclosingClassName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps,
HashSet<String> innerClassesInThisBody)
Legacy Constructor for BodyBodyFullJavaVisitor. |
|
BodyBodyFullJavaVisitor(BodyData bodyData,
File file,
String packageName,
String enclosingClassName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps,
HashSet<String> innerClassesInThisBody,
HashMap<String,SymbolData> genericTypes)
Preferred constructor for BodyBodyFullJavaVisitor. |
|
BodyBodyFullJavaVisitor(BodyData bodyData,
File file,
String packageName,
String enclosingClassName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps,
HashSet<String> innerClassesInThisBody,
HashMap<String,SymbolData> genericTypes)
Preferred constructor for BodyBodyFullJavaVisitor. |
|
BodyBodyIntermediateVisitor(BodyData bodyData,
File file,
String packageName,
String enclosingClassName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps,
HashSet<String> innerClassesInThisBody)
Constructor for BodyBodyElementaryVisitor. |
|
BodyTypeChecker(BodyData bodyData,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
LinkedList<VariableData> vars,
LinkedList<Pair<SymbolData,JExpression>> thrown)
Constructor for BodyTypeChecker. |
|
ClassBodyFullJavaVisitor(SymbolData sd,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps,
HashMap<String,SymbolData> genericTypes)
Preferred constructor for ClassBodyFullJavaVisitor. |
|
ClassBodyFullJavaVisitor(SymbolData sd,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps,
HashMap<String,SymbolData> genericTypes)
Preferred constructor for ClassBodyFullJavaVisitor. |
|
ClassBodyFullJavaVisitor(SymbolData sd,
String className,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps)
Deprecated onstructor for ClassBodyFullJavaVisitor. |
|
ClassBodyIntermediateVisitor(SymbolData sd,
String className,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps)
Constructor for ClassBodyAdvancedVisitor. |
|
ClassBodyTypeChecker(SymbolData sd,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
LinkedList<VariableData> vars,
LinkedList<Pair<SymbolData,JExpression>> thrown)
Constructor for ClassBodyTypeChecker. |
|
ConstructorBodyTypeChecker(BodyData bodyData,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
LinkedList<VariableData> vars,
LinkedList<Pair<SymbolData,JExpression>> thrown)
Constructor for ConstructorBodyTypeChecker. |
|
ExpressionTypeChecker(Data data,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
LinkedList<VariableData> vars,
LinkedList<Pair<SymbolData,JExpression>> thrown)
Simply pass the necessary information on to superclass constructor. |
|
FullJavaVisitor(File file,
LinkedList<Pair<String,JExpressionIF>> errors,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps,
LinkedList<Pair<LanguageLevelVisitor,SourceFile>> visitedFiles)
This constructor is called from LanguageLevelConverter when it is instantiating a new FullJavaVisitor to visit a new file. |
|
FullJavaVisitor(File file,
LinkedList<String> importedPackages,
LinkedList<Pair<String,JExpressionIF>> errors,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps,
LinkedList<Pair<LanguageLevelVisitor,SourceFile>> visitedFiles)
This constructor is called from LanguageLevelConverter when it is instantiating a new FullJavaVisitor to visit a new file. |
|
FullJavaVisitor(File file,
String packageName,
String enclosingClassName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps)
This constructor is called from sites where no generic type variables are in scope. |
|
FullJavaVisitor(File file,
String packageName,
String enclosingClassName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps,
HashMap<String,SymbolData> genericTypes)
Main constructor, which is called from sites where the genericTypes table is not empty. |
|
FullJavaVisitor(File file,
String packageName,
String enclosingClassName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps,
HashMap<String,SymbolData> genericTypes)
Main constructor, which is called from sites where the genericTypes table is not empty. |
|
InterfaceBodyFullJavaVisitor(SymbolData sd,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps)
Old constructor for InterfaceBodyFullJavaVisitor. |
|
InterfaceBodyFullJavaVisitor(SymbolData sd,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps,
HashMap<String,SymbolData> genericTypes)
Preferred constructor for InterfaceBodyFullJavaVisitor. |
|
InterfaceBodyFullJavaVisitor(SymbolData sd,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps,
HashMap<String,SymbolData> genericTypes)
Preferred constructor for InterfaceBodyFullJavaVisitor. |
|
InterfaceBodyIntermediateVisitor(SymbolData sd,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps)
Constructor for InterfaceBodyIntermediateVisitor. |
|
InterfaceBodyTypeChecker(SymbolData sd,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
LinkedList<VariableData> vars,
LinkedList<Pair<SymbolData,JExpression>> thrown)
|
|
IntermediateVisitor(File file,
LinkedList<Pair<String,JExpressionIF>> errors,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps,
LinkedList<Pair<LanguageLevelVisitor,SourceFile>> visitedFiles)
This constructor is called from LanguageLevelVisitor and LanguageLevelConverter when they are instantiating a new IntermediateVisitor to visit a new file with. |
|
IntermediateVisitor(File file,
LinkedList<String> importedPackages,
LinkedList<Pair<String,JExpressionIF>> errors,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps,
LinkedList<Pair<LanguageLevelVisitor,SourceFile>> visitedFiles)
This constructor is called from LanguageLevelVisitor and LanguageLevelConverter when they are instantiating a new IntermediateVisitor to visit a new file with. |
|
IntermediateVisitor(File file,
String packageName,
String enclosingClassName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps)
This constructor is called when creating a new instance of IntermediateVisitor. |
|
LanguageLevelVisitor(File file,
String packageName,
String enclosingClassName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps)
This constructor is used only in testing. |
|
LanguageLevelVisitor(File file,
String packageName,
String enclosingClassName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps,
HashMap<String,SymbolData> genericTypes)
This constructor is called from the subclasses of LanguageLevelVisitor. |
|
LanguageLevelVisitor(File file,
String packageName,
String enclosingClassName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
HashSet<String> classesInThisFile,
Hashtable<String,Triple<SourceInfo,LanguageLevelVisitor,SymbolData>> continuations,
LinkedList<Command> fixUps,
HashMap<String,SymbolData> genericTypes)
This constructor is called from the subclasses of LanguageLevelVisitor. |
|
SpecialTypeChecker(Data data,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
LinkedList<VariableData> vars,
LinkedList<Pair<SymbolData,JExpression>> thrown)
Constructor for SpecialTypeChecker. |
|
SymbolData(String name,
ModifiersAndVisibility modifiersAndVisibility,
TypeParameter[] typeParameters,
ArrayList<SymbolData> interfaces,
Data outerData)
This constructor is only called by Interfaces. |
|
SymbolData(String name,
ModifiersAndVisibility modifiersAndVisibility,
TypeParameter[] typeParameters,
SymbolData superClass,
ArrayList<SymbolData> interfaces,
Data outerData)
Constructor for SymbolData |
|
SymbolData(String name,
ModifiersAndVisibility modifiersAndVisibility,
TypeParameter[] typeParameters,
SymbolData superClass,
ArrayList<SymbolData> interfaces,
Data outerData,
String pkg)
Constructor for SymbolData |
|
TryCatchBodyTypeChecker(BodyData bodyData,
File file,
String packageName,
LinkedList<String> importedFiles,
LinkedList<String> importedPackages,
LinkedList<VariableData> vars,
LinkedList<Pair<SymbolData,JExpression>> thrown)
|
|
|
||||||||||
| PREV NEXT | FRAMES NO FRAMES | |||||||||