ReturnAdderForClosures (groovy 2.4.11 API)
Date: 2017-04-27

Package: org.codehaus.groovy.transform.tailrec

## [Groovy] Class ReturnAdderForClosures

- org.codehaus.groovy.transform.tailrec.ReturnAdderForClosures

- Adds explicit return statements to implicit return points in a closure. This is necessary since tail-recursion is detected by having the recursive call within the return statement.

  Authors:
    Johannes Link

- - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `void` | `visitClosureExpression(ClosureExpression expression)`
    `` | `void` | `visitMethod(MethodNode method)`

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class CodeVisitorSupport` | `visitConstantExpression, visitReturnStatement, visitPropertyExpression, visitListExpression, visitClassExpression, visitExpressionStatement, visitAssertStatement, visitTryCatchFinally, visitArgumentlistExpression, visitBlockStatement, visitCaseStatement, visitContinueStatement, visitClosureExpression, visitSynchronizedStatement, visitTupleExpression, visitThrowStatement, visitVariableExpression, visitMethodCallExpression, visitBreakStatement, visitStaticMethodCallExpression, visitShortTernaryExpression, visitArrayExpression, visitConstructorCallExpression, visitPrefixExpression, visitUnaryPlusExpression, visitBooleanExpression, visitFieldExpression, visitTernaryExpression, visitRangeExpression, visitSpreadMapExpression, visitSpreadExpression, visitNotExpression, visitGStringExpression, visitUnaryMinusExpression, visitMapEntryExpression, visitBinaryExpression, visitPostfixExpression, visitAttributeExpression, visitBytecodeExpression, visitCatchStatement, visitMethodPointerExpression, visitBitwiseNegationExpression, visitClosureListExpression, visitMapExpression, visitCastExpression, visitDeclarationExpression, visitSwitch, visitWhileLoop, visitDoWhileLoop, visitForLoop, visitIfElse, wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll`
    `class Object` | `wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll`

- - ### Method Detail

    - #### void visitClosureExpression(ClosureExpression expression)

    - #### void visitMethod(MethodNode method)