final class com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider<K, V> extends com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies<K, V, java.util.Map<K, java.util.Set<com.google.inject.Provider<V>>>>
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider
super_class: com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies
{
private java.util.Map<K, java.util.Set<com.google.inject.Provider<V>>> multimapOfProviders;
descriptor: Ljava/util/Map;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Map<TK;Ljava/util/Set<Lcom/google/inject/Provider<TV;>;>;>;
private java.util.Set<com.google.inject.spi.Dependency<?>> dependencies;
descriptor: Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Set<Lcom/google/inject/spi/Dependency<*>;>;
private void <init>(com.google.inject.Key<java.util.Map<K, V>>);
descriptor: (Lcom/google/inject/Key;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies.<init>:(Lcom/google/inject/Key;)V
1: aload 0
getstatic com.google.inject.internal.RealMapBinder.MODULE_DEPENDENCIES:Lcom/google/common/collect/ImmutableSet;
putfield com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider.dependencies:Ljava/util/Set;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/inject/internal/RealMapBinder$MultimapBinder$RealProviderMultimapProvider<TK;TV;>;
0 3 1 mapKey Lcom/google/inject/Key<Ljava/util/Map<TK;TV;>;>;
Signature: (Lcom/google/inject/Key<Ljava/util/Map<TK;TV;>;>;)V
MethodParameters:
Name Flags
mapKey
public java.util.Set<com.google.inject.spi.Dependency<?>> getDependencies();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider.dependencies:Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/inject/internal/RealMapBinder$MultimapBinder$RealProviderMultimapProvider<TK;TV;>;
Signature: ()Ljava/util/Set<Lcom/google/inject/spi/Dependency<*>;>;
protected void doInitialize(com.google.inject.internal.InjectorImpl, com.google.inject.internal.Errors);
descriptor: (Lcom/google/inject/internal/InjectorImpl;Lcom/google/inject/internal/Errors;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=10, args_size=3
start local 0 start local 1 start local 2 0: invokestatic com.google.common.collect.ImmutableMap.builder:()Lcom/google/common/collect/ImmutableMap$Builder;
1: astore 3
start local 3 2: invokestatic com.google.common.collect.ImmutableSet.builder:()Lcom/google/common/collect/ImmutableSet$Builder;
astore 4
start local 4 3: aload 0
getfield com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider.bindingSelection:Lcom/google/inject/internal/RealMapBinder$BindingSelection;
invokevirtual com.google.inject.internal.RealMapBinder$BindingSelection.getMultimapBindings:()Lcom/google/common/collect/ImmutableMap;
invokevirtual com.google.common.collect.ImmutableMap.entrySet:()Lcom/google/common/collect/ImmutableSet;
invokevirtual com.google.common.collect.ImmutableSet.iterator:()Ljava/util/Iterator;
astore 6
goto 12
StackMap locals: com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider com.google.inject.internal.InjectorImpl com.google.inject.internal.Errors com.google.common.collect.ImmutableMap$Builder com.google.common.collect.ImmutableSet$Builder top java.util.Iterator
StackMap stack:
4: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 5
start local 5 5: invokestatic com.google.common.collect.ImmutableSet.builder:()Lcom/google/common/collect/ImmutableSet$Builder;
astore 7
start local 7 6: aload 5
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.util.Set
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 9
goto 10
StackMap locals: com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider com.google.inject.internal.InjectorImpl com.google.inject.internal.Errors com.google.common.collect.ImmutableMap$Builder com.google.common.collect.ImmutableSet$Builder java.util.Map$Entry java.util.Iterator com.google.common.collect.ImmutableSet$Builder top java.util.Iterator
StackMap stack:
7: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.google.inject.Binding
astore 8
start local 8 8: aload 7
aload 8
invokeinterface com.google.inject.Binding.getProvider:()Lcom/google/inject/Provider;
invokevirtual com.google.common.collect.ImmutableSet$Builder.add:(Ljava/lang/Object;)Lcom/google/common/collect/ImmutableSet$Builder;
pop
9: aload 4
aload 8
invokeinterface com.google.inject.Binding.getKey:()Lcom/google/inject/Key;
invokestatic com.google.inject.internal.RealMapBinder.getKeyOfProvider:(Lcom/google/inject/Key;)Lcom/google/inject/Key;
invokestatic com.google.inject.spi.Dependency.get:(Lcom/google/inject/Key;)Lcom/google/inject/spi/Dependency;
invokevirtual com.google.common.collect.ImmutableSet$Builder.add:(Ljava/lang/Object;)Lcom/google/common/collect/ImmutableSet$Builder;
pop
end local 8 10: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
11: aload 3
aload 5
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
aload 7
invokevirtual com.google.common.collect.ImmutableSet$Builder.build:()Lcom/google/common/collect/ImmutableSet;
invokevirtual com.google.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMap$Builder;
pop
end local 7 end local 5 12: StackMap locals: com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider com.google.inject.internal.InjectorImpl com.google.inject.internal.Errors com.google.common.collect.ImmutableMap$Builder com.google.common.collect.ImmutableSet$Builder top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
13: aload 0
aload 3
invokevirtual com.google.common.collect.ImmutableMap$Builder.build:()Lcom/google/common/collect/ImmutableMap;
putfield com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider.multimapOfProviders:Ljava/util/Map;
14: aload 0
aload 4
invokevirtual com.google.common.collect.ImmutableSet$Builder.build:()Lcom/google/common/collect/ImmutableSet;
putfield com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider.dependencies:Ljava/util/Set;
15: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/google/inject/internal/RealMapBinder$MultimapBinder$RealProviderMultimapProvider<TK;TV;>;
0 16 1 injector Lcom/google/inject/internal/InjectorImpl;
0 16 2 errors Lcom/google/inject/internal/Errors;
2 16 3 multimapOfProvidersBuilder Lcom/google/common/collect/ImmutableMap$Builder<TK;Ljava/util/Set<Lcom/google/inject/Provider<TV;>;>;>;
3 16 4 dependenciesBuilder Lcom/google/common/collect/ImmutableSet$Builder<Lcom/google/inject/spi/Dependency<*>;>;
5 12 5 entry Ljava/util/Map$Entry<TK;Ljava/util/Set<Lcom/google/inject/Binding<TV;>;>;>;
6 12 7 providersBuilder Lcom/google/common/collect/ImmutableSet$Builder<Lcom/google/inject/Provider<TV;>;>;
8 10 8 binding Lcom/google/inject/Binding<TV;>;
MethodParameters:
Name Flags
injector
errors
protected java.util.Map<K, java.util.Set<com.google.inject.Provider<V>>> doProvision(com.google.inject.internal.InternalContext, com.google.inject.spi.Dependency<?>);
descriptor: (Lcom/google/inject/internal/InternalContext;Lcom/google/inject/spi/Dependency;)Ljava/util/Map;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider.multimapOfProviders:Ljava/util/Map;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/inject/internal/RealMapBinder$MultimapBinder$RealProviderMultimapProvider<TK;TV;>;
0 1 1 context Lcom/google/inject/internal/InternalContext;
0 1 2 dependency Lcom/google/inject/spi/Dependency<*>;
Signature: (Lcom/google/inject/internal/InternalContext;Lcom/google/inject/spi/Dependency<*>;)Ljava/util/Map<TK;Ljava/util/Set<Lcom/google/inject/Provider<TV;>;>;>;
MethodParameters:
Name Flags
context
dependency
protected java.lang.Object doProvision(com.google.inject.internal.InternalContext, com.google.inject.spi.Dependency);
descriptor: (Lcom/google/inject/internal/InternalContext;Lcom/google/inject/spi/Dependency;)Ljava/lang/Object;
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
invokevirtual com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider.doProvision:(Lcom/google/inject/internal/InternalContext;Lcom/google/inject/spi/Dependency;)Ljava/util/Map;
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws com.google.inject.internal.InternalProvisionException
}
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>Lcom/google/inject/internal/RealMapBinder$RealMultimapBinderProviderWithDependencies<TK;TV;Ljava/util/Map<TK;Ljava/util/Set<Lcom/google/inject/Provider<TV;>;>;>;>;
SourceFile: "RealMapBinder.java"
NestHost: com.google.inject.internal.RealMapBinder
InnerClasses:
public Builder = com.google.common.collect.ImmutableMap$Builder of com.google.common.collect.ImmutableMap
public Builder = com.google.common.collect.ImmutableSet$Builder of com.google.common.collect.ImmutableSet
private final BindingSelection = com.google.inject.internal.RealMapBinder$BindingSelection of com.google.inject.internal.RealMapBinder
private final MultimapBinder = com.google.inject.internal.RealMapBinder$MultimapBinder of com.google.inject.internal.RealMapBinder
private final RealProviderMultimapProvider = com.google.inject.internal.RealMapBinder$MultimapBinder$RealProviderMultimapProvider of com.google.inject.internal.RealMapBinder$MultimapBinder
private abstract RealMultimapBinderProviderWithDependencies = com.google.inject.internal.RealMapBinder$RealMultimapBinderProviderWithDependencies of com.google.inject.internal.RealMapBinder
public abstract Entry = java.util.Map$Entry of java.util.Map