RecursivenessTester (Groovy 5.0.8)

Package: org.codehaus.groovy.transform.tailrec

## [Java] Class RecursivenessTester

- org.codehaus.groovy.transform.tailrec.RecursivenessTester

-     public class RecursivenessTester
      extends Object

  Test if a method call is recursive if called within a given method node. Handles static calls as well.

  Currently known simplifications:

  - Does not check for method overloading or overridden methods
  - Does not check for matching return types; even void and any object type are considered to be compatible
  - Argument type matching could be more specific in case of static compilation
  - Method names via a GString are never considered to be recursive

- - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `public boolean` | `isRecursive(Map<String, ASTNode> params)`
    `` | `public boolean` | `isRecursive(MethodNode method, MethodCallExpression call)`
    `` | `public boolean` | `isRecursive(MethodNode method, StaticMethodCallExpression call)`

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class Object` | `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### public boolean isRecursive(Map<String, ASTNode> params)

    - #### @SuppressWarnings("Instanceof")
      public boolean isRecursive(MethodNode method, MethodCallExpression call)

    - #### public boolean isRecursive(MethodNode method, StaticMethodCallExpression call)