Inspectopedia Help

Return value is outside of declared range

Reports numeric values returned from methods that don't conform to the declared method return range. You can declare method return range using a number of annotations:

  • org.jetbrains.annotations.Range from JetBrains annotations package (specify 'from' and 'to')

  • org.checkerframework.common.value.qual.IntRange from Checker Framework annotations package (specify 'from' and 'to')

  • org.checkerframework.checker.index.qual.GTENegativeOne from Checker Framework annotations package (range is '>= -1')

  • org.checkerframework.checker.index.qual.NonNegative from Checker Framework annotations package (range is '>= 0')

  • org.checkerframework.checker.index.qual.Positive from Checker Framework annotations package (range is '> 0')

  • javax.annotation.Nonnegative from JSR 305 annotations package (range is '>= 0')

  • javax.validation.constraints.Min (specify minimum value)

  • javax.validation.constraints.Max (specify maximum value)

Example:

@Range(from = 0, to = Integer.MAX_VALUE) int getValue() { // Warning: -1 is outside of declared range return -1; }

New in 2021.2

Inspection Details

Available in:

IntelliJ IDEA 2023.3, Qodana for JVM 2023.3

Plugin:

Java, 233.SNAPSHOT

Last modified: 13 July 2023