org.codehaus.janino
Class UnparseVisitor
java.lang.Object
org.codehaus.janino.UnparseVisitor
- All Implemented Interfaces:
- Visitor.AtomVisitor, Visitor.BlockStatementVisitor, Visitor.ComprehensiveVisitor, Visitor.ImportVisitor, Visitor.LvalueVisitor, Visitor.RvalueVisitor, Visitor.TypeBodyDeclarationVisitor, Visitor.TypeDeclarationVisitor, Visitor.TypeVisitor
public class UnparseVisitor
- extends java.lang.Object
- implements Visitor.ComprehensiveVisitor
A visitor that unparses (un-compiles) an AST to a Writer. See
main(String[]) for a usage example.
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
aiw
protected final AutoIndentWriter aiw
pw
protected final java.io.PrintWriter pw
UnparseVisitor
public UnparseVisitor(java.io.Writer w)
main
public static void main(java.lang.String[] args)
throws java.lang.Exception
- Testing of parsing/unparsing.
Reads compilation units from the files named on the command line
and unparses them to System.out.
- Throws:
java.lang.Exception
unparse
public static void unparse(Java.CompilationUnit cu,
java.io.Writer w)
- Unparse the given
Java.CompilationUnit to the given Writer.
unparseCompilationUnit
public void unparseCompilationUnit(Java.CompilationUnit cu)
visitSingleTypeImportDeclaration
public void visitSingleTypeImportDeclaration(Java.CompilationUnit.SingleTypeImportDeclaration stid)
- Specified by:
visitSingleTypeImportDeclaration in interface Visitor.ImportVisitor
visitTypeImportOnDemandDeclaration
public void visitTypeImportOnDemandDeclaration(Java.CompilationUnit.TypeImportOnDemandDeclaration tiodd)
- Specified by:
visitTypeImportOnDemandDeclaration in interface Visitor.ImportVisitor
visitSingleStaticImportDeclaration
public void visitSingleStaticImportDeclaration(Java.CompilationUnit.SingleStaticImportDeclaration ssid)
- Specified by:
visitSingleStaticImportDeclaration in interface Visitor.ImportVisitor
visitStaticImportOnDemandDeclaration
public void visitStaticImportOnDemandDeclaration(Java.CompilationUnit.StaticImportOnDemandDeclaration siodd)
- Specified by:
visitStaticImportOnDemandDeclaration in interface Visitor.ImportVisitor
visitLocalClassDeclaration
public void visitLocalClassDeclaration(Java.LocalClassDeclaration lcd)
- Specified by:
visitLocalClassDeclaration in interface Visitor.TypeDeclarationVisitor
visitMemberClassDeclaration
public void visitMemberClassDeclaration(Java.MemberClassDeclaration mcd)
- Specified by:
visitMemberClassDeclaration in interface Visitor.TypeBodyDeclarationVisitor- Specified by:
visitMemberClassDeclaration in interface Visitor.TypeDeclarationVisitor
visitMemberInterfaceDeclaration
public void visitMemberInterfaceDeclaration(Java.MemberInterfaceDeclaration mid)
- Specified by:
visitMemberInterfaceDeclaration in interface Visitor.TypeBodyDeclarationVisitor- Specified by:
visitMemberInterfaceDeclaration in interface Visitor.TypeDeclarationVisitor
visitPackageMemberClassDeclaration
public void visitPackageMemberClassDeclaration(Java.PackageMemberClassDeclaration pmcd)
- Specified by:
visitPackageMemberClassDeclaration in interface Visitor.TypeDeclarationVisitor
visitPackageMemberInterfaceDeclaration
public void visitPackageMemberInterfaceDeclaration(Java.PackageMemberInterfaceDeclaration pmid)
- Specified by:
visitPackageMemberInterfaceDeclaration in interface Visitor.TypeDeclarationVisitor
visitConstructorDeclarator
public void visitConstructorDeclarator(Java.ConstructorDeclarator cd)
- Specified by:
visitConstructorDeclarator in interface Visitor.TypeBodyDeclarationVisitor
visitMethodDeclarator
public void visitMethodDeclarator(Java.MethodDeclarator md)
- Specified by:
visitMethodDeclarator in interface Visitor.TypeBodyDeclarationVisitor
visitFieldDeclaration
public void visitFieldDeclaration(Java.FieldDeclaration fd)
- Specified by:
visitFieldDeclaration in interface Visitor.BlockStatementVisitor- Specified by:
visitFieldDeclaration in interface Visitor.TypeBodyDeclarationVisitor
visitInitializer
public void visitInitializer(Java.Initializer i)
- Specified by:
visitInitializer in interface Visitor.BlockStatementVisitor- Specified by:
visitInitializer in interface Visitor.TypeBodyDeclarationVisitor
visitBlock
public void visitBlock(Java.Block b)
- Specified by:
visitBlock in interface Visitor.BlockStatementVisitor
visitBreakStatement
public void visitBreakStatement(Java.BreakStatement bs)
- Specified by:
visitBreakStatement in interface Visitor.BlockStatementVisitor
visitContinueStatement
public void visitContinueStatement(Java.ContinueStatement cs)
- Specified by:
visitContinueStatement in interface Visitor.BlockStatementVisitor
visitDoStatement
public void visitDoStatement(Java.DoStatement ds)
- Specified by:
visitDoStatement in interface Visitor.BlockStatementVisitor
visitEmptyStatement
public void visitEmptyStatement(Java.EmptyStatement es)
- Specified by:
visitEmptyStatement in interface Visitor.BlockStatementVisitor
visitExpressionStatement
public void visitExpressionStatement(Java.ExpressionStatement es)
- Specified by:
visitExpressionStatement in interface Visitor.BlockStatementVisitor
visitForStatement
public void visitForStatement(Java.ForStatement fs)
- Specified by:
visitForStatement in interface Visitor.BlockStatementVisitor
visitIfStatement
public void visitIfStatement(Java.IfStatement is)
- Specified by:
visitIfStatement in interface Visitor.BlockStatementVisitor
visitLabeledStatement
public void visitLabeledStatement(Java.LabeledStatement ls)
- Specified by:
visitLabeledStatement in interface Visitor.BlockStatementVisitor
visitLocalClassDeclarationStatement
public void visitLocalClassDeclarationStatement(Java.LocalClassDeclarationStatement lcds)
- Specified by:
visitLocalClassDeclarationStatement in interface Visitor.BlockStatementVisitor
visitLocalVariableDeclarationStatement
public void visitLocalVariableDeclarationStatement(Java.LocalVariableDeclarationStatement lvds)
- Specified by:
visitLocalVariableDeclarationStatement in interface Visitor.BlockStatementVisitor
visitReturnStatement
public void visitReturnStatement(Java.ReturnStatement rs)
- Specified by:
visitReturnStatement in interface Visitor.BlockStatementVisitor
visitSwitchStatement
public void visitSwitchStatement(Java.SwitchStatement ss)
- Specified by:
visitSwitchStatement in interface Visitor.BlockStatementVisitor
visitSynchronizedStatement
public void visitSynchronizedStatement(Java.SynchronizedStatement ss)
- Specified by:
visitSynchronizedStatement in interface Visitor.BlockStatementVisitor
visitThrowStatement
public void visitThrowStatement(Java.ThrowStatement ts)
- Specified by:
visitThrowStatement in interface Visitor.BlockStatementVisitor
visitTryStatement
public void visitTryStatement(Java.TryStatement ts)
- Specified by:
visitTryStatement in interface Visitor.BlockStatementVisitor
visitWhileStatement
public void visitWhileStatement(Java.WhileStatement ws)
- Specified by:
visitWhileStatement in interface Visitor.BlockStatementVisitor
unparseVariableDeclarator
public void unparseVariableDeclarator(Java.VariableDeclarator vd)
unparseFormalParameter
public void unparseFormalParameter(Java.FunctionDeclarator.FormalParameter fp)
visitMethodInvocation
public void visitMethodInvocation(Java.MethodInvocation mi)
- Specified by:
visitMethodInvocation in interface Visitor.RvalueVisitor
visitAlternateConstructorInvocation
public void visitAlternateConstructorInvocation(Java.AlternateConstructorInvocation aci)
- Specified by:
visitAlternateConstructorInvocation in interface Visitor.BlockStatementVisitor
visitSuperConstructorInvocation
public void visitSuperConstructorInvocation(Java.SuperConstructorInvocation sci)
- Specified by:
visitSuperConstructorInvocation in interface Visitor.BlockStatementVisitor
visitNewClassInstance
public void visitNewClassInstance(Java.NewClassInstance nci)
- Specified by:
visitNewClassInstance in interface Visitor.RvalueVisitor
visitAssignment
public void visitAssignment(Java.Assignment a)
- Specified by:
visitAssignment in interface Visitor.RvalueVisitor
visitAmbiguousName
public void visitAmbiguousName(Java.AmbiguousName an)
- Specified by:
visitAmbiguousName in interface Visitor.LvalueVisitor
visitArrayAccessExpression
public void visitArrayAccessExpression(Java.ArrayAccessExpression aae)
- Specified by:
visitArrayAccessExpression in interface Visitor.LvalueVisitor
visitArrayLength
public void visitArrayLength(Java.ArrayLength al)
- Specified by:
visitArrayLength in interface Visitor.RvalueVisitor
visitArrayType
public void visitArrayType(Java.ArrayType at)
- Specified by:
visitArrayType in interface Visitor.TypeVisitor
visitBasicType
public void visitBasicType(Java.BasicType bt)
- Specified by:
visitBasicType in interface Visitor.TypeVisitor
visitBinaryOperation
public void visitBinaryOperation(Java.BinaryOperation bo)
- Specified by:
visitBinaryOperation in interface Visitor.RvalueVisitor
visitCast
public void visitCast(Java.Cast c)
- Specified by:
visitCast in interface Visitor.RvalueVisitor
visitClassLiteral
public void visitClassLiteral(Java.ClassLiteral cl)
- Specified by:
visitClassLiteral in interface Visitor.RvalueVisitor
visitConditionalExpression
public void visitConditionalExpression(Java.ConditionalExpression ce)
- Specified by:
visitConditionalExpression in interface Visitor.RvalueVisitor
visitCrement
public void visitCrement(Java.Crement c)
- Specified by:
visitCrement in interface Visitor.RvalueVisitor
visitFieldAccess
public void visitFieldAccess(Java.FieldAccess fa)
- Specified by:
visitFieldAccess in interface Visitor.LvalueVisitor
visitFieldAccessExpression
public void visitFieldAccessExpression(Java.FieldAccessExpression fae)
- Specified by:
visitFieldAccessExpression in interface Visitor.LvalueVisitor
visitSuperclassFieldAccessExpression
public void visitSuperclassFieldAccessExpression(Java.SuperclassFieldAccessExpression scfae)
- Specified by:
visitSuperclassFieldAccessExpression in interface Visitor.LvalueVisitor
visitInstanceof
public void visitInstanceof(Java.Instanceof io)
- Specified by:
visitInstanceof in interface Visitor.RvalueVisitor
visitLiteral
public void visitLiteral(Java.Literal l)
- Specified by:
visitLiteral in interface Visitor.RvalueVisitor
visitLocalVariableAccess
public void visitLocalVariableAccess(Java.LocalVariableAccess lva)
- Specified by:
visitLocalVariableAccess in interface Visitor.LvalueVisitor
visitNewArray
public void visitNewArray(Java.NewArray na)
- Specified by:
visitNewArray in interface Visitor.RvalueVisitor
visitNewInitializedArray
public void visitNewInitializedArray(Java.NewInitializedArray nai)
- Specified by:
visitNewInitializedArray in interface Visitor.RvalueVisitor
visitPackage
public void visitPackage(Java.Package p)
- Specified by:
visitPackage in interface Visitor.AtomVisitor
visitParameterAccess
public void visitParameterAccess(Java.ParameterAccess pa)
- Specified by:
visitParameterAccess in interface Visitor.RvalueVisitor
visitQualifiedThisReference
public void visitQualifiedThisReference(Java.QualifiedThisReference qtr)
- Specified by:
visitQualifiedThisReference in interface Visitor.RvalueVisitor
visitReferenceType
public void visitReferenceType(Java.ReferenceType rt)
- Specified by:
visitReferenceType in interface Visitor.TypeVisitor
visitRvalueMemberType
public void visitRvalueMemberType(Java.RvalueMemberType rmt)
- Specified by:
visitRvalueMemberType in interface Visitor.TypeVisitor
visitSimpleType
public void visitSimpleType(Java.SimpleType st)
- Specified by:
visitSimpleType in interface Visitor.TypeVisitor
visitSuperclassMethodInvocation
public void visitSuperclassMethodInvocation(Java.SuperclassMethodInvocation smi)
- Specified by:
visitSuperclassMethodInvocation in interface Visitor.RvalueVisitor
visitThisReference
public void visitThisReference(Java.ThisReference tr)
- Specified by:
visitThisReference in interface Visitor.RvalueVisitor
visitUnaryOperation
public void visitUnaryOperation(Java.UnaryOperation uo)
- Specified by:
visitUnaryOperation in interface Visitor.RvalueVisitor
visitParenthesizedExpression
public void visitParenthesizedExpression(Java.ParenthesizedExpression pe)
- Specified by:
visitParenthesizedExpression in interface Visitor.LvalueVisitor
visitAnonymousClassDeclaration
public void visitAnonymousClassDeclaration(Java.AnonymousClassDeclaration acd)
- Specified by:
visitAnonymousClassDeclaration in interface Visitor.TypeDeclarationVisitor
visitNewAnonymousClassInstance
public void visitNewAnonymousClassInstance(Java.NewAnonymousClassInstance naci)
- Specified by:
visitNewAnonymousClassInstance in interface Visitor.RvalueVisitor