Uses of Class
edu.rice.cs.javalanglevels.SymbolData

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)