Package: org.apache.groovy.contracts

## [Java] Class RecursionVariantViolation

- org.apache.groovy.contracts.RecursionVariantViolation

-     public class RecursionVariantViolation
      extends AssertionViolation

  Thrown when a method-level Decreases recursion termination measure fails — either a recursive re-entry did not strictly decrease the measure, or the measure became negative (not well-founded).

  See Also:
    AssertionViolation
    LoopVariantViolation
  Since:
    6.0.0

- - ### Constructor Summary

    Constructors
    Constructor and description
    `RecursionVariantViolation()` Creates a recursion-variant violation without an explicit detail message.
    `RecursionVariantViolation(Object o)` Creates a recursion-variant violation with an object-valued detail.

- - ### Constructor Detail

    - #### public RecursionVariantViolation()

      Creates a recursion-variant violation without an explicit detail message.

    - #### public RecursionVariantViolation(Object o)

      Creates a recursion-variant violation with an object-valued detail.

      Parameters:
        `o` - the detail object