Package org.codehaus.janino
Class UnparseVisitor
- java.lang.Object
-
- org.codehaus.janino.UnparseVisitor
-
- All Implemented Interfaces:
Visitor.AnnotationVisitor,Visitor.AtomVisitor,Visitor.BlockStatementVisitor,Visitor.ComprehensiveVisitor,Visitor.ElementValueArrayInitializerVisitor,Visitor.ElementValueVisitor,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 aWriter. Seemain(String[])for a usage example.
-
-
Constructor Summary
Constructors Constructor Description UnparseVisitor(java.io.Writer w)
-
Method Summary
-
-
-
Method Detail
-
main
public static void main(java.lang.String[] args) throws java.lang.ExceptionTesting 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 givenJava.CompilationUnitto the givenWriter.
-
close
public void close()
Flushes all generated code.
-
unparseCompilationUnit
public void unparseCompilationUnit(Java.CompilationUnit cu)
-
visitSingleTypeImportDeclaration
public void visitSingleTypeImportDeclaration(Java.CompilationUnit.SingleTypeImportDeclaration stid)
Description copied from interface:Visitor.ImportVisitorE.g. 'import pkg.Type'.- Specified by:
visitSingleTypeImportDeclarationin interfaceVisitor.ImportVisitor
-
visitTypeImportOnDemandDeclaration
public void visitTypeImportOnDemandDeclaration(Java.CompilationUnit.TypeImportOnDemandDeclaration tiodd)
Description copied from interface:Visitor.ImportVisitorE.g. 'import pkg.*'.- Specified by:
visitTypeImportOnDemandDeclarationin interfaceVisitor.ImportVisitor
-
visitSingleStaticImportDeclaration
public void visitSingleStaticImportDeclaration(Java.CompilationUnit.SingleStaticImportDeclaration ssid)
Description copied from interface:Visitor.ImportVisitorE.g. 'import static pkg.Type.member'.- Specified by:
visitSingleStaticImportDeclarationin interfaceVisitor.ImportVisitor
-
visitStaticImportOnDemandDeclaration
public void visitStaticImportOnDemandDeclaration(Java.CompilationUnit.StaticImportOnDemandDeclaration siodd)
Description copied from interface:Visitor.ImportVisitorE.g. 'import static pkg.Type.*'.- Specified by:
visitStaticImportOnDemandDeclarationin interfaceVisitor.ImportVisitor
-
visitLocalClassDeclaration
public void visitLocalClassDeclaration(Java.LocalClassDeclaration lcd)
Description copied from interface:Visitor.TypeDeclarationVisitorE.g. 'class LocalClass { ... }'.- Specified by:
visitLocalClassDeclarationin interfaceVisitor.TypeDeclarationVisitor
-
visitMemberClassDeclaration
public void visitMemberClassDeclaration(Java.MemberClassDeclaration mcd)
Description copied from interface:Visitor.TypeDeclarationVisitorE.g. 'public class TopLevelClass { public class MemberClass { ... } }'.- Specified by:
visitMemberClassDeclarationin interfaceVisitor.TypeBodyDeclarationVisitor- Specified by:
visitMemberClassDeclarationin interfaceVisitor.TypeDeclarationVisitor
-
visitMemberInterfaceDeclaration
public void visitMemberInterfaceDeclaration(Java.MemberInterfaceDeclaration mid)
Description copied from interface:Visitor.TypeDeclarationVisitorE.g. 'public class TopLevelClass { public interface MemberInterface { ... } }'.- Specified by:
visitMemberInterfaceDeclarationin interfaceVisitor.TypeBodyDeclarationVisitor- Specified by:
visitMemberInterfaceDeclarationin interfaceVisitor.TypeDeclarationVisitor
-
visitPackageMemberClassDeclaration
public void visitPackageMemberClassDeclaration(Java.PackageMemberClassDeclaration pmcd)
Description copied from interface:Visitor.TypeDeclarationVisitorE.g. 'public class TopLevelClass { ... }'.- Specified by:
visitPackageMemberClassDeclarationin interfaceVisitor.TypeDeclarationVisitor
-
visitPackageMemberInterfaceDeclaration
public void visitPackageMemberInterfaceDeclaration(Java.PackageMemberInterfaceDeclaration pmid)
Description copied from interface:Visitor.TypeDeclarationVisitorE.g. 'public TopLevelInterface { ... }'.- Specified by:
visitPackageMemberInterfaceDeclarationin interfaceVisitor.TypeDeclarationVisitor
-
visitConstructorDeclarator
public void visitConstructorDeclarator(Java.ConstructorDeclarator cd)
Description copied from interface:Visitor.TypeBodyDeclarationVisitorE.g. 'public MyClass(...) { ... }'.- Specified by:
visitConstructorDeclaratorin interfaceVisitor.TypeBodyDeclarationVisitor
-
visitMethodDeclarator
public void visitMethodDeclarator(Java.MethodDeclarator md)
Description copied from interface:Visitor.TypeBodyDeclarationVisitorE.g. 'public void meth(...) { ... }'.- Specified by:
visitMethodDeclaratorin interfaceVisitor.TypeBodyDeclarationVisitor
-
visitFieldDeclaration
public void visitFieldDeclaration(Java.FieldDeclaration fd)
Description copied from interface:Visitor.TypeBodyDeclarationVisitorE.g. 'public int field;'.- Specified by:
visitFieldDeclarationin interfaceVisitor.BlockStatementVisitor- Specified by:
visitFieldDeclarationin interfaceVisitor.TypeBodyDeclarationVisitor
-
visitInitializer
public void visitInitializer(Java.Initializer i)
Description copied from interface:Visitor.TypeBodyDeclarationVisitorE.g. 'public class MyClass { static { ... } }'.- Specified by:
visitInitializerin interfaceVisitor.BlockStatementVisitor- Specified by:
visitInitializerin interfaceVisitor.TypeBodyDeclarationVisitor
-
visitBlock
public void visitBlock(Java.Block b)
- Specified by:
visitBlockin interfaceVisitor.BlockStatementVisitor
-
visitBreakStatement
public void visitBreakStatement(Java.BreakStatement bs)
- Specified by:
visitBreakStatementin interfaceVisitor.BlockStatementVisitor
-
visitContinueStatement
public void visitContinueStatement(Java.ContinueStatement cs)
- Specified by:
visitContinueStatementin interfaceVisitor.BlockStatementVisitor
-
visitAssertStatement
public void visitAssertStatement(Java.AssertStatement as)
- Specified by:
visitAssertStatementin interfaceVisitor.BlockStatementVisitor
-
visitDoStatement
public void visitDoStatement(Java.DoStatement ds)
- Specified by:
visitDoStatementin interfaceVisitor.BlockStatementVisitor
-
visitEmptyStatement
public void visitEmptyStatement(Java.EmptyStatement es)
- Specified by:
visitEmptyStatementin interfaceVisitor.BlockStatementVisitor
-
visitExpressionStatement
public void visitExpressionStatement(Java.ExpressionStatement es)
- Specified by:
visitExpressionStatementin interfaceVisitor.BlockStatementVisitor
-
visitForStatement
public void visitForStatement(Java.ForStatement fs)
- Specified by:
visitForStatementin interfaceVisitor.BlockStatementVisitor
-
visitIfStatement
public void visitIfStatement(Java.IfStatement is)
- Specified by:
visitIfStatementin interfaceVisitor.BlockStatementVisitor
-
visitLabeledStatement
public void visitLabeledStatement(Java.LabeledStatement ls)
- Specified by:
visitLabeledStatementin interfaceVisitor.BlockStatementVisitor
-
visitLocalClassDeclarationStatement
public void visitLocalClassDeclarationStatement(Java.LocalClassDeclarationStatement lcds)
- Specified by:
visitLocalClassDeclarationStatementin interfaceVisitor.BlockStatementVisitor
-
visitLocalVariableDeclarationStatement
public void visitLocalVariableDeclarationStatement(Java.LocalVariableDeclarationStatement lvds)
- Specified by:
visitLocalVariableDeclarationStatementin interfaceVisitor.BlockStatementVisitor
-
visitReturnStatement
public void visitReturnStatement(Java.ReturnStatement rs)
- Specified by:
visitReturnStatementin interfaceVisitor.BlockStatementVisitor
-
visitSwitchStatement
public void visitSwitchStatement(Java.SwitchStatement ss)
- Specified by:
visitSwitchStatementin interfaceVisitor.BlockStatementVisitor
-
visitSynchronizedStatement
public void visitSynchronizedStatement(Java.SynchronizedStatement ss)
- Specified by:
visitSynchronizedStatementin interfaceVisitor.BlockStatementVisitor
-
visitThrowStatement
public void visitThrowStatement(Java.ThrowStatement ts)
- Specified by:
visitThrowStatementin interfaceVisitor.BlockStatementVisitor
-
visitTryStatement
public void visitTryStatement(Java.TryStatement ts)
- Specified by:
visitTryStatementin interfaceVisitor.BlockStatementVisitor
-
visitWhileStatement
public void visitWhileStatement(Java.WhileStatement ws)
- Specified by:
visitWhileStatementin interfaceVisitor.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:
visitMethodInvocationin interfaceVisitor.RvalueVisitor
-
visitAlternateConstructorInvocation
public void visitAlternateConstructorInvocation(Java.AlternateConstructorInvocation aci)
- Specified by:
visitAlternateConstructorInvocationin interfaceVisitor.BlockStatementVisitor
-
visitSuperConstructorInvocation
public void visitSuperConstructorInvocation(Java.SuperConstructorInvocation sci)
- Specified by:
visitSuperConstructorInvocationin interfaceVisitor.BlockStatementVisitor
-
visitNewClassInstance
public void visitNewClassInstance(Java.NewClassInstance nci)
- Specified by:
visitNewClassInstancein interfaceVisitor.RvalueVisitor
-
visitAssignment
public void visitAssignment(Java.Assignment a)
- Specified by:
visitAssignmentin interfaceVisitor.RvalueVisitor
-
visitAmbiguousName
public void visitAmbiguousName(Java.AmbiguousName an)
- Specified by:
visitAmbiguousNamein interfaceVisitor.LvalueVisitor
-
visitArrayAccessExpression
public void visitArrayAccessExpression(Java.ArrayAccessExpression aae)
- Specified by:
visitArrayAccessExpressionin interfaceVisitor.LvalueVisitor
-
visitArrayLength
public void visitArrayLength(Java.ArrayLength al)
- Specified by:
visitArrayLengthin interfaceVisitor.RvalueVisitor
-
visitArrayType
public void visitArrayType(Java.ArrayType at)
- Specified by:
visitArrayTypein interfaceVisitor.TypeVisitor
-
visitBasicType
public void visitBasicType(Java.BasicType bt)
- Specified by:
visitBasicTypein interfaceVisitor.TypeVisitor
-
visitBinaryOperation
public void visitBinaryOperation(Java.BinaryOperation bo)
- Specified by:
visitBinaryOperationin interfaceVisitor.RvalueVisitor
-
visitCast
public void visitCast(Java.Cast c)
- Specified by:
visitCastin interfaceVisitor.RvalueVisitor
-
visitClassLiteral
public void visitClassLiteral(Java.ClassLiteral cl)
- Specified by:
visitClassLiteralin interfaceVisitor.RvalueVisitor
-
visitConditionalExpression
public void visitConditionalExpression(Java.ConditionalExpression ce)
- Specified by:
visitConditionalExpressionin interfaceVisitor.RvalueVisitor
-
visitCrement
public void visitCrement(Java.Crement c)
- Specified by:
visitCrementin interfaceVisitor.RvalueVisitor
-
visitFieldAccess
public void visitFieldAccess(Java.FieldAccess fa)
- Specified by:
visitFieldAccessin interfaceVisitor.LvalueVisitor
-
visitFieldAccessExpression
public void visitFieldAccessExpression(Java.FieldAccessExpression fae)
- Specified by:
visitFieldAccessExpressionin interfaceVisitor.LvalueVisitor
-
visitSuperclassFieldAccessExpression
public void visitSuperclassFieldAccessExpression(Java.SuperclassFieldAccessExpression scfae)
- Specified by:
visitSuperclassFieldAccessExpressionin interfaceVisitor.LvalueVisitor
-
visitInstanceof
public void visitInstanceof(Java.Instanceof io)
- Specified by:
visitInstanceofin interfaceVisitor.RvalueVisitor
-
visitIntegerLiteral
public void visitIntegerLiteral(Java.IntegerLiteral il)
- Specified by:
visitIntegerLiteralin interfaceVisitor.RvalueVisitor
-
visitFloatingPointLiteral
public void visitFloatingPointLiteral(Java.FloatingPointLiteral fpl)
- Specified by:
visitFloatingPointLiteralin interfaceVisitor.RvalueVisitor
-
visitBooleanLiteral
public void visitBooleanLiteral(Java.BooleanLiteral bl)
- Specified by:
visitBooleanLiteralin interfaceVisitor.RvalueVisitor
-
visitCharacterLiteral
public void visitCharacterLiteral(Java.CharacterLiteral cl)
- Specified by:
visitCharacterLiteralin interfaceVisitor.RvalueVisitor
-
visitStringLiteral
public void visitStringLiteral(Java.StringLiteral sl)
- Specified by:
visitStringLiteralin interfaceVisitor.RvalueVisitor
-
visitNullLiteral
public void visitNullLiteral(Java.NullLiteral nl)
- Specified by:
visitNullLiteralin interfaceVisitor.RvalueVisitor
-
visitLocalVariableAccess
public void visitLocalVariableAccess(Java.LocalVariableAccess lva)
- Specified by:
visitLocalVariableAccessin interfaceVisitor.LvalueVisitor
-
visitNewArray
public void visitNewArray(Java.NewArray na)
- Specified by:
visitNewArrayin interfaceVisitor.RvalueVisitor
-
visitNewInitializedArray
public void visitNewInitializedArray(Java.NewInitializedArray nai)
- Specified by:
visitNewInitializedArrayin interfaceVisitor.RvalueVisitor
-
visitPackage
public void visitPackage(Java.Package p)
- Specified by:
visitPackagein interfaceVisitor.AtomVisitor
-
visitParameterAccess
public void visitParameterAccess(Java.ParameterAccess pa)
- Specified by:
visitParameterAccessin interfaceVisitor.RvalueVisitor
-
visitQualifiedThisReference
public void visitQualifiedThisReference(Java.QualifiedThisReference qtr)
- Specified by:
visitQualifiedThisReferencein interfaceVisitor.RvalueVisitor
-
visitReferenceType
public void visitReferenceType(Java.ReferenceType rt)
- Specified by:
visitReferenceTypein interfaceVisitor.TypeVisitor
-
visitRvalueMemberType
public void visitRvalueMemberType(Java.RvalueMemberType rmt)
- Specified by:
visitRvalueMemberTypein interfaceVisitor.TypeVisitor
-
visitSimpleType
public void visitSimpleType(Java.SimpleType st)
- Specified by:
visitSimpleTypein interfaceVisitor.TypeVisitor
-
visitSuperclassMethodInvocation
public void visitSuperclassMethodInvocation(Java.SuperclassMethodInvocation smi)
- Specified by:
visitSuperclassMethodInvocationin interfaceVisitor.RvalueVisitor
-
visitThisReference
public void visitThisReference(Java.ThisReference tr)
- Specified by:
visitThisReferencein interfaceVisitor.RvalueVisitor
-
visitUnaryOperation
public void visitUnaryOperation(Java.UnaryOperation uo)
- Specified by:
visitUnaryOperationin interfaceVisitor.RvalueVisitor
-
visitParenthesizedExpression
public void visitParenthesizedExpression(Java.ParenthesizedExpression pe)
- Specified by:
visitParenthesizedExpressionin interfaceVisitor.LvalueVisitor
-
visitAnonymousClassDeclaration
public void visitAnonymousClassDeclaration(Java.AnonymousClassDeclaration acd)
Description copied from interface:Visitor.TypeDeclarationVisitorE.g. 'new Superclass() { ... }'.- Specified by:
visitAnonymousClassDeclarationin interfaceVisitor.TypeDeclarationVisitor
-
visitNewAnonymousClassInstance
public void visitNewAnonymousClassInstance(Java.NewAnonymousClassInstance naci)
- Specified by:
visitNewAnonymousClassInstancein interfaceVisitor.RvalueVisitor
-
visitMarkerAnnotation
public void visitMarkerAnnotation(Java.MarkerAnnotation ma)
- Specified by:
visitMarkerAnnotationin interfaceVisitor.AnnotationVisitor
-
visitNormalAnnotation
public void visitNormalAnnotation(Java.NormalAnnotation na)
- Specified by:
visitNormalAnnotationin interfaceVisitor.AnnotationVisitor
-
visitSingleElementAnnotation
public void visitSingleElementAnnotation(Java.SingleElementAnnotation sea)
- Specified by:
visitSingleElementAnnotationin interfaceVisitor.AnnotationVisitor
-
visitElementValueArrayInitializer
public void visitElementValueArrayInitializer(Java.ElementValueArrayInitializer evai)
- Specified by:
visitElementValueArrayInitializerin interfaceVisitor.ElementValueArrayInitializerVisitor
-
-