org.checkerframework.common.value.qual.ArrayLenRange Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of guava Show documentation
Show all versions of guava Show documentation
Guava is a suite of core and expanded libraries that include
utility classes, google's collections, io classes, and much
much more.
package org.checkerframework.common.value.qual;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import org.checkerframework.framework.qual.SubtypeOf;
/**
* An expression with this type evaluates to an array or a string whose length is in the given
* range. The bounds are inclusive; for example, {@code @ArrayLenRange(from=6, to=9)} represents an
* array or a string with four possible values for its length: 6, 7, 8, and 9.
*
* @checker_framework.manual #constant-value-checker Constant Value Checker
*/
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE_PARAMETER, ElementType.TYPE_USE})
@SubtypeOf(UnknownVal.class)
public @interface ArrayLenRange {
/** Smallest value in the range, inclusive. */
int from() default 0;
/** Largest value in the range, inclusive. */
int to() default Integer.MAX_VALUE;
}