Package org.eclipse.jdt.core.dom.rewrite
Enum Class ImportRewrite.TypeLocation
java.lang.Object
java.lang.Enum<ImportRewrite.TypeLocation>
org.eclipse.jdt.core.dom.rewrite.ImportRewrite.TypeLocation
- All Implemented Interfaces:
Serializable
,Comparable<ImportRewrite.TypeLocation>
,Constable
- Enclosing class:
ImportRewrite
Used to determine how a type will be used, so that unwanted annotations can be filtered,
which is in particular relevant for avoiding redundant null annotations in the scope of
@NonNullByDefault
.
This enum is a superset of org.eclipse.jdt.annotation.DefaultLocation, and roughly corresponds
to the classification of type locations as introduced by JSR 308.- Since:
- 3.13
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Enum
Enum.EnumDesc<E extends Enum<E>>
-
Enum Constant Summary
Enum ConstantsEnum ConstantDescriptionsee org.eclipse.jdt.annotation.DefaultLocation.ARRAY_CONTENTSThe special valueCAST
is used for casts.The special valueEXCEPTION
is used for exception types in catch and throws declarations, which are implicitly non-null.see org.eclipse.jdt.annotation.DefaultLocation.FIELDThe special valueINSTANCEOF
is used forinstanceof
expressions.The special valueLOCAL_VARIABLE
is used for local variables: their nullness is determines by flow analysis, so top level nullness annotations are usually not needed for local variables (unless their type is a free type variable).The special valueNEW
is used fornew
expressions (object allocations).The special valueOTHER
is used for locations where type annotations are illegal, like type literals (X.class), annotations, or as scope for static field accesses.see org.eclipse.jdt.annotation.DefaultLocation.PARAMETERThe special valueRECEIVER
is used for the receiver type in a method declaration or method reference.see org.eclipse.jdt.annotation.DefaultLocation.RETURN_TYPEsee org.eclipse.jdt.annotation.DefaultLocation.TYPE_ARGUMENTsee org.eclipse.jdt.annotation.DefaultLocation.TYPE_BOUNDsee org.eclipse.jdt.annotation.DefaultLocation.TYPE_PARAMETERThe special valueUNKNOWN
is used for invocations that don't specify the intended type usage. -
Method Summary
Modifier and TypeMethodDescriptionstatic ImportRewrite.TypeLocation
Returns the enum constant of this class with the specified name.static ImportRewrite.TypeLocation[]
values()
Returns an array containing the constants of this enum class, in the order they are declared.
-
Enum Constant Details
-
PARAMETER
see org.eclipse.jdt.annotation.DefaultLocation.PARAMETER- Since:
- 3.13
-
RETURN_TYPE
see org.eclipse.jdt.annotation.DefaultLocation.RETURN_TYPE- Since:
- 3.13
-
FIELD
see org.eclipse.jdt.annotation.DefaultLocation.FIELD- Since:
- 3.13
-
TYPE_PARAMETER
see org.eclipse.jdt.annotation.DefaultLocation.TYPE_PARAMETER- Since:
- 3.13
-
TYPE_BOUND
see org.eclipse.jdt.annotation.DefaultLocation.TYPE_BOUND- Since:
- 3.13
-
TYPE_ARGUMENT
see org.eclipse.jdt.annotation.DefaultLocation.TYPE_ARGUMENT- Since:
- 3.13
-
ARRAY_CONTENTS
see org.eclipse.jdt.annotation.DefaultLocation.ARRAY_CONTENTS- Since:
- 3.13
-
LOCAL_VARIABLE
The special valueLOCAL_VARIABLE
is used for local variables: their nullness is determines by flow analysis, so top level nullness annotations are usually not needed for local variables (unless their type is a free type variable). Does not correspond to a value in org.eclipse.jdt.annotation.DefaultLocation.- Since:
- 3.13
-
CAST
The special valueCAST
is used for casts. Casts are never affected by@NonNullByDefault
Does not correspond to a value in org.eclipse.jdt.annotation.DefaultLocation.- Since:
- 3.13
-
INSTANCEOF
The special valueINSTANCEOF
is used forinstanceof
expressions. Null annotations are not supported in this location. Does not correspond to a value in org.eclipse.jdt.annotation.DefaultLocation.- Since:
- 3.13
-
NEW
The special valueNEW
is used fornew
expressions (object allocations). Null annotations are not supported in this location. Does not correspond to a value in org.eclipse.jdt.annotation.DefaultLocation.- Since:
- 3.13
-
RECEIVER
The special valueRECEIVER
is used for the receiver type in a method declaration or method reference. Null annotations are not supported in this location. Does not correspond to a value in org.eclipse.jdt.annotation.DefaultLocation.- Since:
- 3.13
-
EXCEPTION
The special valueEXCEPTION
is used for exception types in catch and throws declarations, which are implicitly non-null. Does not correspond to a value in org.eclipse.jdt.annotation.DefaultLocation.- Since:
- 3.13
-
OTHER
The special valueOTHER
is used for locations where type annotations are illegal, like type literals (X.class), annotations, or as scope for static field accesses. Does not correspond to a value in org.eclipse.jdt.annotation.DefaultLocation.- Since:
- 3.13
-
UNKNOWN
The special valueUNKNOWN
is used for invocations that don't specify the intended type usage. Does not correspond to a value in org.eclipse.jdt.annotation.DefaultLocation.- Since:
- 3.13
-
-
Method Details
-
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
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 nameNullPointerException
- if the argument is null
-