Enum Class AtmCombo

java.lang.Object
java.lang.Enum<AtmCombo>
org.checkerframework.framework.util.AtmCombo
All Implemented Interfaces:
Serializable, Comparable<AtmCombo>, Constable

public enum AtmCombo extends Enum<AtmCombo>
An enum representing the cartesian product of the set of AtmKinds with itself. This represents all pair-wise combinations of AnnotatedTypeMirror subclasses. AtmCombo can be used in a switch to easily (and in a readable fashion) enumerate a subset of Atm pairs to handle. It is also used to execute AtmComboVisitor, which is a visitor of all possible combinations of AnnotatedTypeMirror subclasses.

For example:


 switch (AtmCombo.valueOf(atm1, atm2)) {
     case WILDCARD_WILDCARD:
     case TYPEVAR_TYPEVAR:
         doSomething(atm1, atm2);
         break;
 }
 
See Also:
  • Enum Constant Details Link icon

    • ARRAY_ARRAY Link icon

      public static final AtmCombo ARRAY_ARRAY
    • ARRAY_DECLARED Link icon

      public static final AtmCombo ARRAY_DECLARED
    • ARRAY_EXECUTABLE Link icon

      public static final AtmCombo ARRAY_EXECUTABLE
    • ARRAY_INTERSECTION Link icon

      public static final AtmCombo ARRAY_INTERSECTION
    • ARRAY_NONE Link icon

      public static final AtmCombo ARRAY_NONE
    • ARRAY_NULL Link icon

      public static final AtmCombo ARRAY_NULL
    • ARRAY_PRIMITIVE Link icon

      public static final AtmCombo ARRAY_PRIMITIVE
    • ARRAY_UNION Link icon

      public static final AtmCombo ARRAY_UNION
    • ARRAY_TYPEVAR Link icon

      public static final AtmCombo ARRAY_TYPEVAR
    • ARRAY_WILDCARD Link icon

      public static final AtmCombo ARRAY_WILDCARD
    • DECLARED_ARRAY Link icon

      public static final AtmCombo DECLARED_ARRAY
    • DECLARED_DECLARED Link icon

      public static final AtmCombo DECLARED_DECLARED
    • DECLARED_EXECUTABLE Link icon

      public static final AtmCombo DECLARED_EXECUTABLE
    • DECLARED_INTERSECTION Link icon

      public static final AtmCombo DECLARED_INTERSECTION
    • DECLARED_NONE Link icon

      public static final AtmCombo DECLARED_NONE
    • DECLARED_NULL Link icon

      public static final AtmCombo DECLARED_NULL
    • DECLARED_PRIMITIVE Link icon

      public static final AtmCombo DECLARED_PRIMITIVE
    • DECLARED_TYPEVAR Link icon

      public static final AtmCombo DECLARED_TYPEVAR
    • DECLARED_UNION Link icon

      public static final AtmCombo DECLARED_UNION
    • DECLARED_WILDCARD Link icon

      public static final AtmCombo DECLARED_WILDCARD
    • EXECUTABLE_ARRAY Link icon

      public static final AtmCombo EXECUTABLE_ARRAY
    • EXECUTABLE_DECLARED Link icon

      public static final AtmCombo EXECUTABLE_DECLARED
    • EXECUTABLE_EXECUTABLE Link icon

      public static final AtmCombo EXECUTABLE_EXECUTABLE
    • EXECUTABLE_INTERSECTION Link icon

      public static final AtmCombo EXECUTABLE_INTERSECTION
    • EXECUTABLE_NONE Link icon

      public static final AtmCombo EXECUTABLE_NONE
    • EXECUTABLE_NULL Link icon

      public static final AtmCombo EXECUTABLE_NULL
    • EXECUTABLE_PRIMITIVE Link icon

      public static final AtmCombo EXECUTABLE_PRIMITIVE
    • EXECUTABLE_TYPEVAR Link icon

      public static final AtmCombo EXECUTABLE_TYPEVAR
    • EXECUTABLE_UNION Link icon

      public static final AtmCombo EXECUTABLE_UNION
    • EXECUTABLE_WILDCARD Link icon

      public static final AtmCombo EXECUTABLE_WILDCARD
    • INTERSECTION_ARRAY Link icon

      public static final AtmCombo INTERSECTION_ARRAY
    • INTERSECTION_DECLARED Link icon

      public static final AtmCombo INTERSECTION_DECLARED
    • INTERSECTION_EXECUTABLE Link icon

      public static final AtmCombo INTERSECTION_EXECUTABLE
    • INTERSECTION_INTERSECTION Link icon

      public static final AtmCombo INTERSECTION_INTERSECTION
    • INTERSECTION_NONE Link icon

      public static final AtmCombo INTERSECTION_NONE
    • INTERSECTION_NULL Link icon

      public static final AtmCombo INTERSECTION_NULL
    • INTERSECTION_PRIMITIVE Link icon

      public static final AtmCombo INTERSECTION_PRIMITIVE
    • INTERSECTION_TYPEVAR Link icon

      public static final AtmCombo INTERSECTION_TYPEVAR
    • INTERSECTION_UNION Link icon

      public static final AtmCombo INTERSECTION_UNION
    • INTERSECTION_WILDCARD Link icon

      public static final AtmCombo INTERSECTION_WILDCARD
    • NONE_ARRAY Link icon

      public static final AtmCombo NONE_ARRAY
    • NONE_DECLARED Link icon

      public static final AtmCombo NONE_DECLARED
    • NONE_EXECUTABLE Link icon

      public static final AtmCombo NONE_EXECUTABLE
    • NONE_INTERSECTION Link icon

      public static final AtmCombo NONE_INTERSECTION
    • NONE_NONE Link icon

      public static final AtmCombo NONE_NONE
    • NONE_NULL Link icon

      public static final AtmCombo NONE_NULL
    • NONE_PRIMITIVE Link icon

      public static final AtmCombo NONE_PRIMITIVE
    • NONE_TYPEVAR Link icon

      public static final AtmCombo NONE_TYPEVAR
    • NONE_UNION Link icon

      public static final AtmCombo NONE_UNION
    • NONE_WILDCARD Link icon

      public static final AtmCombo NONE_WILDCARD
    • NULL_ARRAY Link icon

      public static final AtmCombo NULL_ARRAY
    • NULL_DECLARED Link icon

      public static final AtmCombo NULL_DECLARED
    • NULL_EXECUTABLE Link icon

      public static final AtmCombo NULL_EXECUTABLE
    • NULL_INTERSECTION Link icon

      public static final AtmCombo NULL_INTERSECTION
    • NULL_NONE Link icon

      public static final AtmCombo NULL_NONE
    • NULL_NULL Link icon

      public static final AtmCombo NULL_NULL
    • NULL_PRIMITIVE Link icon

      public static final AtmCombo NULL_PRIMITIVE
    • NULL_TYPEVAR Link icon

      public static final AtmCombo NULL_TYPEVAR
    • NULL_UNION Link icon

      public static final AtmCombo NULL_UNION
    • NULL_WILDCARD Link icon

      public static final AtmCombo NULL_WILDCARD
    • PRIMITIVE_ARRAY Link icon

      public static final AtmCombo PRIMITIVE_ARRAY
    • PRIMITIVE_DECLARED Link icon

      public static final AtmCombo PRIMITIVE_DECLARED
    • PRIMITIVE_EXECUTABLE Link icon

      public static final AtmCombo PRIMITIVE_EXECUTABLE
    • PRIMITIVE_INTERSECTION Link icon

      public static final AtmCombo PRIMITIVE_INTERSECTION
    • PRIMITIVE_NONE Link icon

      public static final AtmCombo PRIMITIVE_NONE
    • PRIMITIVE_NULL Link icon

      public static final AtmCombo PRIMITIVE_NULL
    • PRIMITIVE_PRIMITIVE Link icon

      public static final AtmCombo PRIMITIVE_PRIMITIVE
    • PRIMITIVE_TYPEVAR Link icon

      public static final AtmCombo PRIMITIVE_TYPEVAR
    • PRIMITIVE_UNION Link icon

      public static final AtmCombo PRIMITIVE_UNION
    • PRIMITIVE_WILDCARD Link icon

      public static final AtmCombo PRIMITIVE_WILDCARD
    • TYPEVAR_ARRAY Link icon

      public static final AtmCombo TYPEVAR_ARRAY
    • TYPEVAR_DECLARED Link icon

      public static final AtmCombo TYPEVAR_DECLARED
    • TYPEVAR_EXECUTABLE Link icon

      public static final AtmCombo TYPEVAR_EXECUTABLE
    • TYPEVAR_INTERSECTION Link icon

      public static final AtmCombo TYPEVAR_INTERSECTION
    • TYPEVAR_NONE Link icon

      public static final AtmCombo TYPEVAR_NONE
    • TYPEVAR_NULL Link icon

      public static final AtmCombo TYPEVAR_NULL
    • TYPEVAR_PRIMITIVE Link icon

      public static final AtmCombo TYPEVAR_PRIMITIVE
    • TYPEVAR_TYPEVAR Link icon

      public static final AtmCombo TYPEVAR_TYPEVAR
    • TYPEVAR_UNION Link icon

      public static final AtmCombo TYPEVAR_UNION
    • TYPEVAR_WILDCARD Link icon

      public static final AtmCombo TYPEVAR_WILDCARD
    • UNION_ARRAY Link icon

      public static final AtmCombo UNION_ARRAY
    • UNION_DECLARED Link icon

      public static final AtmCombo UNION_DECLARED
    • UNION_EXECUTABLE Link icon

      public static final AtmCombo UNION_EXECUTABLE
    • UNION_INTERSECTION Link icon

      public static final AtmCombo UNION_INTERSECTION
    • UNION_NONE Link icon

      public static final AtmCombo UNION_NONE
    • UNION_NULL Link icon

      public static final AtmCombo UNION_NULL
    • UNION_PRIMITIVE Link icon

      public static final AtmCombo UNION_PRIMITIVE
    • UNION_TYPEVAR Link icon

      public static final AtmCombo UNION_TYPEVAR
    • UNION_UNION Link icon

      public static final AtmCombo UNION_UNION
    • UNION_WILDCARD Link icon

      public static final AtmCombo UNION_WILDCARD
    • WILDCARD_ARRAY Link icon

      public static final AtmCombo WILDCARD_ARRAY
    • WILDCARD_DECLARED Link icon

      public static final AtmCombo WILDCARD_DECLARED
    • WILDCARD_EXECUTABLE Link icon

      public static final AtmCombo WILDCARD_EXECUTABLE
    • WILDCARD_INTERSECTION Link icon

      public static final AtmCombo WILDCARD_INTERSECTION
    • WILDCARD_NONE Link icon

      public static final AtmCombo WILDCARD_NONE
    • WILDCARD_NULL Link icon

      public static final AtmCombo WILDCARD_NULL
    • WILDCARD_PRIMITIVE Link icon

      public static final AtmCombo WILDCARD_PRIMITIVE
    • WILDCARD_TYPEVAR Link icon

      public static final AtmCombo WILDCARD_TYPEVAR
    • WILDCARD_UNION Link icon

      public static final AtmCombo WILDCARD_UNION
    • WILDCARD_WILDCARD Link icon

      public static final AtmCombo WILDCARD_WILDCARD
  • Field Details Link icon

    • type1Kind Link icon

      public final org.checkerframework.framework.util.AtmKind type1Kind
      First AtmKind.
    • type2Kind Link icon

      public final org.checkerframework.framework.util.AtmKind type2Kind
      Second AtmKind.
  • Method Details Link icon

    • values Link icon

      public static AtmCombo[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf Link icon

      public static AtmCombo valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • valueOf Link icon

      public static AtmCombo valueOf(org.checkerframework.framework.util.AtmKind type1, org.checkerframework.framework.util.AtmKind type2)
      Returns the AtmCombo corresponding to the given ATM pair of the given ATMKinds. e.g. (AtmKind.NULL, AtmKind.EXECUTABLE) => AtmCombo.NULL_EXECUTABLE.
      Returns:
      the AtmCombo corresponding to the given ATM pair of the given ATMKinds. e.g. (AtmKind.NULL, AtmKind.EXECUTABLE) => AtmCombo.NULL_EXECUTABLE
    • valueOf Link icon

      public static AtmCombo valueOf(AnnotatedTypeMirror type1, AnnotatedTypeMirror type2)
      Returns the AtmCombo corresponding to the pair of the classes for the given AnnotatedTypeMirrors. e.g. (AnnotatedPrimitiveType, AnnotatedDeclaredType) => AtmCombo.PRIMITIVE_DECLARED
      Returns:
      the AtmCombo corresponding to the pair of the classes for the given AnnotatedTypeMirrors
    • accept Link icon

      public static <RETURN_TYPE, PARAM> RETURN_TYPE accept(AnnotatedTypeMirror type1, AnnotatedTypeMirror type2, PARAM initialParam, AtmComboVisitor<RETURN_TYPE,PARAM> visitor)
      Call the visit method that corresponds to the AtmCombo that represents the classes of type1 and type2. That is, get the combo for type1 and type 2, use it to identify the correct visitor method, and call that method with type1, type2, and initialParam as arguments to the visit method.
      Type Parameters:
      RETURN_TYPE - the return type of the visitor's visit methods
      PARAM - the parameter type of the visitor's visit methods
      Parameters:
      type1 - first argument to the called visit method
      type2 - second argument to the called visit method
      initialParam - the parameter passed to the called visit method
      visitor - the visitor that is visiting the given types
      Returns:
      the return value of the visit method called