public class io.micronaut.core.bind.DefaultExecutableBinder<S> implements io.micronaut.core.bind.ExecutableBinder<S>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.micronaut.core.bind.DefaultExecutableBinder
super_class: java.lang.Object
{
private final java.util.Map<io.micronaut.core.type.Argument<?>, java.lang.Object> preBound;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Lio/micronaut/core/type/Argument<*>;Ljava/lang/Object;>;
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.emptyMap:()Ljava/util/Map;
putfield io.micronaut.core.bind.DefaultExecutableBinder.preBound:Ljava/util/Map;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/micronaut/core/bind/DefaultExecutableBinder<TS;>;
public void <init>(java.util.Map<io.micronaut.core.type.Argument<?>, java.lang.Object>);
descriptor: (Ljava/util/Map;)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
aload 1
ifnonnull 2
invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
goto 3
StackMap locals: io.micronaut.core.bind.DefaultExecutableBinder java.util.Map
StackMap stack: io.micronaut.core.bind.DefaultExecutableBinder
2: aload 1
StackMap locals: io.micronaut.core.bind.DefaultExecutableBinder java.util.Map
StackMap stack: io.micronaut.core.bind.DefaultExecutableBinder java.util.Map
3: putfield io.micronaut.core.bind.DefaultExecutableBinder.preBound:Ljava/util/Map;
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/micronaut/core/bind/DefaultExecutableBinder<TS;>;
0 5 1 preBound Ljava/util/Map<Lio/micronaut/core/type/Argument<*>;Ljava/lang/Object;>;
Signature: (Ljava/util/Map<Lio/micronaut/core/type/Argument<*>;Ljava/lang/Object;>;)V
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.Nullable()
MethodParameters:
Name Flags
preBound
public <T, R> io.micronaut.core.bind.BoundExecutable<T, R> bind(io.micronaut.core.type.Executable<T, R>, io.micronaut.core.bind.ArgumentBinderRegistry<S>, S);
descriptor: (Lio/micronaut/core/type/Executable;Lio/micronaut/core/bind/ArgumentBinderRegistry;Ljava/lang/Object;)Lio/micronaut/core/bind/BoundExecutable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=13, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokeinterface io.micronaut.core.type.Executable.getArguments:()[Lio/micronaut/core/type/Argument;
astore 4
start local 4 1: aload 4
arraylength
anewarray java.lang.Object
astore 5
start local 5 2: iconst_0
istore 6
start local 6 3: goto 29
4: StackMap locals: io.micronaut.core.type.Argument[] java.lang.Object[] int
StackMap stack:
aload 4
iload 6
aaload
astore 7
start local 7 5: aload 0
getfield io.micronaut.core.bind.DefaultExecutableBinder.preBound:Ljava/util/Map;
aload 7
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 8
6: aload 5
iload 6
aload 0
getfield io.micronaut.core.bind.DefaultExecutableBinder.preBound:Ljava/util/Map;
aload 7
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
aastore
7: goto 28
8: StackMap locals: io.micronaut.core.type.Argument
StackMap stack:
aload 2
aload 7
aload 3
invokeinterface io.micronaut.core.bind.ArgumentBinderRegistry.findArgumentBinder:(Lio/micronaut/core/type/Argument;Ljava/lang/Object;)Ljava/util/Optional;
9: astore 8
start local 8 10: aload 8
invokevirtual java.util.Optional.isPresent:()Z
ifeq 27
11: aload 8
invokevirtual java.util.Optional.get:()Ljava/lang/Object;
checkcast io.micronaut.core.bind.ArgumentBinder
astore 9
start local 9 12: aload 7
invokestatic io.micronaut.core.convert.ConversionContext.of:(Lio/micronaut/core/type/Argument;)Lio/micronaut/core/convert/ArgumentConversionContext;
astore 10
start local 10 13: aload 9
14: aload 10
15: aload 3
16: invokeinterface io.micronaut.core.bind.ArgumentBinder.bind:(Lio/micronaut/core/convert/ArgumentConversionContext;Ljava/lang/Object;)Lio/micronaut/core/bind/ArgumentBinder$BindingResult;
astore 11
start local 11 17: aload 11
invokeinterface io.micronaut.core.bind.ArgumentBinder$BindingResult.isPresentAndSatisfied:()Z
ifne 25
18: aload 7
invokeinterface io.micronaut.core.type.Argument.isNullable:()Z
ifeq 21
19: aload 5
iload 6
aconst_null
aastore
20: goto 28
21: StackMap locals: io.micronaut.core.bind.DefaultExecutableBinder io.micronaut.core.type.Executable io.micronaut.core.bind.ArgumentBinderRegistry java.lang.Object io.micronaut.core.type.Argument[] java.lang.Object[] int io.micronaut.core.type.Argument java.util.Optional io.micronaut.core.bind.ArgumentBinder io.micronaut.core.convert.ArgumentConversionContext io.micronaut.core.bind.ArgumentBinder$BindingResult
StackMap stack:
aload 10
invokeinterface io.micronaut.core.convert.ArgumentConversionContext.getLastError:()Ljava/util/Optional;
astore 12
start local 12 22: aload 12
invokevirtual java.util.Optional.isPresent:()Z
ifeq 24
23: new io.micronaut.core.convert.exceptions.ConversionErrorException
dup
aload 7
aload 12
invokevirtual java.util.Optional.get:()Ljava/lang/Object;
checkcast io.micronaut.core.convert.ConversionError
invokespecial io.micronaut.core.convert.exceptions.ConversionErrorException.<init>:(Lio/micronaut/core/type/Argument;Lio/micronaut/core/convert/ConversionError;)V
athrow
24: StackMap locals: java.util.Optional
StackMap stack:
new io.micronaut.core.bind.exceptions.UnsatisfiedArgumentException
dup
aload 7
invokespecial io.micronaut.core.bind.exceptions.UnsatisfiedArgumentException.<init>:(Lio/micronaut/core/type/Argument;)V
athrow
end local 12 25: StackMap locals:
StackMap stack:
aload 5
iload 6
aload 11
invokeinterface io.micronaut.core.bind.ArgumentBinder$BindingResult.get:()Ljava/lang/Object;
aastore
end local 11 end local 10 end local 9 26: goto 28
27: StackMap locals:
StackMap stack:
new io.micronaut.core.bind.exceptions.UnsatisfiedArgumentException
dup
aload 7
invokespecial io.micronaut.core.bind.exceptions.UnsatisfiedArgumentException.<init>:(Lio/micronaut/core/type/Argument;)V
athrow
end local 8 end local 7 28: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
29: iload 6
aload 4
arraylength
if_icmplt 4
end local 6 30: new io.micronaut.core.bind.DefaultExecutableBinder$1
dup
aload 0
aload 1
aload 5
invokespecial io.micronaut.core.bind.DefaultExecutableBinder$1.<init>:(Lio/micronaut/core/bind/DefaultExecutableBinder;Lio/micronaut/core/type/Executable;[Ljava/lang/Object;)V
areturn
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 31 0 this Lio/micronaut/core/bind/DefaultExecutableBinder<TS;>;
0 31 1 target Lio/micronaut/core/type/Executable<TT;TR;>;
0 31 2 registry Lio/micronaut/core/bind/ArgumentBinderRegistry<TS;>;
0 31 3 source TS;
1 31 4 arguments [Lio/micronaut/core/type/Argument;
2 31 5 boundArguments [Ljava/lang/Object;
3 30 6 i I
5 28 7 argument Lio/micronaut/core/type/Argument<*>;
10 28 8 argumentBinder Ljava/util/Optional<+Lio/micronaut/core/bind/ArgumentBinder<*TS;>;>;
12 26 9 binder Lio/micronaut/core/bind/ArgumentBinder<*TS;>;
13 26 10 conversionContext Lio/micronaut/core/convert/ArgumentConversionContext;
17 26 11 bindingResult Lio/micronaut/core/bind/ArgumentBinder$BindingResult<*>;
22 25 12 lastError Ljava/util/Optional<Lio/micronaut/core/convert/ConversionError;>;
Exceptions:
throws io.micronaut.core.bind.exceptions.UnsatisfiedArgumentException
Signature: <T:Ljava/lang/Object;R:Ljava/lang/Object;>(Lio/micronaut/core/type/Executable<TT;TR;>;Lio/micronaut/core/bind/ArgumentBinderRegistry<TS;>;TS;)Lio/micronaut/core/bind/BoundExecutable<TT;TR;>;
MethodParameters:
Name Flags
target
registry
source
public <T, R> io.micronaut.core.bind.BoundExecutable<T, R> tryBind(io.micronaut.core.type.Executable<T, R>, io.micronaut.core.bind.ArgumentBinderRegistry<S>, S);
descriptor: (Lio/micronaut/core/type/Executable;Lio/micronaut/core/bind/ArgumentBinderRegistry;Ljava/lang/Object;)Lio/micronaut/core/bind/BoundExecutable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=13, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokeinterface io.micronaut.core.type.Executable.getArguments:()[Lio/micronaut/core/type/Argument;
astore 4
start local 4 1: aload 4
arraylength
anewarray java.lang.Object
astore 5
start local 5 2: new java.util.ArrayList
dup
aload 4
arraylength
invokespecial java.util.ArrayList.<init>:(I)V
astore 6
start local 6 3: iconst_0
istore 7
start local 7 4: goto 30
5: StackMap locals: io.micronaut.core.bind.DefaultExecutableBinder io.micronaut.core.type.Executable io.micronaut.core.bind.ArgumentBinderRegistry java.lang.Object io.micronaut.core.type.Argument[] java.lang.Object[] java.util.List int
StackMap stack:
aload 4
iload 7
aaload
astore 8
start local 8 6: aload 0
getfield io.micronaut.core.bind.DefaultExecutableBinder.preBound:Ljava/util/Map;
aload 8
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 9
7: aload 5
iload 7
aload 0
getfield io.micronaut.core.bind.DefaultExecutableBinder.preBound:Ljava/util/Map;
aload 8
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
aastore
8: goto 29
9: StackMap locals: io.micronaut.core.type.Argument
StackMap stack:
aload 2
aload 8
aload 3
invokeinterface io.micronaut.core.bind.ArgumentBinderRegistry.findArgumentBinder:(Lio/micronaut/core/type/Argument;Ljava/lang/Object;)Ljava/util/Optional;
10: astore 9
start local 9 11: aload 9
invokevirtual java.util.Optional.isPresent:()Z
ifeq 27
12: aload 9
invokevirtual java.util.Optional.get:()Ljava/lang/Object;
checkcast io.micronaut.core.bind.ArgumentBinder
astore 10
start local 10 13: aload 8
invokestatic io.micronaut.core.convert.ConversionContext.of:(Lio/micronaut/core/type/Argument;)Lio/micronaut/core/convert/ArgumentConversionContext;
astore 11
start local 11 14: aload 10
15: aload 11
16: aload 3
17: invokeinterface io.micronaut.core.bind.ArgumentBinder.bind:(Lio/micronaut/core/convert/ArgumentConversionContext;Ljava/lang/Object;)Lio/micronaut/core/bind/ArgumentBinder$BindingResult;
astore 12
start local 12 18: aload 12
invokeinterface io.micronaut.core.bind.ArgumentBinder$BindingResult.isPresentAndSatisfied:()Z
ifne 25
19: aload 8
invokeinterface io.micronaut.core.type.Argument.isNullable:()Z
ifeq 22
20: aload 5
iload 7
aconst_null
aastore
21: goto 29
22: StackMap locals: io.micronaut.core.bind.DefaultExecutableBinder io.micronaut.core.type.Executable io.micronaut.core.bind.ArgumentBinderRegistry java.lang.Object io.micronaut.core.type.Argument[] java.lang.Object[] java.util.List int io.micronaut.core.type.Argument java.util.Optional io.micronaut.core.bind.ArgumentBinder io.micronaut.core.convert.ArgumentConversionContext io.micronaut.core.bind.ArgumentBinder$BindingResult
StackMap stack:
aload 5
iload 7
aconst_null
aastore
23: aload 6
aload 8
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
24: goto 29
25: StackMap locals:
StackMap stack:
aload 5
iload 7
aload 12
invokeinterface io.micronaut.core.bind.ArgumentBinder$BindingResult.get:()Ljava/lang/Object;
aastore
end local 12 end local 11 end local 10 26: goto 29
27: StackMap locals:
StackMap stack:
aload 5
iload 7
aconst_null
aastore
28: aload 6
aload 8
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 9 end local 8 29: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
30: iload 7
aload 4
arraylength
if_icmplt 5
end local 7 31: new io.micronaut.core.bind.DefaultExecutableBinder$2
dup
aload 0
aload 6
aload 1
aload 5
invokespecial io.micronaut.core.bind.DefaultExecutableBinder$2.<init>:(Lio/micronaut/core/bind/DefaultExecutableBinder;Ljava/util/List;Lio/micronaut/core/type/Executable;[Ljava/lang/Object;)V
areturn
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 32 0 this Lio/micronaut/core/bind/DefaultExecutableBinder<TS;>;
0 32 1 target Lio/micronaut/core/type/Executable<TT;TR;>;
0 32 2 registry Lio/micronaut/core/bind/ArgumentBinderRegistry<TS;>;
0 32 3 source TS;
1 32 4 arguments [Lio/micronaut/core/type/Argument;
2 32 5 boundArguments [Ljava/lang/Object;
3 32 6 unbound Ljava/util/List<Lio/micronaut/core/type/Argument<*>;>;
4 31 7 i I
6 29 8 argument Lio/micronaut/core/type/Argument<*>;
11 29 9 argumentBinder Ljava/util/Optional<+Lio/micronaut/core/bind/ArgumentBinder<*TS;>;>;
13 26 10 binder Lio/micronaut/core/bind/ArgumentBinder<*TS;>;
14 26 11 conversionContext Lio/micronaut/core/convert/ArgumentConversionContext;
18 26 12 bindingResult Lio/micronaut/core/bind/ArgumentBinder$BindingResult<*>;
Signature: <T:Ljava/lang/Object;R:Ljava/lang/Object;>(Lio/micronaut/core/type/Executable<TT;TR;>;Lio/micronaut/core/bind/ArgumentBinderRegistry<TS;>;TS;)Lio/micronaut/core/bind/BoundExecutable<TT;TR;>;
MethodParameters:
Name Flags
target
registry
source
}
Signature: <S:Ljava/lang/Object;>Ljava/lang/Object;Lio/micronaut/core/bind/ExecutableBinder<TS;>;
SourceFile: "DefaultExecutableBinder.java"
NestMembers:
io.micronaut.core.bind.DefaultExecutableBinder$1 io.micronaut.core.bind.DefaultExecutableBinder$2
InnerClasses:
public abstract BindingResult = io.micronaut.core.bind.ArgumentBinder$BindingResult of io.micronaut.core.bind.ArgumentBinder
io.micronaut.core.bind.DefaultExecutableBinder$1
io.micronaut.core.bind.DefaultExecutableBinder$2