Package org.codehaus.groovy.classgen

# Class ReturnAdder

java.lang.Object
org.codehaus.groovy.classgen.ReturnAdder

public class ReturnAdder extends Object
Utility class to add return statements.

Extracted from Verifier as it can be useful for some AST transformations.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static interface`
  `ReturnAdder.ReturnStatementListener`
  Listener notified when a synthetic return statement is created.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ReturnAdder()`
  Creates a new return adder that adds return statements to methods.
  `ReturnAdder(ReturnAdder.ReturnStatementListener listener)`
  Creates a new return adder with a listener.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static void`
  `addReturnIfNeeded(MethodNode node)`
  Deprecated.
  Use `visitMethod(MethodNode)` instead.
  `void`
  `visitMethod(MethodNode node)`
  Adds return statements to given method whenever an implicit return is detected.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### ReturnAdder

    public ReturnAdder()
    Creates a new return adder that adds return statements to methods.

  - ### ReturnAdder

    public ReturnAdder(ReturnAdder.ReturnStatementListener listener)
    Creates a new return adder with a listener. Returns are not actually added when using a listener; instead, the listener is notified of what return statements would be added.
    Parameters:
      `listener` - the listener to notify of return statement additions

- ## Method Details

  - ### addReturnIfNeeded

    @Deprecated public static void addReturnIfNeeded(MethodNode node)
    Deprecated.
    Use `visitMethod(MethodNode)` instead.
    Adds return statements to a method whenever an implicit return is detected.
    Parameters:
      `node` - the method to process

  - ### visitMethod

    public void visitMethod(MethodNode node)
    Adds return statements to given method whenever an implicit return is detected.
    Parameters:
      `node` - the method node to visit and add returns to