ReturnAdderForClosures (groovy 2.4.12 API)
Date: 2017-06-21

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` | `visitListExpression, visitClassExpression, visitReturnStatement, visitConstantExpression, visitPropertyExpression, visitTupleExpression, visitVariableExpression, visitArgumentlistExpression, visitMethodCallExpression, visitBinaryExpression, visitSpreadExpression, visitBitwiseNegationExpression, visitCastExpression, visitMapEntryExpression, visitArrayExpression, visitMethodPointerExpression, visitNotExpression, visitClosureListExpression, visitConstructorCallExpression, visitShortTernaryExpression, visitDeclarationExpression, visitSpreadMapExpression, visitBreakStatement, visitUnaryMinusExpression, visitGStringExpression, visitUnaryPlusExpression, visitBytecodeExpression, visitClosureExpression, visitCaseStatement, visitThrowStatement, visitContinueStatement, visitCatchStatement, visitExpressionStatement, visitTryCatchFinally, visitMapExpression, visitAttributeExpression, visitAssertStatement, visitPrefixExpression, visitSynchronizedStatement, visitBlockStatement, visitBooleanExpression, visitRangeExpression, visitPostfixExpression, visitStaticMethodCallExpression, visitTernaryExpression, visitFieldExpression, visitForLoop, visitIfElse, visitWhileLoop, visitSwitch, visitDoWhileLoop, 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)