org.glassfish.pfl.dynamic.codegen.impl
Class SourceExpressionVisitor
java.lang.Object
org.glassfish.pfl.dynamic.codegen.impl.TreeWalker
org.glassfish.pfl.dynamic.codegen.impl.SourceExpressionVisitor
- All Implemented Interfaces:
- Visitor
public class SourceExpressionVisitor
- extends TreeWalker
A Visitor that generates Java source for an expression.
All expression are converted into a simple Java String.
This visitor operates only on ExpressionInternal nodes. It ignores all
Statements as well as the top level generators.
This visitor compile complex expressions by applying another
instance of this visitor to the subexpressions recursively
using TreeWalker. Note that the mark facility of the
TreeWalkerContext is needed here to handle arguments lists
for various types of calls.
| Fields inherited from class org.glassfish.pfl.dynamic.codegen.impl.TreeWalker |
context |
| Methods inherited from class org.glassfish.pfl.dynamic.codegen.impl.TreeWalker |
assignmentStatementBeforeLeftSide, blockStatementBeforeBodyStatement, caseBranchBeforeBodyStatement, classGeneratorBeforeConstructor, classGeneratorBeforeFields, classGeneratorBeforeInitializer, classGeneratorBeforeMethod, definitionStatementBeforeExpr, ifExpressionBeforeFalsePart, ifExpressionBeforeTruePart, ifStatementBeforeFalsePart, ifStatementBeforeTruePart, methodGeneratorAfterArguments, methodGeneratorBeforeArguments, newArrExpressionAfterExpression, newArrExpressionAfterSize, postAssignmentStatement, postBlockStatement, postBreakStatement, postCaseBranch, postClassGenerator, postConstantExpression, postDefinitionStatement, postExpression, postFieldGenerator, postIfExpression, postIfStatement, postMethodGenerator, postNode, postReturnStatement, postStatement, postSwitchStatement, postThisExpression, postThrowStatement, postTryStatement, postVoidExpression, postWhileStatement, preAssignmentStatement, preBlockStatement, preBreakStatement, preCaseBranch, preClassGenerator, preDefinitionStatement, preExpression, preFieldGenerator, preIfExpression, preIfStatement, preMethodGenerator, preReturnStatement, preStatement, preSwitchStatement, preThrowStatement, preTryStatement, preWhileStatement, switchStatementBeforeCaseBranches, switchStatementBeforeDefault, tryStatementBeforeBlock, tryStatementBeforeFinalPart, visitArrayIndexExpression, visitArrayLengthExpression, visitAssignmentStatement, visitBinaryOperatorExpression, visitBlockStatement, visitBreakStatement, visitCaseBranch, visitCastExpression, visitClassGenerator, visitConstantExpression, visitDefinitionStatement, visitExpression, visitFieldGenerator, visitIfExpression, visitIfStatement, visitInstofExpression, visitMethodGenerator, visitNewArrExpression, visitNewObjExpression, visitNode, visitNonStaticCallExpression, visitNonStaticFieldAccessExpression, visitReturnStatement, visitStatement, visitStaticCallExpression, visitStaticFieldAccessExpression, visitSuperCallExpression, visitSuperObjExpression, visitSwitchStatement, visitThisExpression, visitThisObjExpression, visitThrowStatement, visitTryStatement, visitUnaryOperatorExpression, visitVariable, visitVoidExpression, visitWhileStatement, whileStatementBeforeBody |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
SourceExpressionVisitor
public SourceExpressionVisitor(TreeWalkerContext context,
ImportList imports)
value
public String value()
preNode
public boolean preNode(Node arg)
- Overrides:
preNode in class TreeWalker
preVariable
public boolean preVariable(Variable arg)
- Overrides:
preVariable in class TreeWalker
postVariable
public void postVariable(Variable arg)
- Overrides:
postVariable in class TreeWalker
preConstantExpression
public boolean preConstantExpression(ExpressionFactory.ConstantExpression arg)
- Overrides:
preConstantExpression in class TreeWalker
preVoidExpression
public boolean preVoidExpression(ExpressionFactory.VoidExpression arg)
- Overrides:
preVoidExpression in class TreeWalker
preThisExpression
public boolean preThisExpression(ExpressionFactory.ThisExpression arg)
- Overrides:
preThisExpression in class TreeWalker
preUnaryOperatorExpression
public boolean preUnaryOperatorExpression(ExpressionFactory.UnaryOperatorExpression arg)
- Overrides:
preUnaryOperatorExpression in class TreeWalker
postUnaryOperatorExpression
public void postUnaryOperatorExpression(ExpressionFactory.UnaryOperatorExpression arg)
- Overrides:
postUnaryOperatorExpression in class TreeWalker
preBinaryOperatorExpression
public boolean preBinaryOperatorExpression(ExpressionFactory.BinaryOperatorExpression arg)
- Overrides:
preBinaryOperatorExpression in class TreeWalker
binaryOperatorExpressionBeforeRight
public void binaryOperatorExpressionBeforeRight(ExpressionFactory.BinaryOperatorExpression arg)
- Overrides:
binaryOperatorExpressionBeforeRight in class TreeWalker
postBinaryOperatorExpression
public void postBinaryOperatorExpression(ExpressionFactory.BinaryOperatorExpression arg)
- Overrides:
postBinaryOperatorExpression in class TreeWalker
preCastExpression
public boolean preCastExpression(ExpressionFactory.CastExpression arg)
- Overrides:
preCastExpression in class TreeWalker
postCastExpression
public void postCastExpression(ExpressionFactory.CastExpression arg)
- Overrides:
postCastExpression in class TreeWalker
preInstofExpression
public boolean preInstofExpression(ExpressionFactory.InstofExpression arg)
- Overrides:
preInstofExpression in class TreeWalker
postInstofExpression
public void postInstofExpression(ExpressionFactory.InstofExpression arg)
- Overrides:
postInstofExpression in class TreeWalker
preNonStaticCallExpression
public boolean preNonStaticCallExpression(ExpressionFactory.NonStaticCallExpression arg)
- Overrides:
preNonStaticCallExpression in class TreeWalker
nonStaticCallExpressionBeforeArg
public void nonStaticCallExpressionBeforeArg(ExpressionFactory.NonStaticCallExpression arg)
- Overrides:
nonStaticCallExpressionBeforeArg in class TreeWalker
postNonStaticCallExpression
public void postNonStaticCallExpression(ExpressionFactory.NonStaticCallExpression arg)
- Overrides:
postNonStaticCallExpression in class TreeWalker
preStaticCallExpression
public boolean preStaticCallExpression(ExpressionFactory.StaticCallExpression arg)
- Overrides:
preStaticCallExpression in class TreeWalker
staticCallExpressionBeforeArg
public void staticCallExpressionBeforeArg(ExpressionFactory.StaticCallExpression arg)
- Overrides:
staticCallExpressionBeforeArg in class TreeWalker
postStaticCallExpression
public void postStaticCallExpression(ExpressionFactory.StaticCallExpression arg)
- Overrides:
postStaticCallExpression in class TreeWalker
preNewObjExpression
public boolean preNewObjExpression(ExpressionFactory.NewObjExpression arg)
- Overrides:
preNewObjExpression in class TreeWalker
newObjExpressionBeforeArg
public void newObjExpressionBeforeArg(ExpressionFactory.NewObjExpression arg)
- Overrides:
newObjExpressionBeforeArg in class TreeWalker
postNewObjExpression
public void postNewObjExpression(ExpressionFactory.NewObjExpression arg)
- Overrides:
postNewObjExpression in class TreeWalker
preNewArrExpression
public boolean preNewArrExpression(ExpressionFactory.NewArrExpression arg)
- Overrides:
preNewArrExpression in class TreeWalker
newArrExpressionBeforeExpression
public void newArrExpressionBeforeExpression(ExpressionFactory.NewArrExpression arg)
- Overrides:
newArrExpressionBeforeExpression in class TreeWalker
postNewArrExpression
public void postNewArrExpression(ExpressionFactory.NewArrExpression arg)
- Overrides:
postNewArrExpression in class TreeWalker
preSuperCallExpression
public boolean preSuperCallExpression(ExpressionFactory.SuperCallExpression arg)
- Overrides:
preSuperCallExpression in class TreeWalker
superCallExpressionBeforeArg
public void superCallExpressionBeforeArg(ExpressionFactory.SuperCallExpression arg)
- Overrides:
superCallExpressionBeforeArg in class TreeWalker
postSuperCallExpression
public void postSuperCallExpression(ExpressionFactory.SuperCallExpression arg)
- Overrides:
postSuperCallExpression in class TreeWalker
preSuperObjExpression
public boolean preSuperObjExpression(ExpressionFactory.SuperObjExpression arg)
- Overrides:
preSuperObjExpression in class TreeWalker
superObjExpressionBeforeArg
public void superObjExpressionBeforeArg(ExpressionFactory.SuperObjExpression arg)
- Overrides:
superObjExpressionBeforeArg in class TreeWalker
postSuperObjExpression
public void postSuperObjExpression(ExpressionFactory.SuperObjExpression arg)
- Overrides:
postSuperObjExpression in class TreeWalker
preThisObjExpression
public boolean preThisObjExpression(ExpressionFactory.ThisObjExpression arg)
- Overrides:
preThisObjExpression in class TreeWalker
thisObjExpressionBeforeArg
public void thisObjExpressionBeforeArg(ExpressionFactory.ThisObjExpression arg)
- Overrides:
thisObjExpressionBeforeArg in class TreeWalker
postThisObjExpression
public void postThisObjExpression(ExpressionFactory.ThisObjExpression arg)
- Overrides:
postThisObjExpression in class TreeWalker
preNonStaticFieldAccessExpression
public boolean preNonStaticFieldAccessExpression(ExpressionFactory.NonStaticFieldAccessExpression arg)
- Overrides:
preNonStaticFieldAccessExpression in class TreeWalker
postNonStaticFieldAccessExpression
public void postNonStaticFieldAccessExpression(ExpressionFactory.NonStaticFieldAccessExpression arg)
- Overrides:
postNonStaticFieldAccessExpression in class TreeWalker
preStaticFieldAccessExpression
public boolean preStaticFieldAccessExpression(ExpressionFactory.StaticFieldAccessExpression arg)
- Overrides:
preStaticFieldAccessExpression in class TreeWalker
postStaticFieldAccessExpression
public void postStaticFieldAccessExpression(ExpressionFactory.StaticFieldAccessExpression arg)
- Overrides:
postStaticFieldAccessExpression in class TreeWalker
preArrayIndexExpression
public boolean preArrayIndexExpression(ExpressionFactory.ArrayIndexExpression arg)
- Overrides:
preArrayIndexExpression in class TreeWalker
arrayIndexExpressionBeforeExpr
public void arrayIndexExpressionBeforeExpr(ExpressionFactory.ArrayIndexExpression arg)
- Overrides:
arrayIndexExpressionBeforeExpr in class TreeWalker
postArrayIndexExpression
public void postArrayIndexExpression(ExpressionFactory.ArrayIndexExpression arg)
- Overrides:
postArrayIndexExpression in class TreeWalker
preArrayLengthExpression
public boolean preArrayLengthExpression(ExpressionFactory.ArrayLengthExpression arg)
- Overrides:
preArrayLengthExpression in class TreeWalker
postArrayLengthExpression
public void postArrayLengthExpression(ExpressionFactory.ArrayLengthExpression arg)
- Overrides:
postArrayLengthExpression in class TreeWalker
Copyright © 2013 Oracle. All Rights Reserved.