public class com.fasterxml.classmate.Annotations implements java.io.Serializable, java.lang.Iterable<java.lang.annotation.Annotation>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.fasterxml.classmate.Annotations
super_class: java.lang.Object
{
private final java.lang.annotation.Annotation[] NO_ANNOTATIONS;
descriptor: [Ljava/lang/annotation/Annotation;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
protected java.util.LinkedHashMap<java.lang.Class<? extends java.lang.annotation.Annotation>, java.lang.annotation.Annotation> _annotations;
descriptor: Ljava/util/LinkedHashMap;
flags: (0x0004) ACC_PROTECTED
Signature: Ljava/util/LinkedHashMap<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Ljava/lang/annotation/Annotation;>;
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
iconst_0
anewarray java.lang.annotation.Annotation
putfield com.fasterxml.classmate.Annotations.NO_ANNOTATIONS:[Ljava/lang/annotation/Annotation;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/fasterxml/classmate/Annotations;
public void add(java.lang.annotation.Annotation);
descriptor: (Ljava/lang/annotation/Annotation;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
ifnonnull 2
1: aload 0
new java.util.LinkedHashMap
dup
invokespecial java.util.LinkedHashMap.<init>:()V
putfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
2: StackMap locals:
StackMap stack:
aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
aload 1
invokeinterface java.lang.annotation.Annotation.annotationType:()Ljava/lang/Class;
aload 1
invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/fasterxml/classmate/Annotations;
0 4 1 override Ljava/lang/annotation/Annotation;
MethodParameters:
Name Flags
override
public void addAll(com.fasterxml.classmate.Annotations);
descriptor: (Lcom/fasterxml/classmate/Annotations;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
ifnonnull 2
1: aload 0
new java.util.LinkedHashMap
dup
invokespecial java.util.LinkedHashMap.<init>:()V
putfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
2: StackMap locals:
StackMap stack:
aload 1
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
invokevirtual java.util.LinkedHashMap.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 3
goto 5
StackMap locals: com.fasterxml.classmate.Annotations com.fasterxml.classmate.Annotations top java.util.Iterator
StackMap stack:
3: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.annotation.Annotation
astore 2
start local 2 4: aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
aload 2
invokeinterface java.lang.annotation.Annotation.annotationType:()Ljava/lang/Class;
aload 2
invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 2 5: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/fasterxml/classmate/Annotations;
0 7 1 overrides Lcom/fasterxml/classmate/Annotations;
4 5 2 override Ljava/lang/annotation/Annotation;
MethodParameters:
Name Flags
overrides
public void addAsDefault(java.lang.annotation.Annotation);
descriptor: (Ljava/lang/annotation/Annotation;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface java.lang.annotation.Annotation.annotationType:()Ljava/lang/Class;
astore 2
start local 2 1: aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
ifnonnull 5
2: aload 0
new java.util.LinkedHashMap
dup
invokespecial java.util.LinkedHashMap.<init>:()V
putfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
3: aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
aload 2
aload 1
invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
4: goto 7
StackMap locals: java.lang.Class
StackMap stack:
5: aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
aload 2
invokevirtual java.util.LinkedHashMap.containsKey:(Ljava/lang/Object;)Z
ifne 7
6: aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
aload 2
aload 1
invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
7: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/fasterxml/classmate/Annotations;
0 8 1 defValue Ljava/lang/annotation/Annotation;
1 8 2 type Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
MethodParameters:
Name Flags
defValue
public java.util.Iterator<java.lang.annotation.Annotation> iterator();
descriptor: ()Ljava/util/Iterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
ifnonnull 2
1: aload 0
new java.util.LinkedHashMap
dup
invokespecial java.util.LinkedHashMap.<init>:()V
putfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
2: StackMap locals:
StackMap stack:
aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
invokevirtual java.util.LinkedHashMap.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/fasterxml/classmate/Annotations;
Signature: ()Ljava/util/Iterator<Ljava/lang/annotation/Annotation;>;
public int size();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
ifnonnull 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
invokevirtual java.util.LinkedHashMap.size:()I
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/fasterxml/classmate/Annotations;
public <A extends java.lang.annotation.Annotation> A get(java.lang.Class<A>);
descriptor: (Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
aload 1
invokevirtual java.util.LinkedHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.annotation.Annotation
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/fasterxml/classmate/Annotations;
0 3 1 cls Ljava/lang/Class<TA;>;
Signature: <A::Ljava/lang/annotation/Annotation;>(Ljava/lang/Class<TA;>;)TA;
MethodParameters:
Name Flags
cls
public java.lang.annotation.Annotation[] asArray();
descriptor: ()[Ljava/lang/annotation/Annotation;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
ifnull 1
aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
invokevirtual java.util.LinkedHashMap.isEmpty:()Z
ifeq 2
1: StackMap locals:
StackMap stack:
aload 0
getfield com.fasterxml.classmate.Annotations.NO_ANNOTATIONS:[Ljava/lang/annotation/Annotation;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
invokevirtual java.util.LinkedHashMap.values:()Ljava/util/Collection;
iconst_0
anewarray java.lang.annotation.Annotation
invokeinterface java.util.Collection.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.annotation.Annotation[]
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/fasterxml/classmate/Annotations;
public java.util.List<java.lang.annotation.Annotation> asList();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
ifnull 1
aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
invokevirtual java.util.LinkedHashMap.isEmpty:()Z
ifeq 2
1: StackMap locals:
StackMap stack:
invokestatic java.util.Collections.emptyList:()Ljava/util/List;
areturn
2: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
invokevirtual java.util.LinkedHashMap.size:()I
invokespecial java.util.ArrayList.<init>:(I)V
astore 1
start local 1 3: aload 1
aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
invokevirtual java.util.LinkedHashMap.values:()Ljava/util/Collection;
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
4: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/fasterxml/classmate/Annotations;
3 5 1 l Ljava/util/List<Ljava/lang/annotation/Annotation;>;
Signature: ()Ljava/util/List<Ljava/lang/annotation/Annotation;>;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
ifnonnull 2
1: ldc "[null]"
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.fasterxml.classmate.Annotations._annotations:Ljava/util/LinkedHashMap;
invokevirtual java.util.LinkedHashMap.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/fasterxml/classmate/Annotations;
}
Signature: Ljava/lang/Object;Ljava/io/Serializable;Ljava/lang/Iterable<Ljava/lang/annotation/Annotation;>;
SourceFile: "Annotations.java"