org.conqat.lib.commons.test.NoIndexValueClass Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of teamscale-lib-commons Show documentation
Show all versions of teamscale-lib-commons Show documentation
Provides common utility functions
package org.conqat.lib.commons.test;
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;
/**
* Indicates that you are sure that this class (and its subclasses) are never used in an index. Or,
* if they can be used in an index, you are sure that it causes no harm (for example, because the
* class and its subclasses will never have fields and their names won't change).
*
* The tests looking for correctness of the {@link IndexValueClass} annotations will stop their
* discovery run at classes that can theoretically be stored in an index but have this annotation.
*/
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface NoIndexValueClass {
/**
* Your chance to describe why you are sure that this class will not be stored in an index, even
* though that would be possible according to the type system.
*
* This is a "free text" field (no syntax constraints).
*/
String rationale() default "";
}