Top Fields Constructors Methods
org.codehaus.groovy.ast

public abstract Class MethodInvocationTrap

extends CodeVisitorSupport
Class Inheritance
Known Direct Subclasses
org.codehaus.groovy.ast.builder.AstBuilderTransformation.AstBuilderInvocationTrap
Imports
org.codehaus.groovy.ast.expr.ClosureExpression, .MethodCallExpression, org.codehaus.groovy.ast.tools.ClosureUtils, org.codehaus.groovy.control.SourceUnit, org.codehaus.groovy.control.io.ReaderSource, org.codehaus.groovy.control.messages.SyntaxErrorMessage, org.codehaus.groovy.syntax.SyntaxException

Field Summary

Modifier and TypeField and Description
protected final ReaderSource
protected final SourceUnit

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
protected void
addError(String
the error message
msg
,
ASTNode
the expression that caused the error message.
expr
)

Reports an error back to the source unit.

protected String

Returns:

the source the closure was created from
convertClosureToSource
(ClosureExpression
a closure
expression
)

Converts a ClosureExpression into the String source.

protected abstract boolean
protected abstract boolean
public void
visitMethodCallExpression(MethodCallExpression
the method call expression that may or may not be an AstBuilder 'from code' invocation.
call
)

Overrides org.codehaus.groovy.ast.CodeVisitorSupport.visitMethodCallExpression.

Implements org.codehaus.groovy.ast.GroovyCodeVisitor.visitMethodCallExpression.

Attempts to find AstBuilder 'from code' invocations.
Inherited from org.codehaus.groovy.ast.CodeVisitorSupport:
afterSwitchConditionExpressionVisitedvisitArgumentlistExpressionvisitArrayExpressionvisitAssertStatementvisitAttributeExpressionvisitBinaryExpressionvisitBitwiseNegationExpressionvisitBlockStatementvisitBooleanExpressionvisitBreakStatementvisitBytecodeExpressionvisitCaseStatementvisitCastExpressionvisitCatchStatementvisitClassExpressionvisitClosureExpressionvisitClosureListExpressionvisitConstantExpressionvisitConstructorCallExpressionvisitContinueStatementvisitDeclarationExpressionvisitDoWhileLoopvisitEmptyStatementvisitExpressionStatementvisitFieldExpressionvisitForLoopvisitGStringExpressionvisitIfElsevisitLambdaExpressionvisitListExpressionvisitMapEntryExpressionvisitMapExpressionvisitMethodPointerExpressionvisitMethodReferenceExpressionvisitNotExpressionvisitPostfixExpressionvisitPrefixExpressionvisitPropertyExpressionvisitRangeExpressionvisitReturnStatementvisitShortTernaryExpressionvisitSpreadExpressionvisitSpreadMapExpressionvisitStaticMethodCallExpressionvisitSwitchvisitSynchronizedStatementvisitTernaryExpressionvisitThrowStatementvisitTryCatchFinallyvisitTupleExpressionvisitUnaryMinusExpressionvisitUnaryPlusExpressionvisitVariableExpressionvisitWhileLoop

Field Detail

sourceback to summary
protected final ReaderSource source
sourceUnitback to summary
protected final SourceUnit sourceUnit

Constructor Detail

MethodInvocationTrapback to summary
public MethodInvocationTrap(ReaderSource source, SourceUnit sourceUnit)

Method Detail

addErrorback to summary
protected void addError(String msg, ASTNode expr)

Reports an error back to the source unit.

Parameters
msg:String

the error message

expr:ASTNode

the expression that caused the error message.

convertClosureToSourceback to summary
protected String convertClosureToSource(ClosureExpression expression)

Converts a ClosureExpression into the String source.

Parameters
expression:ClosureExpression

a closure

Returns:String

the source the closure was created from

handleTargetMethodCallExpressionback to summary
protected abstract boolean handleTargetMethodCallExpression(MethodCallExpression call)
isBuildInvocationback to summary
protected abstract boolean isBuildInvocation(MethodCallExpression call)
visitMethodCallExpressionback to summary
public void visitMethodCallExpression(MethodCallExpression call)

Overrides org.codehaus.groovy.ast.CodeVisitorSupport.visitMethodCallExpression.

Implements org.codehaus.groovy.ast.GroovyCodeVisitor.visitMethodCallExpression.

Attempts to find AstBuilder 'from code' invocations. When found, converts them into calls to the 'from string' approach.

Parameters
call:MethodCallExpression

the method call expression that may or may not be an AstBuilder 'from code' invocation.