public final class jdk.jfr.internal.AnnotationConstruct
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: jdk.jfr.internal.AnnotationConstruct
super_class: java.lang.Object
{
private java.util.List<jdk.jfr.AnnotationElement> annotationElements;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Ljdk/jfr/AnnotationElement;>;
private byte unsignedFlag;
descriptor: B
flags: (0x0002) ACC_PRIVATE
public void <init>(java.util.List<jdk.jfr.AnnotationElement>);
descriptor: (Ljava/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
invokestatic java.util.Collections.emptyList:()Ljava/util/List;
putfield jdk.jfr.internal.AnnotationConstruct.annotationElements:Ljava/util/List;
2: aload 0
iconst_m1
putfield jdk.jfr.internal.AnnotationConstruct.unsignedFlag:B
3: aload 0
aload 1
putfield jdk.jfr.internal.AnnotationConstruct.annotationElements:Ljava/util/List;
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/jfr/internal/AnnotationConstruct;
0 5 1 ann Ljava/util/List<Ljdk/jfr/AnnotationElement;>;
Signature: (Ljava/util/List<Ljdk/jfr/AnnotationElement;>;)V
MethodParameters:
Name Flags
ann
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
invokestatic java.util.Collections.emptyList:()Ljava/util/List;
putfield jdk.jfr.internal.AnnotationConstruct.annotationElements:Ljava/util/List;
2: aload 0
iconst_m1
putfield jdk.jfr.internal.AnnotationConstruct.unsignedFlag:B
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/jfr/internal/AnnotationConstruct;
public void setAnnotationElements(java.util.List<jdk.jfr.AnnotationElement>);
descriptor: (Ljava/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic jdk.jfr.internal.Utils.smallUnmodifiable:(Ljava/util/List;)Ljava/util/List;
putfield jdk.jfr.internal.AnnotationConstruct.annotationElements:Ljava/util/List;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/jfr/internal/AnnotationConstruct;
0 2 1 elements Ljava/util/List<Ljdk/jfr/AnnotationElement;>;
Signature: (Ljava/util/List<Ljdk/jfr/AnnotationElement;>;)V
MethodParameters:
Name Flags
elements
public java.lang.String getLabel();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
ldc Ljdk/jfr/Label;
invokevirtual jdk.jfr.internal.AnnotationConstruct.getAnnotation:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast jdk.jfr.Label
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aconst_null
areturn
3: StackMap locals: jdk.jfr.Label
StackMap stack:
aload 1
invokeinterface jdk.jfr.Label.value:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/jfr/internal/AnnotationConstruct;
1 4 1 label Ljdk/jfr/Label;
public java.lang.String getDescription();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
ldc Ljdk/jfr/Description;
invokevirtual jdk.jfr.internal.AnnotationConstruct.getAnnotation:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast jdk.jfr.Description
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aconst_null
areturn
3: StackMap locals: jdk.jfr.Description
StackMap stack:
aload 1
invokeinterface jdk.jfr.Description.value:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/jfr/internal/AnnotationConstruct;
1 4 1 description Ljdk/jfr/Description;
public final <T> T getAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual jdk.jfr.internal.AnnotationConstruct.getAnnotationElement:(Ljava/lang/Class;)Ljdk/jfr/AnnotationElement;
astore 2
start local 2 1: aload 2
ifnull 3
2: aload 1
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
iconst_1
anewarray java.lang.Class
dup
iconst_0
aload 1
aastore
new jdk.jfr.internal.AnnotationConstruct$AnnotationInvokationHandler
dup
aload 2
invokespecial jdk.jfr.internal.AnnotationConstruct$AnnotationInvokationHandler.<init>:(Ljdk/jfr/AnnotationElement;)V
invokestatic java.lang.reflect.Proxy.newProxyInstance:(Ljava/lang/ClassLoader;[Ljava/lang/Class;Ljava/lang/reflect/InvocationHandler;)Ljava/lang/Object;
areturn
3: StackMap locals: jdk.jfr.AnnotationElement
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/jfr/internal/AnnotationConstruct;
0 4 1 clazz Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
1 4 2 ae Ljdk/jfr/AnnotationElement;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)TT;
MethodParameters:
Name Flags
clazz
public java.util.List<jdk.jfr.AnnotationElement> getUnmodifiableAnnotationElements();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.jfr.internal.AnnotationConstruct.annotationElements:Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/jfr/internal/AnnotationConstruct;
Signature: ()Ljava/util/List<Ljdk/jfr/AnnotationElement;>;
boolean remove(jdk.jfr.AnnotationElement);
descriptor: (Ljdk/jfr/AnnotationElement;)Z
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.jfr.internal.AnnotationConstruct.annotationElements:Ljava/util/List;
aload 1
invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/jfr/internal/AnnotationConstruct;
0 1 1 annotation Ljdk/jfr/AnnotationElement;
MethodParameters:
Name Flags
annotation
private jdk.jfr.AnnotationElement getAnnotationElement(java.lang.Class<? extends java.lang.annotation.Annotation>);
descriptor: (Ljava/lang/Class;)Ljdk/jfr/AnnotationElement;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: aload 1
invokestatic jdk.jfr.internal.Type.getTypeId:(Ljava/lang/Class;)J
lstore 2
start local 2 1: aload 1
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 4
start local 4 2: aload 0
invokevirtual jdk.jfr.internal.AnnotationConstruct.getUnmodifiableAnnotationElements:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 6
StackMap locals: jdk.jfr.internal.AnnotationConstruct java.lang.Class long java.lang.String top java.util.Iterator
StackMap stack:
3: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.jfr.AnnotationElement
astore 5
start local 5 4: aload 5
invokevirtual jdk.jfr.AnnotationElement.getTypeId:()J
lload 2
lcmp
ifne 6
aload 5
invokevirtual jdk.jfr.AnnotationElement.getTypeName:()Ljava/lang/String;
aload 4
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
5: aload 5
areturn
end local 5 6: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
7: aload 0
invokevirtual jdk.jfr.internal.AnnotationConstruct.getUnmodifiableAnnotationElements:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 11
StackMap locals:
StackMap stack:
8: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.jfr.AnnotationElement
astore 5
start local 5 9: aload 5
invokevirtual jdk.jfr.AnnotationElement.getTypeName:()Ljava/lang/String;
aload 4
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 11
10: aload 5
areturn
end local 5 11: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
12: aconst_null
areturn
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Ljdk/jfr/internal/AnnotationConstruct;
0 13 1 clazz Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
1 13 2 id J
2 13 4 className Ljava/lang/String;
4 6 5 a Ljdk/jfr/AnnotationElement;
9 11 5 a Ljdk/jfr/AnnotationElement;
Signature: (Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Ljdk/jfr/AnnotationElement;
MethodParameters:
Name Flags
clazz
public boolean hasUnsigned();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield jdk.jfr.internal.AnnotationConstruct.unsignedFlag:B
ifge 5
1: aload 0
ldc Ljdk/jfr/Unsigned;
invokevirtual jdk.jfr.internal.AnnotationConstruct.getAnnotation:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast jdk.jfr.Unsigned
astore 1
start local 1 2: aload 0
aload 1
ifnonnull 3
iconst_0
goto 4
StackMap locals: jdk.jfr.internal.AnnotationConstruct jdk.jfr.Unsigned
StackMap stack: jdk.jfr.internal.AnnotationConstruct
3: iconst_1
StackMap locals: jdk.jfr.internal.AnnotationConstruct jdk.jfr.Unsigned
StackMap stack: jdk.jfr.internal.AnnotationConstruct int
4: i2b
putfield jdk.jfr.internal.AnnotationConstruct.unsignedFlag:B
end local 1 5: StackMap locals:
StackMap stack:
aload 0
getfield jdk.jfr.internal.AnnotationConstruct.unsignedFlag:B
iconst_1
if_icmpne 6
iconst_1
goto 7
StackMap locals:
StackMap stack:
6: iconst_0
StackMap locals:
StackMap stack: int
7: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljdk/jfr/internal/AnnotationConstruct;
2 5 1 unsigned Ljdk/jfr/Unsigned;
}
SourceFile: "AnnotationConstruct.java"
NestMembers:
jdk.jfr.internal.AnnotationConstruct$AnnotationInvokationHandler
InnerClasses:
private final AnnotationInvokationHandler = jdk.jfr.internal.AnnotationConstruct$AnnotationInvokationHandler of jdk.jfr.internal.AnnotationConstruct