joosc
Class PrettyPrinter

java.lang.Object
  extended byjoosc.analysis.AnalysisAdapter
      extended byjoosc.analysis.DepthFirstAdapter
          extended byjoosc.PrettyPrinter
All Implemented Interfaces:
Analysis, Switch

public class PrettyPrinter
extends DepthFirstAdapter

PrettyPrinter - for ast correctness verification History: 7 May 2000 - marked identifier list un-flattening as obsolete 6 Mar 2000 - ast de-transformation: list un-flattening completed added prototype transformed ast pretty-printing (idlist) 5 Mar 2000 - created


Field Summary
protected  java.lang.String filename
           
 
Constructor Summary
PrettyPrinter(java.lang.String fn)
           
 
Method Summary
 void caseAArgumentList(AArgumentList node)
           
 void caseAFormalList(AFormalList node)
          pretty-print transformed entities * by unraveling the transformations * that produce unparseable code *
 void defaultCase(Node node)
           
 void outADefaultClassfile(ADefaultClassfile node)
           
 void outAExternClassfile(AExternClassfile node)
           
static void print(java.util.List theProgram)
           
 
Methods inherited from class joosc.analysis.DepthFirstAdapter
caseAAbstractClassmods, caseAAbstractExternMethodmods, caseAAbstractMethod, caseAAndExp, caseAAssignExp, caseAAssignment, caseAAssignStmExp, caseABlockSimplestm, caseABlockStm, caseABooleanType, caseACallExp, caseACallStmExp, caseACastExp, caseACasttocharExp, caseACharconstExp, caseACharType, caseAClass, caseAClassinstancecreation, caseAConstructor, caseADeclFirstStm, caseADeclStm, caseADefaultClassfile, caseADivExp, caseADynamicStm, caseAEqExp, caseAExpSimplestm, caseAExpStm, caseAExtension, caseAExternClass, caseAExternClassfile, caseAExternConstructor, caseAFalseExp, caseAField, caseAFinalClassmods, caseAFinalExternMethodmods, caseAFinalMethodmods, caseAFirstField, caseAFirstMainargv, caseAFormal, caseAForStm, caseAForStmNoShortIf, caseAGeqExp, caseAGtExp, caseAIdentifierList, caseAIdExp, caseAIfelseStm, caseAIfelseStmNoShortIf, caseAIfStm, caseAIncStmExp, caseAInstanceofExp, caseAIntconstExp, caseAIntType, caseALeqExp, caseALtExp, caseAMainMethod, caseAMethodinvocation, caseAMinusExp, caseAModExp, caseAModExternMethod, caseAModMethod, caseAMultExp, caseANeqExp, caseANewExp, caseANewStmExp, caseANonmodExternMethod, caseANonmodMethod, caseANonvoidReturntype, caseANotExp, caseANullExp, caseAObjectReceiver, caseAOnefield, caseAOnelocal, caseAOrExp, caseAParenExp, caseAPlusExp, caseAPolynullType, caseAReferenceType, caseAReturnSimplestm, caseAReturnStm, caseASecondMainargv, caseASimpleStm, caseASimpleStmNoShortIf, caseASkipSimplestm, caseASkipStm, caseAStringconstExp, caseASuperconsStm, caseASuperReceiver, caseASynchronizedExternMethodmods, caseASynchronizedMethodmods, caseAThisExp, caseATmpcastExp, caseATrueExp, caseAUminusExp, caseAVoidReturntype, caseAVoidType, caseAWhileStm, caseAWhileStmNoShortIf, caseStart, defaultIn, defaultOut, inAAbstractClassmods, inAAbstractExternMethodmods, inAAbstractMethod, inAAndExp, inAArgumentList, inAAssignExp, inAAssignment, inAAssignStmExp, inABlockSimplestm, inABlockStm, inABooleanType, inACallExp, inACallStmExp, inACastExp, inACasttocharExp, inACharconstExp, inACharType, inAClass, inAClassinstancecreation, inAConstructor, inADeclFirstStm, inADeclStm, inADefaultClassfile, inADivExp, inADynamicStm, inAEqExp, inAExpSimplestm, inAExpStm, inAExtension, inAExternClass, inAExternClassfile, inAExternConstructor, inAFalseExp, inAField, inAFinalClassmods, inAFinalExternMethodmods, inAFinalMethodmods, inAFirstField, inAFirstMainargv, inAFormal, inAFormalList, inAForStm, inAForStmNoShortIf, inAGeqExp, inAGtExp, inAIdentifierList, inAIdExp, inAIfelseStm, inAIfelseStmNoShortIf, inAIfStm, inAIncStmExp, inAInstanceofExp, inAIntconstExp, inAIntType, inALeqExp, inALtExp, inAMainMethod, inAMethodinvocation, inAMinusExp, inAModExp, inAModExternMethod, inAModMethod, inAMultExp, inANeqExp, inANewExp, inANewStmExp, inANonmodExternMethod, inANonmodMethod, inANonvoidReturntype, inANotExp, inANullExp, inAObjectReceiver, inAOnefield, inAOnelocal, inAOrExp, inAParenExp, inAPlusExp, inAPolynullType, inAReferenceType, inAReturnSimplestm, inAReturnStm, inASecondMainargv, inASimpleStm, inASimpleStmNoShortIf, inASkipSimplestm, inASkipStm, inAStringconstExp, inASuperconsStm, inASuperReceiver, inASynchronizedExternMethodmods, inASynchronizedMethodmods, inAThisExp, inATmpcastExp, inATrueExp, inAUminusExp, inAVoidReturntype, inAVoidType, inAWhileStm, inAWhileStmNoShortIf, inStart, outAAbstractClassmods, outAAbstractExternMethodmods, outAAbstractMethod, outAAndExp, outAArgumentList, outAAssignExp, outAAssignment, outAAssignStmExp, outABlockSimplestm, outABlockStm, outABooleanType, outACallExp, outACallStmExp, outACastExp, outACasttocharExp, outACharconstExp, outACharType, outAClass, outAClassinstancecreation, outAConstructor, outADeclFirstStm, outADeclStm, outADivExp, outADynamicStm, outAEqExp, outAExpSimplestm, outAExpStm, outAExtension, outAExternClass, outAExternConstructor, outAFalseExp, outAField, outAFinalClassmods, outAFinalExternMethodmods, outAFinalMethodmods, outAFirstField, outAFirstMainargv, outAFormal, outAFormalList, outAForStm, outAForStmNoShortIf, outAGeqExp, outAGtExp, outAIdentifierList, outAIdExp, outAIfelseStm, outAIfelseStmNoShortIf, outAIfStm, outAIncStmExp, outAInstanceofExp, outAIntconstExp, outAIntType, outALeqExp, outALtExp, outAMainMethod, outAMethodinvocation, outAMinusExp, outAModExp, outAModExternMethod, outAModMethod, outAMultExp, outANeqExp, outANewExp, outANewStmExp, outANonmodExternMethod, outANonmodMethod, outANonvoidReturntype, outANotExp, outANullExp, outAObjectReceiver, outAOnefield, outAOnelocal, outAOrExp, outAParenExp, outAPlusExp, outAPolynullType, outAReferenceType, outAReturnSimplestm, outAReturnStm, outASecondMainargv, outASimpleStm, outASimpleStmNoShortIf, outASkipSimplestm, outASkipStm, outAStringconstExp, outASuperconsStm, outASuperReceiver, outASynchronizedExternMethodmods, outASynchronizedMethodmods, outAThisExp, outATmpcastExp, outATrueExp, outAUminusExp, outAVoidReturntype, outAVoidType, outAWhileStm, outAWhileStmNoShortIf, outStart
 
Methods inherited from class joosc.analysis.AnalysisAdapter
caseEOF, caseTAbstract, caseTAnd, caseTAssign, caseTBlanks, caseTBoolean, caseTBreak, caseTByte, caseTCase, caseTCatch, caseTChar, caseTCharconst, caseTClass, caseTComma, caseTConst, caseTContinue, caseTDefault, caseTDiv, caseTDo, caseTDot, caseTDouble, caseTElse, caseTEolComment, caseTEq, caseTExtComment, caseTExtends, caseTExtern, caseTFalse, caseTFinal, caseTFinally, caseTFloat, caseTFor, caseTGeq, caseTGoto, caseTGt, caseTIdentifier, caseTIf, caseTImplements, caseTImport, caseTImportpath, caseTIn, caseTInc, caseTInstanceof, caseTInt, caseTIntconst, caseTInterface, caseTLBrace, caseTLBracket, caseTLeq, caseTLong, caseTLPar, caseTLt, caseTMain, caseTMinus, caseTMod, caseTMult, caseTNative, caseTNeq, caseTNew, caseTNot, caseTNull, caseTOr, caseTPackage, caseTPlus, caseTPrivate, caseTProtected, caseTPublic, caseTRBrace, caseTRBracket, caseTReturn, caseTRPar, caseTSemicolon, caseTShort, caseTStatic, caseTStringconst, caseTSuper, caseTSwitch, caseTSynchronized, caseTThis, caseTThrow, caseTThrows, caseTTransient, caseTTrue, caseTTry, caseTVoid, caseTVolatile, caseTWhile, getIn, getOut, setIn, setOut
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

filename

protected java.lang.String filename
Constructor Detail

PrettyPrinter

public PrettyPrinter(java.lang.String fn)
Method Detail

print

public static void print(java.util.List theProgram)

outADefaultClassfile

public void outADefaultClassfile(ADefaultClassfile node)
Overrides:
outADefaultClassfile in class DepthFirstAdapter

outAExternClassfile

public void outAExternClassfile(AExternClassfile node)
Overrides:
outAExternClassfile in class DepthFirstAdapter

defaultCase

public void defaultCase(Node node)
Overrides:
defaultCase in class AnalysisAdapter

caseAFormalList

public void caseAFormalList(AFormalList node)
pretty-print transformed entities * by unraveling the transformations * that produce unparseable code *

Specified by:
caseAFormalList in interface Analysis
Overrides:
caseAFormalList in class DepthFirstAdapter

caseAArgumentList

public void caseAArgumentList(AArgumentList node)
Specified by:
caseAArgumentList in interface Analysis
Overrides:
caseAArgumentList in class DepthFirstAdapter