class io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4 extends io.micronaut.annotation.processing.PublicAbstractMethodVisitor<java.lang.Object, io.micronaut.aop.writer.AopProxyWriter>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4
super_class: io.micronaut.annotation.processing.PublicAbstractMethodVisitor
{
boolean first;
descriptor: Z
flags: (0x0000)
final io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor this$1;
descriptor: Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final javax.lang.model.element.ExecutableElement val$method;
descriptor: Ljavax/lang/model/element/ExecutableElement;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final javax.lang.model.type.DeclaredType val$typeToImplement;
descriptor: Ljavax/lang/model/type/DeclaredType;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final java.util.Map val$typeVariables;
descriptor: Ljava/util/Map;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final javax.lang.model.element.TypeElement val$typeElement;
descriptor: Ljavax/lang/model/element/TypeElement;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final io.micronaut.core.annotation.AnnotationMetadata val$methodAnnotationMetadata;
descriptor: Lio/micronaut/core/annotation/AnnotationMetadata;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor, javax.lang.model.element.TypeElement, io.micronaut.annotation.processing.visitor.JavaVisitorContext, javax.lang.model.element.ExecutableElement, javax.lang.model.type.DeclaredType, java.util.Map, javax.lang.model.element.TypeElement, io.micronaut.core.annotation.AnnotationMetadata);
descriptor: (Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;Ljavax/lang/model/element/TypeElement;Lio/micronaut/annotation/processing/visitor/JavaVisitorContext;Ljavax/lang/model/element/ExecutableElement;Ljavax/lang/model/type/DeclaredType;Ljava/util/Map;Ljavax/lang/model/element/TypeElement;Lio/micronaut/core/annotation/AnnotationMetadata;)V
flags: (0x0000)
Code:
stack=3, locals=9, args_size=9
start local 0 start local 2 start local 3 0: aload 0
aload 1
putfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
aload 0
aload 4
putfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.val$method:Ljavax/lang/model/element/ExecutableElement;
aload 0
aload 5
putfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.val$typeToImplement:Ljavax/lang/model/type/DeclaredType;
aload 0
aload 6
putfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.val$typeVariables:Ljava/util/Map;
aload 0
aload 7
putfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.val$typeElement:Ljavax/lang/model/element/TypeElement;
aload 0
aload 8
putfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.val$methodAnnotationMetadata:Lio/micronaut/core/annotation/AnnotationMetadata;
aload 0
aload 2
aload 3
invokespecial io.micronaut.annotation.processing.PublicAbstractMethodVisitor.<init>:(Ljavax/lang/model/element/TypeElement;Lio/micronaut/annotation/processing/visitor/JavaVisitorContext;)V
1: aload 0
iconst_1
putfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.first:Z
2: return
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4;
0 3 2 $anonymous0 Ljavax/lang/model/element/TypeElement;
0 3 3 $anonymous1 Lio/micronaut/annotation/processing/visitor/JavaVisitorContext;
MethodParameters:
Name Flags
this$0 final
$anonymous0
$anonymous1
val$method final
val$typeToImplement final
val$typeVariables final
val$typeElement final
val$methodAnnotationMetadata final
protected void accept(javax.lang.model.type.DeclaredType, javax.lang.model.element.Element, io.micronaut.aop.writer.AopProxyWriter);
descriptor: (Ljavax/lang/model/type/DeclaredType;Ljavax/lang/model/element/Element;Lio/micronaut/aop/writer/AopProxyWriter;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=13, locals=24, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.first:Z
ifne 3
1: aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
invokestatic io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.access$5:(Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;)Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor;
aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.val$method:Ljavax/lang/model/element/ExecutableElement;
new java.lang.StringBuilder
dup
ldc "Interface to adapt ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.val$typeToImplement:Ljavax/lang/model/type/DeclaredType;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "] is not a SAM type. More than one abstract method declared."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_0
anewarray java.lang.Object
invokevirtual io.micronaut.annotation.processing.BeanDefinitionInjectProcessor.error:(Ljavax/lang/model/element/Element;Ljava/lang/String;[Ljava/lang/Object;)V
2: return
3: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.first:Z
4: aload 2
checkcast javax.lang.model.element.ExecutableElement
astore 4
start local 4 5: aload 4
invokeinterface javax.lang.model.element.ExecutableElement.getParameters:()Ljava/util/List;
astore 5
start local 5 6: aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.val$method:Ljavax/lang/model/element/ExecutableElement;
invokeinterface javax.lang.model.element.ExecutableElement.getParameters:()Ljava/util/List;
astore 6
start local 6 7: aload 5
invokeinterface java.util.List.size:()I
istore 7
start local 7 8: iload 7
aload 6
invokeinterface java.util.List.size:()I
if_icmpne 106
9: new java.util.LinkedHashMap
dup
invokespecial java.util.LinkedHashMap.<init>:()V
astore 8
start local 8 10: iconst_0
istore 9
start local 9 11: goto 45
12: StackMap locals: io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4 javax.lang.model.type.DeclaredType javax.lang.model.element.Element io.micronaut.aop.writer.AopProxyWriter javax.lang.model.element.ExecutableElement java.util.List java.util.List int java.util.Map int
StackMap stack:
aload 5
iload 9
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast javax.lang.model.element.VariableElement
astore 10
start local 10 13: aload 6
iload 9
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast javax.lang.model.element.VariableElement
astore 11
start local 11 14: aload 10
invokeinterface javax.lang.model.element.VariableElement.asType:()Ljavax/lang/model/type/TypeMirror;
astore 12
start local 12 15: aload 11
invokeinterface javax.lang.model.element.VariableElement.asType:()Ljavax/lang/model/type/TypeMirror;
astore 13
start local 13 16: aload 12
invokeinterface javax.lang.model.type.TypeMirror.getKind:()Ljavax/lang/model/type/TypeKind;
getstatic javax.lang.model.type.TypeKind.TYPEVAR:Ljavax/lang/model/type/TypeKind;
if_acmpne 39
17: aload 12
checkcast javax.lang.model.type.TypeVariable
astore 14
start local 14 18: aload 14
invokeinterface javax.lang.model.type.TypeVariable.toString:()Ljava/lang/String;
astore 15
start local 15 19: aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.val$typeVariables:Ljava/util/Map;
aload 15
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 32
20: aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.val$typeVariables:Ljava/util/Map;
aload 15
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast javax.lang.model.type.TypeMirror
astore 16
start local 16 21: aload 16
invokeinterface javax.lang.model.type.TypeMirror.getKind:()Ljavax/lang/model/type/TypeKind;
getstatic javax.lang.model.type.TypeKind.TYPEVAR:Ljavax/lang/model/type/TypeKind;
if_acmpne 30
22: aload 16
checkcast javax.lang.model.type.TypeVariable
astore 17
start local 17 23: aload 17
invokeinterface javax.lang.model.type.TypeVariable.getLowerBound:()Ljavax/lang/model/type/TypeMirror;
astore 18
start local 18 24: aload 18
invokeinterface javax.lang.model.type.TypeMirror.getKind:()Ljavax/lang/model/type/TypeKind;
getstatic javax.lang.model.type.TypeKind.DECLARED:Ljavax/lang/model/type/TypeKind;
if_acmpne 27
25: aload 18
astore 12
26: goto 30
27: StackMap locals: io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4 javax.lang.model.type.DeclaredType javax.lang.model.element.Element io.micronaut.aop.writer.AopProxyWriter javax.lang.model.element.ExecutableElement java.util.List java.util.List int java.util.Map int javax.lang.model.element.VariableElement javax.lang.model.element.VariableElement javax.lang.model.type.TypeMirror javax.lang.model.type.TypeMirror javax.lang.model.type.TypeVariable java.lang.String javax.lang.model.type.TypeMirror javax.lang.model.type.TypeVariable javax.lang.model.type.TypeMirror
StackMap stack:
aload 17
invokeinterface javax.lang.model.type.TypeVariable.getUpperBound:()Ljavax/lang/model/type/TypeMirror;
astore 19
start local 19 28: aload 19
invokeinterface javax.lang.model.type.TypeMirror.getKind:()Ljavax/lang/model/type/TypeKind;
getstatic javax.lang.model.type.TypeKind.DECLARED:Ljavax/lang/model/type/TypeKind;
if_acmpne 30
29: aload 19
astore 12
end local 19 end local 18 end local 17 30: StackMap locals:
StackMap stack:
aload 8
aload 15
aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
invokestatic io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.access$5:(Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;)Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor;
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor.modelUtils:Lio/micronaut/annotation/processing/ModelUtils;
aload 13
invokevirtual io.micronaut.annotation.processing.ModelUtils.resolveTypeReference:(Ljavax/lang/model/type/TypeMirror;)Ljava/lang/Object;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 16 31: goto 39
32: StackMap locals:
StackMap stack:
aload 14
invokeinterface javax.lang.model.type.TypeVariable.getLowerBound:()Ljavax/lang/model/type/TypeMirror;
astore 16
start local 16 33: aload 16
invokeinterface javax.lang.model.type.TypeMirror.getKind:()Ljavax/lang/model/type/TypeKind;
getstatic javax.lang.model.type.TypeKind.DECLARED:Ljavax/lang/model/type/TypeKind;
if_acmpne 36
34: aload 16
astore 12
35: goto 39
36: StackMap locals: javax.lang.model.type.TypeMirror
StackMap stack:
aload 14
invokeinterface javax.lang.model.type.TypeVariable.getUpperBound:()Ljavax/lang/model/type/TypeMirror;
astore 17
start local 17 37: aload 17
invokeinterface javax.lang.model.type.TypeMirror.getKind:()Ljavax/lang/model/type/TypeKind;
getstatic javax.lang.model.type.TypeKind.DECLARED:Ljavax/lang/model/type/TypeKind;
if_acmpne 39
38: aload 17
astore 12
end local 17 end local 16 end local 15 end local 14 39: StackMap locals:
StackMap stack:
aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
invokestatic io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.access$5:(Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;)Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor;
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor.typeUtils:Ljavax/lang/model/util/Types;
aload 13
invokeinterface javax.lang.model.util.Types.erasure:(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/type/TypeMirror;
astore 14
start local 14 40: aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
invokestatic io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.access$5:(Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;)Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor;
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor.typeUtils:Ljavax/lang/model/util/Types;
aload 12
invokeinterface javax.lang.model.util.Types.erasure:(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/type/TypeMirror;
astore 15
start local 15 41: aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
invokestatic io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.access$5:(Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;)Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor;
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor.typeUtils:Ljavax/lang/model/util/Types;
aload 14
aload 15
invokeinterface javax.lang.model.util.Types.isAssignable:(Ljavax/lang/model/type/TypeMirror;Ljavax/lang/model/type/TypeMirror;)Z
ifne 44
42: aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
invokestatic io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.access$5:(Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;)Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor;
aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.val$method:Ljavax/lang/model/element/ExecutableElement;
new java.lang.StringBuilder
dup
ldc "Cannot adapt method ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.val$method:Ljavax/lang/model/element/ExecutableElement;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "] to target method ["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "]. Type ["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 13
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "] is not a subtype of type ["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 12
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "] for argument at position "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 9
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_0
anewarray java.lang.Object
invokevirtual io.micronaut.annotation.processing.BeanDefinitionInjectProcessor.error:(Ljavax/lang/model/element/Element;Ljava/lang/String;[Ljava/lang/Object;)V
43: return
end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 44: StackMap locals: io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4 javax.lang.model.type.DeclaredType javax.lang.model.element.Element io.micronaut.aop.writer.AopProxyWriter javax.lang.model.element.ExecutableElement java.util.List java.util.List int java.util.Map int
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
45: iload 9
iload 7
if_icmplt 12
end local 9 46: aload 8
invokeinterface java.util.Map.isEmpty:()Z
ifne 53
47: aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
invokestatic io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.access$5:(Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;)Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor;
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor.modelUtils:Lio/micronaut/annotation/processing/ModelUtils;
aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.val$typeToImplement:Ljavax/lang/model/type/DeclaredType;
invokevirtual io.micronaut.annotation.processing.ModelUtils.resolveTypeReference:(Ljavax/lang/model/type/TypeMirror;)Ljava/lang/Object;
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
48: aload 8
49: invokestatic java.util.Collections.singletonMap:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map;
astore 9
start local 9 50: aload 3
51: aload 9
52: invokevirtual io.micronaut.aop.writer.AopProxyWriter.visitTypeArguments:(Ljava/util/Map;)V
end local 9 53: StackMap locals:
StackMap stack:
aload 8
astore 9
start local 9 54: aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.val$typeElement:Ljavax/lang/model/element/TypeElement;
invokeinterface javax.lang.model.element.TypeElement.getQualifiedName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
aload 4
aload 9
invokevirtual io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.populateParameterData:(Ljava/lang/String;Ljavax/lang/model/element/ExecutableElement;Ljava/util/Map;)Lio/micronaut/annotation/processing/ExecutableElementParamInfo;
astore 10
start local 10 55: aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
invokestatic io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.access$5:(Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;)Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor;
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor.modelUtils:Lio/micronaut/annotation/processing/ModelUtils;
aload 4
invokeinterface javax.lang.model.element.ExecutableElement.getEnclosingElement:()Ljavax/lang/model/element/Element;
invokevirtual io.micronaut.annotation.processing.ModelUtils.resolveTypeReference:(Ljavax/lang/model/element/Element;)Ljava/lang/Object;
astore 11
start local 11 56: aload 11
ifnonnull 58
57: new java.lang.IllegalStateException
dup
ldc "Owning type cannot be null"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
58: StackMap locals: java.util.Map io.micronaut.annotation.processing.ExecutableElementParamInfo java.lang.Object
StackMap stack:
aload 4
invokeinterface javax.lang.model.element.ExecutableElement.getReturnType:()Ljavax/lang/model/type/TypeMirror;
astore 12
start local 12 59: aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
invokestatic io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.access$5:(Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;)Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor;
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor.genericUtils:Lio/micronaut/annotation/processing/GenericUtils;
aload 12
aload 9
invokevirtual io.micronaut.annotation.processing.GenericUtils.resolveTypeReference:(Ljavax/lang/model/type/TypeMirror;Ljava/util/Map;)Ljava/lang/Object;
astore 13
start local 13 60: aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
invokestatic io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.access$5:(Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;)Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor;
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor.genericUtils:Lio/micronaut/annotation/processing/GenericUtils;
aload 12
aload 9
invokevirtual io.micronaut.annotation.processing.GenericUtils.resolveGenericTypes:(Ljavax/lang/model/type/TypeMirror;Ljava/util/Map;)Ljava/util/Map;
astore 14
start local 14 61: aload 4
invokeinterface javax.lang.model.element.ExecutableElement.getSimpleName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
astore 15
start local 15 62: aload 10
invokevirtual io.micronaut.annotation.processing.ExecutableElementParamInfo.getParameters:()Ljava/util/Map;
astore 16
start local 16 63: aload 10
invokevirtual io.micronaut.annotation.processing.ExecutableElementParamInfo.getGenericParameters:()Ljava/util/Map;
astore 17
start local 17 64: aload 10
invokevirtual io.micronaut.annotation.processing.ExecutableElementParamInfo.getParameterMetadata:()Ljava/util/Map;
astore 18
start local 18 65: aload 10
invokevirtual io.micronaut.annotation.processing.ExecutableElementParamInfo.getGenericTypes:()Ljava/util/Map;
astore 19
start local 19 66: iload 7
anewarray io.micronaut.core.annotation.AnnotationClassValue
astore 20
start local 20 67: iconst_0
istore 21
start local 21 68: goto 76
69: StackMap locals: io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4 javax.lang.model.type.DeclaredType javax.lang.model.element.Element io.micronaut.aop.writer.AopProxyWriter javax.lang.model.element.ExecutableElement java.util.List java.util.List int java.util.Map java.util.Map io.micronaut.annotation.processing.ExecutableElementParamInfo java.lang.Object javax.lang.model.type.TypeMirror java.lang.Object java.util.Map java.lang.String java.util.Map java.util.Map java.util.Map java.util.Map io.micronaut.core.annotation.AnnotationClassValue[] int
StackMap stack:
aload 6
iload 21
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast javax.lang.model.element.VariableElement
astore 22
start local 22 70: aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
invokestatic io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.access$5:(Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;)Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor;
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor.modelUtils:Lio/micronaut/annotation/processing/ModelUtils;
aload 22
invokeinterface javax.lang.model.element.VariableElement.asType:()Ljavax/lang/model/type/TypeMirror;
invokevirtual io.micronaut.annotation.processing.ModelUtils.resolveTypeReference:(Ljavax/lang/model/type/TypeMirror;)Ljava/lang/Object;
astore 23
start local 23 71: aload 23
instanceof java.lang.Class
ifeq 74
72: aload 20
iload 21
new io.micronaut.core.annotation.AnnotationClassValue
dup
aload 23
checkcast java.lang.Class
invokespecial io.micronaut.core.annotation.AnnotationClassValue.<init>:(Ljava/lang/Class;)V
aastore
73: goto 75
74: StackMap locals: javax.lang.model.element.VariableElement java.lang.Object
StackMap stack:
aload 20
iload 21
new io.micronaut.core.annotation.AnnotationClassValue
dup
aload 23
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokespecial io.micronaut.core.annotation.AnnotationClassValue.<init>:(Ljava/lang/String;)V
aastore
end local 23 end local 22 75: StackMap locals:
StackMap stack:
iinc 21 1
StackMap locals:
StackMap stack:
76: iload 21
aload 20
arraylength
if_icmplt 69
end local 21 77: bipush 6
anewarray java.lang.Object
dup
iconst_0
78: ldc "adaptedBean"
aastore
dup
iconst_1
new io.micronaut.core.annotation.AnnotationClassValue
dup
aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
invokestatic io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.access$5:(Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;)Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor;
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor.modelUtils:Lio/micronaut/annotation/processing/ModelUtils;
aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.concreteClass:Ljavax/lang/model/element/TypeElement;
invokeinterface javax.lang.model.element.TypeElement.asType:()Ljavax/lang/model/type/TypeMirror;
invokevirtual io.micronaut.annotation.processing.ModelUtils.resolveTypeName:(Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
invokespecial io.micronaut.core.annotation.AnnotationClassValue.<init>:(Ljava/lang/String;)V
aastore
dup
iconst_2
79: ldc "adaptedMethod"
aastore
dup
iconst_3
aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.val$method:Ljavax/lang/model/element/ExecutableElement;
invokeinterface javax.lang.model.element.ExecutableElement.getSimpleName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
aastore
dup
iconst_4
80: ldc "adaptedArgumentTypes"
aastore
dup
iconst_5
aload 20
aastore
81: invokestatic io.micronaut.core.util.CollectionUtils.mapOf:([Ljava/lang/Object;)Ljava/util/Map;
astore 21
start local 21 82: aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
invokestatic io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.access$5:(Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;)Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor;
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor.annotationUtils:Lio/micronaut/annotation/processing/AnnotationUtils;
aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.concreteClass:Ljavax/lang/model/element/TypeElement;
invokevirtual io.micronaut.annotation.processing.AnnotationUtils.getAnnotationMetadata:(Ljavax/lang/model/element/Element;)Lio/micronaut/core/annotation/AnnotationMetadata;
83: ldc Ljavax/inject/Named;
ldc Ljava/lang/String;
invokeinterface io.micronaut.core.annotation.AnnotationMetadata.getValue:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/util/Optional;
aconst_null
invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
84: astore 22
start local 22 85: aload 22
invokestatic io.micronaut.core.util.StringUtils.isNotEmpty:(Ljava/lang/CharSequence;)Z
ifeq 87
86: aload 21
ldc "adaptedQualifier"
aload 22
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
87: StackMap locals: io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4 javax.lang.model.type.DeclaredType javax.lang.model.element.Element io.micronaut.aop.writer.AopProxyWriter javax.lang.model.element.ExecutableElement java.util.List java.util.List int java.util.Map java.util.Map io.micronaut.annotation.processing.ExecutableElementParamInfo java.lang.Object javax.lang.model.type.TypeMirror java.lang.Object java.util.Map java.lang.String java.util.Map java.util.Map java.util.Map java.util.Map io.micronaut.core.annotation.AnnotationClassValue[] java.util.Map java.lang.String
StackMap stack:
aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.val$methodAnnotationMetadata:Lio/micronaut/core/annotation/AnnotationMetadata;
88: ldc Lio/micronaut/aop/Adapter;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
89: aload 21
90: invokestatic io.micronaut.inject.annotation.DefaultAnnotationMetadata.mutateMember:(Lio/micronaut/core/annotation/AnnotationMetadata;Ljava/lang/String;Ljava/util/Map;)Lio/micronaut/core/annotation/AnnotationMetadata;
astore 23
start local 23 91: aload 3
92: aload 11
93: aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
invokestatic io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.access$5:(Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;)Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor;
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor.modelUtils:Lio/micronaut/annotation/processing/ModelUtils;
aload 12
invokevirtual io.micronaut.annotation.processing.ModelUtils.resolveTypeReference:(Ljavax/lang/model/type/TypeMirror;)Ljava/lang/Object;
94: aload 13
95: aload 14
96: aload 15
97: aload 16
98: aload 17
99: aload 18
100: aload 19
101: aload 23
102: aload 4
invokeinterface javax.lang.model.element.ExecutableElement.getEnclosingElement:()Ljavax/lang/model/element/Element;
invokestatic io.micronaut.inject.processing.JavaModelUtils.isInterface:(Ljavax/lang/model/element/Element;)Z
103: aload 4
invokeinterface javax.lang.model.element.ExecutableElement.isDefault:()Z
104: invokevirtual io.micronaut.aop.writer.AopProxyWriter.visitAroundMethod:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/util/Map;Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;Lio/micronaut/core/annotation/AnnotationMetadata;ZZ)V
end local 23 end local 22 end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 105: goto 107
106: StackMap locals: io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4 javax.lang.model.type.DeclaredType javax.lang.model.element.Element io.micronaut.aop.writer.AopProxyWriter javax.lang.model.element.ExecutableElement java.util.List java.util.List int
StackMap stack:
aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.this$1:Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;
invokestatic io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.access$5:(Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor;)Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor;
aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.val$method:Ljavax/lang/model/element/ExecutableElement;
new java.lang.StringBuilder
dup
ldc "Cannot adapt method ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.val$method:Ljavax/lang/model/element/ExecutableElement;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "] to target method ["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "]. Argument lengths don't match."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_0
anewarray java.lang.Object
invokevirtual io.micronaut.annotation.processing.BeanDefinitionInjectProcessor.error:(Ljavax/lang/model/element/Element;Ljava/lang/String;[Ljava/lang/Object;)V
107: StackMap locals:
StackMap stack:
return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 108 0 this Lio/micronaut/annotation/processing/BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4;
0 108 1 type Ljavax/lang/model/type/DeclaredType;
0 108 2 element Ljavax/lang/model/element/Element;
0 108 3 aopProxyWriter Lio/micronaut/aop/writer/AopProxyWriter;
5 108 4 targetMethod Ljavax/lang/model/element/ExecutableElement;
6 108 5 targetParameters Ljava/util/List<+Ljavax/lang/model/element/VariableElement;>;
7 108 6 sourceParameters Ljava/util/List<+Ljavax/lang/model/element/VariableElement;>;
8 108 7 paramLen I
10 105 8 genericTypes Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
11 46 9 i I
13 44 10 targetElement Ljavax/lang/model/element/VariableElement;
14 44 11 sourceElement Ljavax/lang/model/element/VariableElement;
15 44 12 targetType Ljavax/lang/model/type/TypeMirror;
16 44 13 sourceType Ljavax/lang/model/type/TypeMirror;
18 39 14 tv Ljavax/lang/model/type/TypeVariable;
19 39 15 variableName Ljava/lang/String;
21 31 16 variableMirror Ljavax/lang/model/type/TypeMirror;
23 30 17 tv2 Ljavax/lang/model/type/TypeVariable;
24 30 18 lowerBound Ljavax/lang/model/type/TypeMirror;
28 30 19 upperBound Ljavax/lang/model/type/TypeMirror;
33 39 16 lowerBound Ljavax/lang/model/type/TypeMirror;
37 39 17 upperBound Ljavax/lang/model/type/TypeMirror;
40 44 14 thisType Ljavax/lang/model/type/TypeMirror;
41 44 15 thatType Ljavax/lang/model/type/TypeMirror;
50 53 9 typeData Ljava/util/Map<Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;>;
54 105 9 boundTypes Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
55 105 10 params Lio/micronaut/annotation/processing/ExecutableElementParamInfo;
56 105 11 owningType Ljava/lang/Object;
59 105 12 returnTypeMirror Ljavax/lang/model/type/TypeMirror;
60 105 13 resolvedReturnType Ljava/lang/Object;
61 105 14 returnTypeGenerics Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
62 105 15 methodName Ljava/lang/String;
63 105 16 methodParameters Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
64 105 17 genericParameters Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
65 105 18 methodQualifier Ljava/util/Map<Ljava/lang/String;Lio/micronaut/core/annotation/AnnotationMetadata;>;
66 105 19 methodGenericTypes Ljava/util/Map<Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;>;
67 105 20 adaptedArgumentTypes [Lio/micronaut/core/annotation/AnnotationClassValue;
68 77 21 i I
70 75 22 ve Ljavax/lang/model/element/VariableElement;
71 75 23 r Ljava/lang/Object;
82 105 21 members Ljava/util/Map;
85 105 22 qualifier Ljava/lang/String;
91 105 23 annotationMetadata Lio/micronaut/core/annotation/AnnotationMetadata;
MethodParameters:
Name Flags
type
element
aopProxyWriter
protected void accept(javax.lang.model.type.DeclaredType, javax.lang.model.element.Element, java.lang.Object);
descriptor: (Ljavax/lang/model/type/DeclaredType;Ljavax/lang/model/element/Element;Ljava/lang/Object;)V
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
0: aload 0
aload 1
aload 2
aload 3
checkcast io.micronaut.aop.writer.AopProxyWriter
invokevirtual io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4.accept:(Ljavax/lang/model/type/DeclaredType;Ljavax/lang/model/element/Element;Lio/micronaut/aop/writer/AopProxyWriter;)V
return
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Lio/micronaut/annotation/processing/PublicAbstractMethodVisitor<Ljava/lang/Object;Lio/micronaut/aop/writer/AopProxyWriter;>;
SourceFile: "BeanDefinitionInjectProcessor.java"
EnclosingMethod: io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor.visitAdaptedMethod:(Ljavax/lang/model/element/ExecutableElement;Lio/micronaut/core/annotation/AnnotationMetadata;)V
NestHost: io.micronaut.annotation.processing.BeanDefinitionInjectProcessor
InnerClasses:
AnnBeanElementVisitor = io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor of io.micronaut.annotation.processing.BeanDefinitionInjectProcessor
io.micronaut.annotation.processing.BeanDefinitionInjectProcessor$AnnBeanElementVisitor$4