org.codehaus.aspectwerkz.expression
Class ArgsIndexVisitor
java.lang.Object
org.codehaus.aspectwerkz.expression.ExpressionVisitor
org.codehaus.aspectwerkz.expression.ArgsIndexVisitor
- All Implemented Interfaces:
- ExpressionParserVisitor
public class ArgsIndexVisitor
- extends ExpressionVisitor
A visitor to compute the args index of the target (matching) method/constructor which match the advice args. Note:
extends the ExpressionVisitor. We should allow for optimization (all=TRUE) by assuming that args(..) does not depends
of the matching context. The "(String a, String b):methodX && args(a,b) -OR- methodY && args(b,a)" expression should
not be allowed then.
- Author:
- Alexandre Vasseur
Method Summary |
static void |
updateContextForRuntimeInformation(ExpressionInfo expressionInfo,
ExpressionContext context,
ClassLoader loader)
Update the given context with its runtime information (this, target, args). |
Object |
visit(ASTArgParameter node,
Object data)
|
Object |
visit(ASTArgs node,
Object data)
|
Object |
visit(ASTCflow node,
Object data)
|
Object |
visit(ASTPointcutReference node,
Object data)
|
Object |
visit(ASTTarget node,
Object data)
|
Object |
visit(ASTThis node,
Object data)
|
Methods inherited from class org.codehaus.aspectwerkz.expression.ExpressionVisitor |
getASTRoot, getExpressionInfo, match, matchUndeterministic, toString, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visitAnnotatedNode, visitAttributes, visitModifiers, visitParameters |
updateContextForRuntimeInformation
public static void updateContextForRuntimeInformation(ExpressionInfo expressionInfo,
ExpressionContext context,
ClassLoader loader)
- Update the given context with its runtime information (this, target, args).
It should be called for each advice.
- Parameters:
expressionInfo
- context
-
visit
public Object visit(ASTPointcutReference node,
Object data)
- Specified by:
visit
in interface ExpressionParserVisitor
- Overrides:
visit
in class ExpressionVisitor
visit
public Object visit(ASTCflow node,
Object data)
- Specified by:
visit
in interface ExpressionParserVisitor
- Overrides:
visit
in class ExpressionVisitor
visit
public Object visit(ASTArgs node,
Object data)
- Specified by:
visit
in interface ExpressionParserVisitor
- Overrides:
visit
in class ExpressionVisitor
visit
public Object visit(ASTArgParameter node,
Object data)
- Specified by:
visit
in interface ExpressionParserVisitor
- Overrides:
visit
in class ExpressionVisitor
visit
public Object visit(ASTThis node,
Object data)
- Specified by:
visit
in interface ExpressionParserVisitor
- Overrides:
visit
in class ExpressionVisitor
visit
public Object visit(ASTTarget node,
Object data)
- Specified by:
visit
in interface ExpressionParserVisitor
- Overrides:
visit
in class ExpressionVisitor
Copyright © 2002-2005 Jonas Bonér, Alexandre Vasseur. All Rights Reserved.