- All Known Subinterfaces:
TypeAnnotation.CatchTarget,TypeAnnotation.EmptyTarget,TypeAnnotation.FormalParameterTarget,TypeAnnotation.LocalVarTarget,TypeAnnotation.OffsetTarget,TypeAnnotation.SupertypeTarget,TypeAnnotation.ThrowsTarget,TypeAnnotation.TypeArgumentTarget,TypeAnnotation.TypeParameterBoundTarget,TypeAnnotation.TypeParameterTarget
- All Known Implementing Classes:
TargetInfoImpl.CatchTargetImpl,TargetInfoImpl.EmptyTargetImpl,TargetInfoImpl.FormalParameterTargetImpl,TargetInfoImpl.LocalVarTargetImpl,TargetInfoImpl.OffsetTargetImpl,TargetInfoImpl.SupertypeTargetImpl,TargetInfoImpl.ThrowsTargetImpl,TargetInfoImpl.TypeArgumentTargetImpl,TargetInfoImpl.TypeParameterBoundTargetImpl,TargetInfoImpl.TypeParameterTargetImpl
- Enclosing interface:
TypeAnnotation
public static sealed interface TypeAnnotation.TargetInfo
permits TypeAnnotation.TypeParameterTarget, TypeAnnotation.SupertypeTarget, TypeAnnotation.TypeParameterBoundTarget, TypeAnnotation.EmptyTarget, TypeAnnotation.FormalParameterTarget, TypeAnnotation.ThrowsTarget, TypeAnnotation.LocalVarTarget, TypeAnnotation.CatchTarget, TypeAnnotation.OffsetTarget, TypeAnnotation.TypeArgumentTarget
Specifies which type in a declaration or expression is being annotated.
- Since:
- 22
-
Method Summary
Modifier and TypeMethodDescriptionstatic TypeAnnotation.EmptyTargetof(TypeAnnotation.TargetType targetType) Returns a target for annotations.ofCastExpr(Label target, int typeArgumentIndex) Returns a target for annotations on the i'th type in a cast expression.ofClassExtends(int supertypeIndex) Returns a target for annotations on the type of an "extends" or "implements" clause.ofClassTypeParameter(int typeParameterIndex) Returns a target for annotations on a class type parameter declaration.ofClassTypeParameterBound(int typeParameterIndex, int boundIndex) Returns a target for annotations on the i'th bound of the j'th type parameter declaration of a generic class, or interface.ofConstructorInvocationTypeArgument(Label target, int typeArgumentIndex) Returns a target for annotations on the i'th type argument in the explicit type argument list for an explicit constructor invocation statement.static TypeAnnotation.OffsetTargetofConstructorReference(Label target) Returns a target for annotations on the type before the :: in a constructor reference expression.ofConstructorReferenceTypeArgument(Label target, int typeArgumentIndex) Returns a target for annotations on the i'th type argument in the explicit type argument list for a new expression.static TypeAnnotation.CatchTargetofExceptionParameter(int exceptionTableIndex) Returns a target for annotations on the i'th type in an exception parameter declaration.static TypeAnnotation.EmptyTargetofField()Returns a target for annotations on the type in a field or record declaration.static TypeAnnotation.OffsetTargetofInstanceofExpr(Label target) Returns a target for annotations on the type in an instanceof expression.Returns a target for annotations on the type in a local variable declaration.ofMethodFormalParameter(int formalParameterIndex) Returns a target for annotations on the type in a formal parameter declaration of a method, constructor, or lambda expression.ofMethodInvocationTypeArgument(Label target, int typeArgumentIndex) Returns a target for annotations on the i'th type argument in the explicit type argument list for a method invocation expression.static TypeAnnotation.EmptyTargetReturns a target for annotations on the receiver type of a method or constructor.static TypeAnnotation.OffsetTargetofMethodReference(Label target) Returns a target for annotations on the type before the :: in a method reference expression.ofMethodReferenceTypeArgument(Label target, int typeArgumentIndex) Returns a target for annotations on the i'th type argument in the explicit type argument list for a method reference expression.static TypeAnnotation.EmptyTargetReturns a target for annotations on the return type of a method or a newly constructed object.ofMethodTypeParameter(int typeParameterIndex) Returns a target for annotations on a method type parameter declaration.ofMethodTypeParameterBound(int typeParameterIndex, int boundIndex) Returns a target for annotations on the i'th bound of the j'th type parameter declaration of a generic method, or constructor.static TypeAnnotation.OffsetTargetReturns a target for annotations on the type in a new expression.static TypeAnnotation.OffsetTargetofOffset(TypeAnnotation.TargetType targetType, Label target) Returns a target for annotations on the type in an instanceof expression or a new expression, or the type before the :: in a method reference expression.Returns a target for annotations on the type in a local variable declared as a resource in a try-with-resources statement.static TypeAnnotation.ThrowsTargetofThrows(int throwsTargetIndex) Returns a target for annotations on the i'th type in the throws clause of a method or constructor declaration.ofTypeArgument(TypeAnnotation.TargetType targetType, Label target, int typeArgumentIndex) Returns a target for annotations on the i'th type in a cast expression, or on the i'th type argument in the explicit type argument list for any of the following: a new expression, an explicit constructor invocation statement, a method invocation expression, or a method reference expression.ofTypeParameter(TypeAnnotation.TargetType targetType, int typeParameterIndex) Returns a target for annotations on a class or method type parameter declaration.ofTypeParameterBound(TypeAnnotation.TargetType targetType, int typeParameterIndex, int boundIndex) Returns a target for annotations on the i'th bound of the j'th type parameter declaration of a generic class, interface, method, or constructor.ofVariable(TypeAnnotation.TargetType targetType, List<TypeAnnotation.LocalVarTargetInfo> table) Returns a target for annotations on the type in a local variable declaration, including a variable declared as a resource in a try-with-resources statement.default intsize()Returns the size of the target info.Returns the type of the target.
-
Method Details
-
targetType
TypeAnnotation.TargetType targetType()Returns the type of the target.- Returns:
- the type of the target
-
size
default int size()Returns the size of the target info.- Returns:
- the size of the target info
-
ofTypeParameter
static TypeAnnotation.TypeParameterTarget ofTypeParameter(TypeAnnotation.TargetType targetType, int typeParameterIndex) Returns a target for annotations on a class or method type parameter declaration.- Parameters:
targetType-TypeAnnotation.TargetType.CLASS_TYPE_PARAMETERorTypeAnnotation.TargetType.METHOD_TYPE_PARAMETERtypeParameterIndex- specifies which type parameter declaration is annotated- Returns:
- a target for annotations on a class or method type parameter declaration
-
ofClassTypeParameter
Returns a target for annotations on a class type parameter declaration.- Parameters:
typeParameterIndex- specifies which type parameter declaration is annotated- Returns:
- a target for annotations on a class type parameter declaration
-
ofMethodTypeParameter
Returns a target for annotations on a method type parameter declaration.- Parameters:
typeParameterIndex- specifies which type parameter declaration is annotated- Returns:
- a target for annotations on a method type parameter declaration
-
ofClassExtends
Returns a target for annotations on the type of an "extends" or "implements" clause.- Parameters:
supertypeIndex- the index into the interfaces array or 65535 to indicate it is the superclass- Returns:
- a target for annotations on the type of an "extends" or "implements" clause
-
ofTypeParameterBound
static TypeAnnotation.TypeParameterBoundTarget ofTypeParameterBound(TypeAnnotation.TargetType targetType, int typeParameterIndex, int boundIndex) Returns a target for annotations on the i'th bound of the j'th type parameter declaration of a generic class, interface, method, or constructor.- Parameters:
targetType-TypeAnnotation.TargetType.CLASS_TYPE_PARAMETER_BOUNDorTypeAnnotation.TargetType.METHOD_TYPE_PARAMETER_BOUNDtypeParameterIndex- specifies which type parameter declaration is annotatedboundIndex- specifies which bound of the type parameter declaration is annotated- Returns:
- a target for annotations on the i'th bound of the j'th type parameter declaration of a generic class, interface, method, or constructor
-
ofClassTypeParameterBound
static TypeAnnotation.TypeParameterBoundTarget ofClassTypeParameterBound(int typeParameterIndex, int boundIndex) Returns a target for annotations on the i'th bound of the j'th type parameter declaration of a generic class, or interface.- Parameters:
typeParameterIndex- specifies which type parameter declaration is annotatedboundIndex- specifies which bound of the type parameter declaration is annotated- Returns:
- a target for annotations on the i'th bound of the j'th type parameter declaration of a generic class, or interface
-
ofMethodTypeParameterBound
static TypeAnnotation.TypeParameterBoundTarget ofMethodTypeParameterBound(int typeParameterIndex, int boundIndex) Returns a target for annotations on the i'th bound of the j'th type parameter declaration of a generic method, or constructor.- Parameters:
typeParameterIndex- specifies which type parameter declaration is annotatedboundIndex- specifies which bound of the type parameter declaration is annotated- Returns:
- a target for annotations on the i'th bound of the j'th type parameter declaration of a generic method, or constructor
-
of
Returns a target for annotations.- Parameters:
targetType-TypeAnnotation.TargetType.FIELD,TypeAnnotation.TargetType.METHOD_RETURNorTypeAnnotation.TargetType.METHOD_RECEIVER- Returns:
- a target for annotations
-
ofField
Returns a target for annotations on the type in a field or record declaration.- Returns:
- a target for annotations on the type in a field or record declaration
-
ofMethodReturn
Returns a target for annotations on the return type of a method or a newly constructed object.- Returns:
- a target for annotations on the return type of a method or a newly constructed object
-
ofMethodReceiver
Returns a target for annotations on the receiver type of a method or constructor.- Returns:
- a target for annotations on the receiver type of a method or constructor
-
ofMethodFormalParameter
Returns a target for annotations on the type in a formal parameter declaration of a method, constructor, or lambda expression.- Parameters:
formalParameterIndex- specifies which formal parameter declaration has an annotated type- Returns:
- a target for annotations on the type in a formal parameter declaration of a method, constructor, or lambda expression
-
ofThrows
Returns a target for annotations on the i'th type in the throws clause of a method or constructor declaration.- Parameters:
throwsTargetIndex- the index into the exception table of the Exceptions attribute of the method- Returns:
- a target for annotations on the i'th type in the throws clause of a method or constructor declaration
-
ofVariable
static TypeAnnotation.LocalVarTarget ofVariable(TypeAnnotation.TargetType targetType, List<TypeAnnotation.LocalVarTargetInfo> table) Returns a target for annotations on the type in a local variable declaration, including a variable declared as a resource in a try-with-resources statement.- Parameters:
targetType-TypeAnnotation.TargetType.LOCAL_VARIABLEorTypeAnnotation.TargetType.RESOURCE_VARIABLEtable- the list of local variable targets- Returns:
- a target for annotations on the type in a local variable declaration, including a variable declared as a resource in a try-with-resources statement
-
ofLocalVariable
Returns a target for annotations on the type in a local variable declaration.- Parameters:
table- the list of local variable targets- Returns:
- a target for annotations on the type in a local variable declaration
-
ofResourceVariable
static TypeAnnotation.LocalVarTarget ofResourceVariable(List<TypeAnnotation.LocalVarTargetInfo> table) Returns a target for annotations on the type in a local variable declared as a resource in a try-with-resources statement.- Parameters:
table- the list of local variable targets- Returns:
- a target for annotations on the type in a local variable declared as a resource in a try-with-resources statement
-
ofExceptionParameter
Returns a target for annotations on the i'th type in an exception parameter declaration.- Parameters:
exceptionTableIndex- the index into the exception table of the Code attribute- Returns:
- a target for annotations on the i'th type in an exception parameter declaration
-
ofOffset
Returns a target for annotations on the type in an instanceof expression or a new expression, or the type before the :: in a method reference expression.- Parameters:
targetType-TypeAnnotation.TargetType.INSTANCEOF,TypeAnnotation.TargetType.NEW,TypeAnnotation.TargetType.CONSTRUCTOR_REFERENCE, orTypeAnnotation.TargetType.METHOD_REFERENCEtarget- the code label corresponding to the instruction- Returns:
- a target for annotations on the type in an instanceof expression or a new expression, or the type before the :: in a method reference expression
-
ofInstanceofExpr
Returns a target for annotations on the type in an instanceof expression.- Parameters:
target- the code label corresponding to the instruction- Returns:
- a target for annotations on the type in an instanceof expression
-
ofNewExpr
Returns a target for annotations on the type in a new expression.- Parameters:
target- the code label corresponding to the instruction- Returns:
- a target for annotations on the type in a new expression
-
ofConstructorReference
Returns a target for annotations on the type before the :: in a constructor reference expression.- Parameters:
target- the code label corresponding to the instruction- Returns:
- a target for annotations on the type before the :: in a constructor reference expression
-
ofMethodReference
Returns a target for annotations on the type before the :: in a method reference expression.- Parameters:
target- the code label corresponding to the instruction- Returns:
- a target for annotations on the type before the :: in a method reference expression
-
ofTypeArgument
static TypeAnnotation.TypeArgumentTarget ofTypeArgument(TypeAnnotation.TargetType targetType, Label target, int typeArgumentIndex) Returns a target for annotations on the i'th type in a cast expression, or on the i'th type argument in the explicit type argument list for any of the following: a new expression, an explicit constructor invocation statement, a method invocation expression, or a method reference expression.- Parameters:
targetType-TypeAnnotation.TargetType.CAST,TypeAnnotation.TargetType.CONSTRUCTOR_INVOCATION_TYPE_ARGUMENT,TypeAnnotation.TargetType.METHOD_INVOCATION_TYPE_ARGUMENT,TypeAnnotation.TargetType.CONSTRUCTOR_REFERENCE_TYPE_ARGUMENT, orTypeAnnotation.TargetType.METHOD_REFERENCE_TYPE_ARGUMENTtarget- the code label corresponding to the instructiontypeArgumentIndex- specifies which type in the cast operator or argument is annotated- Returns:
- a target for annotations on the i'th type in a cast expression, or on the i'th type argument in the explicit type argument list for any of the following: a new expression, an explicit constructor invocation statement, a method invocation expression, or a method reference expression
-
ofCastExpr
Returns a target for annotations on the i'th type in a cast expression.- Parameters:
target- the code label corresponding to the instructiontypeArgumentIndex- specifies which type in the cast operator is annotated- Returns:
- a target for annotations on the i'th type in a cast expression
-
ofConstructorInvocationTypeArgument
static TypeAnnotation.TypeArgumentTarget ofConstructorInvocationTypeArgument(Label target, int typeArgumentIndex) Returns a target for annotations on the i'th type argument in the explicit type argument list for an explicit constructor invocation statement.- Parameters:
target- the code label corresponding to the instructiontypeArgumentIndex- specifies which type in the argument is annotated- Returns:
- a target for annotations on the i'th type argument in the explicit type argument list for an explicit constructor invocation statement
-
ofMethodInvocationTypeArgument
static TypeAnnotation.TypeArgumentTarget ofMethodInvocationTypeArgument(Label target, int typeArgumentIndex) Returns a target for annotations on the i'th type argument in the explicit type argument list for a method invocation expression.- Parameters:
target- the code label corresponding to the instructiontypeArgumentIndex- specifies which type in the argument is annotated- Returns:
- a target for annotations on the i'th type argument in the explicit type argument list for a method invocation expression
-
ofConstructorReferenceTypeArgument
static TypeAnnotation.TypeArgumentTarget ofConstructorReferenceTypeArgument(Label target, int typeArgumentIndex) Returns a target for annotations on the i'th type argument in the explicit type argument list for a new expression.- Parameters:
target- the code label corresponding to the instructiontypeArgumentIndex- specifies which type in the argument is annotated- Returns:
- a target for annotations on the i'th type argument in the explicit type argument list for a new expression
-
ofMethodReferenceTypeArgument
static TypeAnnotation.TypeArgumentTarget ofMethodReferenceTypeArgument(Label target, int typeArgumentIndex) Returns a target for annotations on the i'th type argument in the explicit type argument list for a method reference expression.- Parameters:
target- the code label corresponding to the instructiontypeArgumentIndex- specifies which type in the argument is annotated- Returns:
- a target for annotations on the i'th type argument in the explicit type argument list for a method reference expression
-