1 package javax.annotation.meta; 2 3 /** 4 * Used to describe the relationship between a qualifier T and the set of values 5 * S possible on an annotated element. 6 * 7 * In particular, an issues should be reported if an ALWAYS or MAYBE value is 8 * used where a NEVER value is required, or if a NEVER or MAYBE value is used 9 * where an ALWAYS value is required. 10 * 11 * 12 */ 13 public enum When { 14 /** S is a subset of T */ 15 ALWAYS, 16 /** nothing definitive is known about the relation between S and T */ 17 UNKNOWN, 18 /** S intersection T is non empty and S - T is nonempty */ 19 MAYBE, 20 /** S intersection T is empty */ 21 NEVER; 22 23 } 24