This is a major revision that replaces the elementary and intermediate LL visitors by a single LL visitor called IntermediateVisitor for the time being. The advanced visitor was eliminated and replaced by simple file copying. Some drjava trunk test cases may have to be patched because .dj2 files no longer produce LL mapping tables as comments because the transformed .java is identical to the .dj2 input file.
The following files were modified:
M testFiles/forAdvancedLevelTest/AnonymousInnerClassFromInterface.expected
M testFiles/forAdvancedLevelTest/ClassWithClassInMethod.expected
M testFiles/forAdvancedLevelTest/InnerClassesInClassesCanBePrivate.expected
M testFiles/forAdvancedLevelTest/RefInnerClassWithinMethod.expected
M testFiles/forAdvancedLevelTest/ComplexAnonymousInnerClassFromInterface2.expected
M testFiles/forAdvancedLevelTest/Super.expected
M testFiles/forAdvancedLevelTest/ImplicitSuperConstructor.expected
M testFiles/forAdvancedLevelTest/TestImportStuff2.expected
M testFiles/forAdvancedLevelTest/AllocatePartialInnerClass2.expected
M testFiles/forAdvancedLevelTest/ComplexAnonymousInnerClassFromInterface.expected
M testFiles/forAdvancedLevelTest/ComplexAnonClassInstantiation.expected
M testFiles/forAdvancedLevelTest/FormalParamPartialReference2.expected
M testFiles/forAdvancedLevelTest/AllocatePartialInnerClass.expected
M testFiles/forAdvancedLevelTest/TestNoCodeAugmentation.expected
M testFiles/forAdvancedLevelTest/MultipleNested.expected
D testFiles/forAdvancedLevelTest/shouldBreak/SwitchDoesntAssign.dj2
M testFiles/forAdvancedLevelTest/RefInnerClassCrazy.expected
M testFiles/forAdvancedLevelTest/InnerClassSimple.expected
M testFiles/forAdvancedLevelTest/RefInnerClass2.expected
M testFiles/forAdvancedLevelTest/TestImportStuff.expected
M testFiles/forAdvancedLevelTest/FunWithForLoop.expected
M testFiles/forAdvancedLevelTest/FunWithWhileLoops.expected
M testFiles/forAdvancedLevelTest/FunWithSwitches.expected
M testFiles/forAdvancedLevelTest/ToReference.expected
M testFiles/forAdvancedLevelTest/InnerClass.expected
M testFiles/forAdvancedLevelTest/ForLoopWithEmptyStatements.expected
M testFiles/forAdvancedLevelTest/importedFiles/ToReference.expected
M testFiles/forAdvancedLevelTest/importedFiles/IsItPackageAndImport.expected
M testFiles/forAdvancedLevelTest/ArrayDeclarations.expected
M testFiles/forAdvancedLevelTest/TestArrayAssignment.expected
M testFiles/forAdvancedLevelTest/InnerInterfacesInClassesCanBePrivate.expected
M testFiles/forAdvancedLevelTest/PackageAndImport.expected
M testFiles/forAdvancedLevelTest/MyClass.expected
M testFiles/forAdvancedLevelTest/FinalFieldsTest.expected
M testFiles/forAdvancedLevelTest/FunWithDoLoops.expected
M testFiles/forAdvancedLevelTest/importedFiles2/AlsoReferenced.expected
M testFiles/forAdvancedLevelTest/testArraysObject.expected
M testFiles/forAdvancedLevelTest/FormalParamPartialReference.expected
M testFiles/forAdvancedLevelTest/RefInnerClass.expected
M testFiles/forAdvancedLevelTest/InnerClassArrayField.expected
M testFiles/forAdvancedLevelTest/RefInnerClassOfMethodWithinMethod.expected
A testFiles/forIntermediateLevelTest/ClassWithSwitchStatement.dj1
D testFiles/forIntermediateLevelTest/shouldBreak/BadClass.dj1
A testFiles/forIntermediateLevelTest/BadClass.dj1
A testFiles/forIntermediateLevelTest/ContainsAnInnerClass.dj1
A testFiles/forElementaryLevelTest/BeginnerShouldBreakImportStmt.expected
A testFiles/forElementaryLevelTest/BeginnerShouldBreakConstructor.expected
A testFiles/forElementaryLevelTest/SampleTest.dj0
A testFiles/forElementaryLevelTest/BeginnerShouldBreakVoid.expected
A testFiles/forElementaryLevelTest/BeginnerShouldBreakInnerClass.expected
A testFiles/forElementaryLevelTest/BeginnerShouldBreakConstructor.dj0
A testFiles/forElementaryLevelTest/BeginnerShouldBreakAccessModifiers.expected
A testFiles/forElementaryLevelTest/BeginnerShouldBreakPackageStmt.expected
A testFiles/forElementaryLevelTest/BeginnerShouldBreakFinal.dj0
A testFiles/forElementaryLevelTest/BeginnerShouldBreakSwitchStatements.expected
A testFiles/forElementaryLevelTest/BeginnerShouldBreakVoid.dj0
A testFiles/forElementaryLevelTest/BeginnerShouldBreakInnerClass.dj0
A testFiles/forElementaryLevelTest/BeginnerShouldBreakAccessModifiers.dj0
A testFiles/forElementaryLevelTest/TestClassTestingVoidNonTestMethod.dj0
A testFiles/forElementaryLevelTest/BeginnerShouldBreakPackageStmt.dj0
A testFiles/forElementaryLevelTest/BeginnerShouldBreakSwitchStatements.dj0
A testFiles/forElementaryLevelTest/AFriend.java
A testFiles/forElementaryLevelTest/BeginnerShouldBreakImportStmt.dj0
D testFiles/forElementaryLevelTest/shouldBreak/BeginnerShouldBreakPackageStmt.errorMessage
D testFiles/forElementaryLevelTest/shouldBreak/BeginnerShouldBreakConstructor.dj0
D testFiles/forElementaryLevelTest/shouldBreak/BeginnerShouldBreakFinal.dj0
D testFiles/forElementaryLevelTest/shouldBreak/BeginnerShouldBreakInnerClass.dj0
D testFiles/forElementaryLevelTest/shouldBreak/BeginnerShouldBreakVoid.dj0
D testFiles/forElementaryLevelTest/shouldBreak/BeginnerShouldBreakAccessModifiers.dj0
D testFiles/forElementaryLevelTest/shouldBreak/BeginnerShouldBreakPackageStmt.dj0
D testFiles/forElementaryLevelTest/shouldBreak/BeginnerShouldBreakSwitchStatements.dj0
D testFiles/forElementaryLevelTest/shouldBreak/BeginnerShouldBreakImportStmt.dj0
D testFiles/forElementaryLevelTest/shouldBreak/BeginnerShouldBreakImportStmt.errorMessage
M testFiles/forElementaryLevelTest/TestClassTesting.expected
M src/edu/rice/cs/javalanglevels/IntermediateLevelTest.java
M src/edu/rice/cs/javalanglevels/TypeChecker.java
M src/edu/rice/cs/javalanglevels/ArrayData.java
M src/edu/rice/cs/javalanglevels/Data.java
M src/edu/rice/cs/javalanglevels/Symboltable.java
M src/edu/rice/cs/javalanglevels/LValueTypeChecker.java
M src/edu/rice/cs/javalanglevels/VariableData.java
M src/edu/rice/cs/javalanglevels/BodyTypeChecker.java
M src/edu/rice/cs/javalanglevels/TryCatchBodyTypeChecker.java
M src/edu/rice/cs/javalanglevels/IntermediateVisitor.java
M src/edu/rice/cs/javalanglevels/Options.java
M src/edu/rice/cs/javalanglevels/AdvancedLevelTest.java
M src/edu/rice/cs/javalanglevels/SymbolData.java
M src/edu/rice/cs/javalanglevels/Augmentor.java
M src/edu/rice/cs/javalanglevels/Bob.java
M src/edu/rice/cs/javalanglevels/LanguageLevelConverter.java
M src/edu/rice/cs/javalanglevels/InterfaceBodyTypeChecker.java
M src/edu/rice/cs/javalanglevels/LValueWithValueTypeChecker.java
M src/edu/rice/cs/javalanglevels/ClassBodyTypeChecker.java
M src/edu/rice/cs/javalanglevels/ExpressionTypeChecker.java
M src/edu/rice/cs/javalanglevels/BodyBodyIntermediateVisitor.java
M src/edu/rice/cs/javalanglevels/InterfaceBodyIntermediateVisitor.java
M src/edu/rice/cs/javalanglevels/ConstructorBodyTypeChecker.java
M src/edu/rice/cs/javalanglevels/LanguageLevelVisitor.java
M src/edu/rice/cs/javalanglevels/util/Utilities.java
M src/edu/rice/cs/javalanglevels/ElementaryLevelTest.java
M src/edu/rice/cs/javalanglevels/ClassBodyIntermediateVisitor.java
M src/edu/rice/cs/javalanglevels/JExpressionIFPrunableDepthFirstVisitor.java