public class lombok.core.AnnotationProcessor extends javax.annotation.processing.AbstractProcessor
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: lombok.core.AnnotationProcessor
super_class: javax.annotation.processing.AbstractProcessor
{
private final java.util.List<lombok.core.AnnotationProcessor$ProcessorDescriptor> registered;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Llombok/core/AnnotationProcessor$ProcessorDescriptor;>;
private final java.util.List<lombok.core.AnnotationProcessor$ProcessorDescriptor> active;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Llombok/core/AnnotationProcessor$ProcessorDescriptor;>;
private final java.util.List<java.lang.String> delayedWarnings;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Ljava/lang/String;>;
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
invokespecial javax.annotation.processing.AbstractProcessor.<init>:()V
1: aload 0
iconst_2
anewarray lombok.core.AnnotationProcessor$ProcessorDescriptor
dup
iconst_0
new lombok.core.AnnotationProcessor$JavacDescriptor
dup
invokespecial lombok.core.AnnotationProcessor$JavacDescriptor.<init>:()V
aastore
dup
iconst_1
new lombok.core.AnnotationProcessor$EcjDescriptor
dup
invokespecial lombok.core.AnnotationProcessor$EcjDescriptor.<init>:()V
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
putfield lombok.core.AnnotationProcessor.registered:Ljava/util/List;
2: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield lombok.core.AnnotationProcessor.active:Ljava/util/List;
3: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield lombok.core.AnnotationProcessor.delayedWarnings:Ljava/util/List;
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Llombok/core/AnnotationProcessor;
private static java.lang.String trace(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: new java.io.StringWriter
dup
invokespecial java.io.StringWriter.<init>:()V
astore 1
start local 1 1: aload 0
new java.io.PrintWriter
dup
aload 1
iconst_1
invokespecial java.io.PrintWriter.<init>:(Ljava/io/Writer;Z)V
invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintWriter;)V
2: aload 1
invokevirtual java.io.StringWriter.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 t Ljava/lang/Throwable;
1 3 1 w Ljava/io/StringWriter;
MethodParameters:
Name Flags
t
public static javax.annotation.processing.ProcessingEnvironment getJavacProcessingEnvironment(javax.annotation.processing.ProcessingEnvironment, java.util.List<java.lang.String>);
descriptor: (Ljavax/annotation/processing/ProcessingEnvironment;Ljava/util/List;)Ljavax/annotation/processing/ProcessingEnvironment;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokestatic lombok.core.AnnotationProcessor.tryRecursivelyObtainJavacProcessingEnvironment:(Ljavax/annotation/processing/ProcessingEnvironment;)Ljavax/annotation/processing/ProcessingEnvironment;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 procEnv Ljavax/annotation/processing/ProcessingEnvironment;
0 1 1 delayedWarnings Ljava/util/List<Ljava/lang/String;>;
Signature: (Ljavax/annotation/processing/ProcessingEnvironment;Ljava/util/List<Ljava/lang/String;>;)Ljavax/annotation/processing/ProcessingEnvironment;
MethodParameters:
Name Flags
procEnv
delayedWarnings
private static javax.annotation.processing.ProcessingEnvironment tryRecursivelyObtainJavacProcessingEnvironment(javax.annotation.processing.ProcessingEnvironment);
descriptor: (Ljavax/annotation/processing/ProcessingEnvironment;)Ljavax/annotation/processing/ProcessingEnvironment;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
ldc "com.sun.tools.javac.processing.JavacProcessingEnvironment"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
astore 1
start local 1 3: goto 11
4: StackMap locals: java.lang.Class
StackMap stack:
aload 1
aload 0
invokestatic lombok.core.AnnotationProcessor.tryGetDelegateField:(Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/Object;
astore 2
start local 2 5: aload 2
ifnonnull 6
aload 1
aload 0
invokestatic lombok.core.AnnotationProcessor.tryGetProcessingEnvField:(Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/Object;
astore 2
6: StackMap locals: java.lang.Object
StackMap stack:
aload 2
ifnonnull 7
aload 1
aload 0
invokestatic lombok.core.AnnotationProcessor.tryGetProxyDelegateToField:(Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/Object;
astore 2
7: StackMap locals:
StackMap stack:
aload 2
ifnull 10
aload 2
checkcast javax.annotation.processing.ProcessingEnvironment
invokestatic lombok.core.AnnotationProcessor.tryRecursivelyObtainJavacProcessingEnvironment:(Ljavax/annotation/processing/ProcessingEnvironment;)Ljavax/annotation/processing/ProcessingEnvironment;
8: areturn
end local 2 9: StackMap locals: javax.annotation.processing.ProcessingEnvironment java.lang.Class
StackMap stack: java.lang.Exception
pop
10: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
astore 1
StackMap locals:
StackMap stack:
11: aload 1
ifnonnull 4
end local 1 12: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 procEnv Ljavax/annotation/processing/ProcessingEnvironment;
3 12 1 procEnvClass Ljava/lang/Class<*>;
5 9 2 delegate Ljava/lang/Object;
Exception table:
from to target type
4 8 9 Class java.lang.Exception
MethodParameters:
Name Flags
procEnv
private static tryGetDelegateField(java.lang.Class<?>, );
descriptor: (Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
ldc "delegate"
invokestatic lombok.permit.Permit.getField:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Field;
aload 1
invokevirtual java.lang.reflect.Field.get:(Ljava/lang/Object;)Ljava/lang/Object;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.Exception
pop
3: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 delegateClass Ljava/lang/Class<*>;
0 4 1 instance Ljava/lang/Object;
Exception table:
from to target type
0 1 2 Class java.lang.Exception
Signature: (Ljava/lang/Class<*>;Ljava/lang/Object;)Ljava/lang/Object;
MethodParameters:
Name Flags
delegateClass
instance
private static tryGetProcessingEnvField(java.lang.Class<?>, );
descriptor: (Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
ldc "processingEnv"
invokestatic lombok.permit.Permit.getField:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Field;
aload 1
invokevirtual java.lang.reflect.Field.get:(Ljava/lang/Object;)Ljava/lang/Object;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.Exception
pop
3: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 delegateClass Ljava/lang/Class<*>;
0 4 1 instance Ljava/lang/Object;
Exception table:
from to target type
0 1 2 Class java.lang.Exception
Signature: (Ljava/lang/Class<*>;Ljava/lang/Object;)Ljava/lang/Object;
MethodParameters:
Name Flags
delegateClass
instance
private static tryGetProxyDelegateToField(java.lang.Class<?>, );
descriptor: (Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokestatic java.lang.reflect.Proxy.getInvocationHandler:(Ljava/lang/Object;)Ljava/lang/reflect/InvocationHandler;
astore 2
start local 2 1: aload 2
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
ldc "val$delegateTo"
invokestatic lombok.permit.Permit.getField:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Field;
aload 2
invokevirtual java.lang.reflect.Field.get:(Ljava/lang/Object;)Ljava/lang/Object;
2: areturn
end local 2 3: StackMap locals:
StackMap stack: java.lang.Exception
pop
4: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 delegateClass Ljava/lang/Class<*>;
0 5 1 instance Ljava/lang/Object;
1 3 2 handler Ljava/lang/reflect/InvocationHandler;
Exception table:
from to target type
0 2 3 Class java.lang.Exception
Signature: (Ljava/lang/Class<*>;Ljava/lang/Object;)Ljava/lang/Object;
MethodParameters:
Name Flags
delegateClass
instance
public void init(javax.annotation.processing.ProcessingEnvironment);
descriptor: (Ljavax/annotation/processing/ProcessingEnvironment;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=5, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial javax.annotation.processing.AbstractProcessor.init:(Ljavax/annotation/processing/ProcessingEnvironment;)V
1: aload 0
getfield lombok.core.AnnotationProcessor.registered:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 4
StackMap locals: lombok.core.AnnotationProcessor javax.annotation.processing.ProcessingEnvironment top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast lombok.core.AnnotationProcessor$ProcessorDescriptor
astore 2
start local 2 3: aload 2
aload 1
aload 0
getfield lombok.core.AnnotationProcessor.delayedWarnings:Ljava/util/List;
invokevirtual lombok.core.AnnotationProcessor$ProcessorDescriptor.want:(Ljavax/annotation/processing/ProcessingEnvironment;Ljava/util/List;)Z
ifeq 4
aload 0
getfield lombok.core.AnnotationProcessor.active:Ljava/util/List;
aload 2
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 2 4: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 0
getfield lombok.core.AnnotationProcessor.active:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 15
aload 0
getfield lombok.core.AnnotationProcessor.delayedWarnings:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 15
6: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 7: aload 0
getfield lombok.core.AnnotationProcessor.registered:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 11
StackMap locals: lombok.core.AnnotationProcessor javax.annotation.processing.ProcessingEnvironment java.lang.StringBuilder top java.util.Iterator
StackMap stack:
8: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast lombok.core.AnnotationProcessor$ProcessorDescriptor
astore 3
start local 3 9: aload 2
invokevirtual java.lang.StringBuilder.length:()I
ifle 10
aload 2
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
10: StackMap locals: lombok.core.AnnotationProcessor javax.annotation.processing.ProcessingEnvironment java.lang.StringBuilder lombok.core.AnnotationProcessor$ProcessorDescriptor java.util.Iterator
StackMap stack:
aload 2
aload 3
invokevirtual lombok.core.AnnotationProcessor$ProcessorDescriptor.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 3 11: StackMap locals: lombok.core.AnnotationProcessor javax.annotation.processing.ProcessingEnvironment java.lang.StringBuilder top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
12: aload 1
invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
getstatic javax.tools.Diagnostic$Kind.WARNING:Ljavax/tools/Diagnostic$Kind;
ldc "You aren't using a compiler supported by lombok, so lombok will not work and has been disabled.\nYour processor is: %s\nLombok supports: %s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
13: aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aastore
dup
iconst_1
aload 2
aastore
14: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;)V
end local 2 15: StackMap locals: lombok.core.AnnotationProcessor javax.annotation.processing.ProcessingEnvironment
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Llombok/core/AnnotationProcessor;
0 16 1 procEnv Ljavax/annotation/processing/ProcessingEnvironment;
3 4 2 proc Llombok/core/AnnotationProcessor$ProcessorDescriptor;
7 15 2 supported Ljava/lang/StringBuilder;
9 11 3 proc Llombok/core/AnnotationProcessor$ProcessorDescriptor;
MethodParameters:
Name Flags
procEnv
public boolean process(java.util.Set<? extends javax.lang.model.element.TypeElement>, javax.annotation.processing.RoundEnvironment);
descriptor: (Ljava/util/Set;Ljavax/annotation/processing/RoundEnvironment;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield lombok.core.AnnotationProcessor.delayedWarnings:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifne 9
1: aload 2
invokeinterface javax.annotation.processing.RoundEnvironment.getRootElements:()Ljava/util/Set;
astore 3
start local 3 2: aload 3
invokeinterface java.util.Set.isEmpty:()Z
ifne 9
3: aload 3
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.lang.model.element.Element
astore 4
start local 4 4: aload 0
getfield lombok.core.AnnotationProcessor.delayedWarnings:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 7
StackMap locals: lombok.core.AnnotationProcessor java.util.Set javax.annotation.processing.RoundEnvironment java.util.Set javax.lang.model.element.Element top java.util.Iterator
StackMap stack:
5: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 6: aload 0
getfield lombok.core.AnnotationProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
getstatic javax.tools.Diagnostic$Kind.WARNING:Ljavax/tools/Diagnostic$Kind;
aload 5
aload 4
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;)V
end local 5 StackMap locals:
StackMap stack:
7: aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
8: aload 0
getfield lombok.core.AnnotationProcessor.delayedWarnings:Ljava/util/List;
invokeinterface java.util.List.clear:()V
end local 4 end local 3 9: StackMap locals: lombok.core.AnnotationProcessor java.util.Set javax.annotation.processing.RoundEnvironment
StackMap stack:
aload 0
getfield lombok.core.AnnotationProcessor.active:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 12
StackMap locals: lombok.core.AnnotationProcessor java.util.Set javax.annotation.processing.RoundEnvironment top java.util.Iterator
StackMap stack:
10: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast lombok.core.AnnotationProcessor$ProcessorDescriptor
astore 3
start local 3 11: aload 3
aload 1
aload 2
invokevirtual lombok.core.AnnotationProcessor$ProcessorDescriptor.process:(Ljava/util/Set;Ljavax/annotation/processing/RoundEnvironment;)Z
pop
end local 3 StackMap locals:
StackMap stack:
12: aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 10
13: iconst_1
istore 3
start local 3 14: iconst_1
istore 4
start local 4 15: aload 1
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 21
StackMap locals: lombok.core.AnnotationProcessor java.util.Set javax.annotation.processing.RoundEnvironment int int top java.util.Iterator
StackMap stack:
16: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.lang.model.element.TypeElement
astore 5
start local 5 17: iconst_0
istore 4
18: aload 5
invokeinterface javax.lang.model.element.TypeElement.getQualifiedName:()Ljavax/lang/model/element/Name;
astore 7
start local 7 19: aload 7
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
ldc "lombok."
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 20
goto 21
20: StackMap locals: lombok.core.AnnotationProcessor java.util.Set javax.annotation.processing.RoundEnvironment int int javax.lang.model.element.TypeElement java.util.Iterator javax.lang.model.element.Name
StackMap stack:
iconst_0
istore 3
end local 7 end local 5 21: StackMap locals: lombok.core.AnnotationProcessor java.util.Set javax.annotation.processing.RoundEnvironment int int top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 16
22: iload 3
ifeq 23
iload 4
ifne 23
iconst_1
ireturn
StackMap locals: lombok.core.AnnotationProcessor java.util.Set javax.annotation.processing.RoundEnvironment int int
StackMap stack:
23: iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Llombok/core/AnnotationProcessor;
0 24 1 annotations Ljava/util/Set<+Ljavax/lang/model/element/TypeElement;>;
0 24 2 roundEnv Ljavax/annotation/processing/RoundEnvironment;
2 9 3 rootElements Ljava/util/Set<+Ljavax/lang/model/element/Element;>;
4 9 4 firstRoot Ljavax/lang/model/element/Element;
6 7 5 warning Ljava/lang/String;
11 12 3 proc Llombok/core/AnnotationProcessor$ProcessorDescriptor;
14 24 3 onlyLombok Z
15 24 4 zeroElems Z
17 21 5 elem Ljavax/lang/model/element/TypeElement;
19 21 7 n Ljavax/lang/model/element/Name;
Signature: (Ljava/util/Set<+Ljavax/lang/model/element/TypeElement;>;Ljavax/annotation/processing/RoundEnvironment;)Z
MethodParameters:
Name Flags
annotations
roundEnv
public javax.lang.model.SourceVersion getSupportedSourceVersion();
descriptor: ()Ljavax/lang/model/SourceVersion;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: invokestatic javax.lang.model.SourceVersion.values:()[Ljavax/lang/model/SourceVersion;
invokestatic javax.lang.model.SourceVersion.values:()[Ljavax/lang/model/SourceVersion;
arraylength
iconst_1
isub
aaload
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Llombok/core/AnnotationProcessor;
}
SourceFile: "AnnotationProcessor.java"
NestMembers:
lombok.core.AnnotationProcessor$EcjDescriptor lombok.core.AnnotationProcessor$JavacDescriptor lombok.core.AnnotationProcessor$ProcessorDescriptor
InnerClasses:
public final Kind = javax.tools.Diagnostic$Kind of javax.tools.Diagnostic
EcjDescriptor = lombok.core.AnnotationProcessor$EcjDescriptor of lombok.core.AnnotationProcessor
JavacDescriptor = lombok.core.AnnotationProcessor$JavacDescriptor of lombok.core.AnnotationProcessor
abstract ProcessorDescriptor = lombok.core.AnnotationProcessor$ProcessorDescriptor of lombok.core.AnnotationProcessor
RuntimeVisibleAnnotations:
javax.annotation.processing.SupportedAnnotationTypes(value = {"*"})