org.codehaus.janino

Class UnparseVisitor

public class UnparseVisitor extends Object implements Visitor.ComprehensiveVisitor

A visitor that unparses (un-compiles) an AST to a Writer. See (String[]) for a usage example.
Field Summary
protected AutoIndentWriteraiw
protected PrintWriterpw
Constructor Summary
UnparseVisitor(Writer w)
Method Summary
static voidmain(String[] args)
Testing of parsing/unparsing.
static voidunparse(Java.CompilationUnit cu, Writer w)
Unparse the given CompilationUnit to the given Writer.
voidunparseCompilationUnit(Java.CompilationUnit cu)
voidunparseFormalParameter(Java.FunctionDeclarator.FormalParameter fp)
voidunparseVariableDeclarator(Java.VariableDeclarator vd)
voidvisitAlternateConstructorInvocation(Java.AlternateConstructorInvocation aci)
voidvisitAmbiguousName(Java.AmbiguousName an)
voidvisitAnonymousClassDeclaration(Java.AnonymousClassDeclaration acd)
voidvisitArrayAccessExpression(Java.ArrayAccessExpression aae)
voidvisitArrayLength(Java.ArrayLength al)
voidvisitArrayType(Java.ArrayType at)
voidvisitAssignment(Java.Assignment a)
voidvisitBasicType(Java.BasicType bt)
voidvisitBinaryOperation(Java.BinaryOperation bo)
voidvisitBlock(Java.Block b)
voidvisitBreakStatement(Java.BreakStatement bs)
voidvisitCast(Java.Cast c)
voidvisitClassLiteral(Java.ClassLiteral cl)
voidvisitConditionalExpression(Java.ConditionalExpression ce)
voidvisitConstructorDeclarator(Java.ConstructorDeclarator cd)
voidvisitContinueStatement(Java.ContinueStatement cs)
voidvisitCrement(Java.Crement c)
voidvisitDoStatement(Java.DoStatement ds)
voidvisitEmptyStatement(Java.EmptyStatement es)
voidvisitExpressionStatement(Java.ExpressionStatement es)
voidvisitFieldAccess(Java.FieldAccess fa)
voidvisitFieldAccessExpression(Java.FieldAccessExpression fae)
voidvisitFieldDeclaration(Java.FieldDeclaration fd)
voidvisitForStatement(Java.ForStatement fs)
voidvisitIfStatement(Java.IfStatement is)
voidvisitInitializer(Java.Initializer i)
voidvisitInstanceof(Java.Instanceof io)
voidvisitLabeledStatement(Java.LabeledStatement ls)
voidvisitLiteral(Java.Literal l)
voidvisitLocalClassDeclaration(Java.LocalClassDeclaration lcd)
voidvisitLocalClassDeclarationStatement(Java.LocalClassDeclarationStatement lcds)
voidvisitLocalVariableAccess(Java.LocalVariableAccess lva)
voidvisitLocalVariableDeclarationStatement(Java.LocalVariableDeclarationStatement lvds)
voidvisitMemberClassDeclaration(Java.MemberClassDeclaration mcd)
voidvisitMemberInterfaceDeclaration(Java.MemberInterfaceDeclaration mid)
voidvisitMethodDeclarator(Java.MethodDeclarator md)
voidvisitMethodInvocation(Java.MethodInvocation mi)
voidvisitNewAnonymousClassInstance(Java.NewAnonymousClassInstance naci)
voidvisitNewArray(Java.NewArray na)
voidvisitNewClassInstance(Java.NewClassInstance nci)
voidvisitNewInitializedArray(Java.NewInitializedArray nai)
voidvisitPackage(Java.Package p)
voidvisitPackageMemberClassDeclaration(Java.PackageMemberClassDeclaration pmcd)
voidvisitPackageMemberInterfaceDeclaration(Java.PackageMemberInterfaceDeclaration pmid)
voidvisitParameterAccess(Java.ParameterAccess pa)
voidvisitParenthesizedExpression(Java.ParenthesizedExpression pe)
voidvisitQualifiedThisReference(Java.QualifiedThisReference qtr)
voidvisitReferenceType(Java.ReferenceType rt)
voidvisitReturnStatement(Java.ReturnStatement rs)
voidvisitRvalueMemberType(Java.RvalueMemberType rmt)
voidvisitSimpleType(Java.SimpleType st)
voidvisitSingleStaticImportDeclaration(Java.CompilationUnit.SingleStaticImportDeclaration ssid)
voidvisitSingleTypeImportDeclaration(Java.CompilationUnit.SingleTypeImportDeclaration stid)
voidvisitStaticImportOnDemandDeclaration(Java.CompilationUnit.StaticImportOnDemandDeclaration siodd)
voidvisitSuperclassFieldAccessExpression(Java.SuperclassFieldAccessExpression scfae)
voidvisitSuperclassMethodInvocation(Java.SuperclassMethodInvocation smi)
voidvisitSuperConstructorInvocation(Java.SuperConstructorInvocation sci)
voidvisitSwitchStatement(Java.SwitchStatement ss)
voidvisitSynchronizedStatement(Java.SynchronizedStatement ss)
voidvisitThisReference(Java.ThisReference tr)
voidvisitThrowStatement(Java.ThrowStatement ts)
voidvisitTryStatement(Java.TryStatement ts)
voidvisitTypeImportOnDemandDeclaration(Java.CompilationUnit.TypeImportOnDemandDeclaration tiodd)
voidvisitUnaryOperation(Java.UnaryOperation uo)
voidvisitWhileStatement(Java.WhileStatement ws)

Field Detail

aiw

protected final AutoIndentWriter aiw

pw

protected final PrintWriter pw

Constructor Detail

UnparseVisitor

public UnparseVisitor(Writer w)

Method Detail

main

public static void main(String[] args)
Testing of parsing/unparsing.

Reads compilation units from the files named on the command line and unparses them to System#out.

unparse

public static void unparse(Java.CompilationUnit cu, Writer w)
Unparse the given CompilationUnit to the given Writer.

unparseCompilationUnit

public void unparseCompilationUnit(Java.CompilationUnit cu)

unparseFormalParameter

public void unparseFormalParameter(Java.FunctionDeclarator.FormalParameter fp)

unparseVariableDeclarator

public void unparseVariableDeclarator(Java.VariableDeclarator vd)

visitAlternateConstructorInvocation

public void visitAlternateConstructorInvocation(Java.AlternateConstructorInvocation aci)

visitAmbiguousName

public void visitAmbiguousName(Java.AmbiguousName an)

visitAnonymousClassDeclaration

public void visitAnonymousClassDeclaration(Java.AnonymousClassDeclaration acd)

visitArrayAccessExpression

public void visitArrayAccessExpression(Java.ArrayAccessExpression aae)

visitArrayLength

public void visitArrayLength(Java.ArrayLength al)

visitArrayType

public void visitArrayType(Java.ArrayType at)

visitAssignment

public void visitAssignment(Java.Assignment a)

visitBasicType

public void visitBasicType(Java.BasicType bt)

visitBinaryOperation

public void visitBinaryOperation(Java.BinaryOperation bo)

visitBlock

public void visitBlock(Java.Block b)

visitBreakStatement

public void visitBreakStatement(Java.BreakStatement bs)

visitCast

public void visitCast(Java.Cast c)

visitClassLiteral

public void visitClassLiteral(Java.ClassLiteral cl)

visitConditionalExpression

public void visitConditionalExpression(Java.ConditionalExpression ce)

visitConstructorDeclarator

public void visitConstructorDeclarator(Java.ConstructorDeclarator cd)

visitContinueStatement

public void visitContinueStatement(Java.ContinueStatement cs)

visitCrement

public void visitCrement(Java.Crement c)

visitDoStatement

public void visitDoStatement(Java.DoStatement ds)

visitEmptyStatement

public void visitEmptyStatement(Java.EmptyStatement es)

visitExpressionStatement

public void visitExpressionStatement(Java.ExpressionStatement es)

visitFieldAccess

public void visitFieldAccess(Java.FieldAccess fa)

visitFieldAccessExpression

public void visitFieldAccessExpression(Java.FieldAccessExpression fae)

visitFieldDeclaration

public void visitFieldDeclaration(Java.FieldDeclaration fd)

visitForStatement

public void visitForStatement(Java.ForStatement fs)

visitIfStatement

public void visitIfStatement(Java.IfStatement is)

visitInitializer

public void visitInitializer(Java.Initializer i)

visitInstanceof

public void visitInstanceof(Java.Instanceof io)

visitLabeledStatement

public void visitLabeledStatement(Java.LabeledStatement ls)

visitLiteral

public void visitLiteral(Java.Literal l)

visitLocalClassDeclaration

public void visitLocalClassDeclaration(Java.LocalClassDeclaration lcd)

visitLocalClassDeclarationStatement

public void visitLocalClassDeclarationStatement(Java.LocalClassDeclarationStatement lcds)

visitLocalVariableAccess

public void visitLocalVariableAccess(Java.LocalVariableAccess lva)

visitLocalVariableDeclarationStatement

public void visitLocalVariableDeclarationStatement(Java.LocalVariableDeclarationStatement lvds)

visitMemberClassDeclaration

public void visitMemberClassDeclaration(Java.MemberClassDeclaration mcd)

visitMemberInterfaceDeclaration

public void visitMemberInterfaceDeclaration(Java.MemberInterfaceDeclaration mid)

visitMethodDeclarator

public void visitMethodDeclarator(Java.MethodDeclarator md)

visitMethodInvocation

public void visitMethodInvocation(Java.MethodInvocation mi)

visitNewAnonymousClassInstance

public void visitNewAnonymousClassInstance(Java.NewAnonymousClassInstance naci)

visitNewArray

public void visitNewArray(Java.NewArray na)

visitNewClassInstance

public void visitNewClassInstance(Java.NewClassInstance nci)

visitNewInitializedArray

public void visitNewInitializedArray(Java.NewInitializedArray nai)

visitPackage

public void visitPackage(Java.Package p)

visitPackageMemberClassDeclaration

public void visitPackageMemberClassDeclaration(Java.PackageMemberClassDeclaration pmcd)

visitPackageMemberInterfaceDeclaration

public void visitPackageMemberInterfaceDeclaration(Java.PackageMemberInterfaceDeclaration pmid)

visitParameterAccess

public void visitParameterAccess(Java.ParameterAccess pa)

visitParenthesizedExpression

public void visitParenthesizedExpression(Java.ParenthesizedExpression pe)

visitQualifiedThisReference

public void visitQualifiedThisReference(Java.QualifiedThisReference qtr)

visitReferenceType

public void visitReferenceType(Java.ReferenceType rt)

visitReturnStatement

public void visitReturnStatement(Java.ReturnStatement rs)

visitRvalueMemberType

public void visitRvalueMemberType(Java.RvalueMemberType rmt)

visitSimpleType

public void visitSimpleType(Java.SimpleType st)

visitSingleStaticImportDeclaration

public void visitSingleStaticImportDeclaration(Java.CompilationUnit.SingleStaticImportDeclaration ssid)

visitSingleTypeImportDeclaration

public void visitSingleTypeImportDeclaration(Java.CompilationUnit.SingleTypeImportDeclaration stid)

visitStaticImportOnDemandDeclaration

public void visitStaticImportOnDemandDeclaration(Java.CompilationUnit.StaticImportOnDemandDeclaration siodd)

visitSuperclassFieldAccessExpression

public void visitSuperclassFieldAccessExpression(Java.SuperclassFieldAccessExpression scfae)

visitSuperclassMethodInvocation

public void visitSuperclassMethodInvocation(Java.SuperclassMethodInvocation smi)

visitSuperConstructorInvocation

public void visitSuperConstructorInvocation(Java.SuperConstructorInvocation sci)

visitSwitchStatement

public void visitSwitchStatement(Java.SwitchStatement ss)

visitSynchronizedStatement

public void visitSynchronizedStatement(Java.SynchronizedStatement ss)

visitThisReference

public void visitThisReference(Java.ThisReference tr)

visitThrowStatement

public void visitThrowStatement(Java.ThrowStatement ts)

visitTryStatement

public void visitTryStatement(Java.TryStatement ts)

visitTypeImportOnDemandDeclaration

public void visitTypeImportOnDemandDeclaration(Java.CompilationUnit.TypeImportOnDemandDeclaration tiodd)

visitUnaryOperation

public void visitUnaryOperation(Java.UnaryOperation uo)

visitWhileStatement

public void visitWhileStatement(Java.WhileStatement ws)