blob: 9adef287c7c0e0c03ff68dfcea5d291eca637a69 [file] [log] [blame]
package org.checkerframework.framework.qual;
/**
* Specifies kinds of types.
*
* <p>These correspond to the constants in {@link javax.lang.model.type.TypeKind}. However, that
* enum is not available on Android and a warning is produced. So this enum is used instead.
*
* @checker_framework.manual #creating-type-introduction Declaratively specifying default
* annotations
*/
public enum TypeKind {
/** Corresponds to {@link javax.lang.model.type.TypeKind#BOOLEAN} types. */
BOOLEAN,
/** Corresponds to {@link javax.lang.model.type.TypeKind#BYTE} types. */
BYTE,
/** Corresponds to {@link javax.lang.model.type.TypeKind#SHORT} types. */
SHORT,
/** Corresponds to {@link javax.lang.model.type.TypeKind#INT} types. */
INT,
/** Corresponds to {@link javax.lang.model.type.TypeKind#LONG} types. */
LONG,
/** Corresponds to {@link javax.lang.model.type.TypeKind#CHAR} types. */
CHAR,
/** Corresponds to {@link javax.lang.model.type.TypeKind#FLOAT} types. */
FLOAT,
/** Corresponds to {@link javax.lang.model.type.TypeKind#DOUBLE} types. */
DOUBLE,
/** Corresponds to {@link javax.lang.model.type.TypeKind#VOID} types. */
VOID,
/** Corresponds to {@link javax.lang.model.type.TypeKind#NONE} types. */
NONE,
/** Corresponds to {@link javax.lang.model.type.TypeKind#NULL} types. */
NULL,
/** Corresponds to {@link javax.lang.model.type.TypeKind#ARRAY} types. */
ARRAY,
/** Corresponds to {@link javax.lang.model.type.TypeKind#DECLARED} types. */
DECLARED,
/** Corresponds to {@link javax.lang.model.type.TypeKind#ERROR} types. */
ERROR,
/** Corresponds to {@link javax.lang.model.type.TypeKind#TYPEVAR} types. */
TYPEVAR,
/** Corresponds to {@link javax.lang.model.type.TypeKind#WILDCARD} types. */
WILDCARD,
/** Corresponds to {@link javax.lang.model.type.TypeKind#PACKAGE} types. */
PACKAGE,
/** Corresponds to {@link javax.lang.model.type.TypeKind#EXECUTABLE} types. */
EXECUTABLE,
/** Corresponds to {@link javax.lang.model.type.TypeKind#OTHER} types. */
OTHER,
/** Corresponds to {@link javax.lang.model.type.TypeKind#UNION} types. */
UNION,
/** Corresponds to {@link javax.lang.model.type.TypeKind#INTERSECTION} types. */
INTERSECTION;
}