public abstract class org.eclipse.collections.impl.multimap.AbstractImmutableMultimap<K, V, C extends org.eclipse.collections.api.collection.ImmutableCollection<V>> extends org.eclipse.collections.impl.multimap.AbstractMultimap<K, V, C> implements org.eclipse.collections.api.multimap.ImmutableMultimap<K, V>
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.eclipse.collections.impl.multimap.AbstractImmutableMultimap
super_class: org.eclipse.collections.impl.multimap.AbstractMultimap
{
protected final org.eclipse.collections.api.map.ImmutableMap<K, C> map;
descriptor: Lorg/eclipse/collections/api/map/ImmutableMap;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Signature: Lorg/eclipse/collections/api/map/ImmutableMap<TK;TC;>;
protected void <init>(org.eclipse.collections.api.map.MutableMap<K, C>);
descriptor: (Lorg/eclipse/collections/api/map/MutableMap;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokeinterface org.eclipse.collections.api.map.MutableMap.toImmutable:()Lorg/eclipse/collections/api/map/ImmutableMap;
invokespecial org.eclipse.collections.impl.multimap.AbstractImmutableMultimap.<init>:(Lorg/eclipse/collections/api/map/ImmutableMap;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/collections/impl/multimap/AbstractImmutableMultimap<TK;TV;TC;>;
0 2 1 map Lorg/eclipse/collections/api/map/MutableMap<TK;TC;>;
Signature: (Lorg/eclipse/collections/api/map/MutableMap<TK;TC;>;)V
MethodParameters:
Name Flags
map
protected void <init>(org.eclipse.collections.api.map.ImmutableMap<K, C>);
descriptor: (Lorg/eclipse/collections/api/map/ImmutableMap;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial org.eclipse.collections.impl.multimap.AbstractMultimap.<init>:()V
1: aload 0
aload 1
putfield org.eclipse.collections.impl.multimap.AbstractImmutableMultimap.map:Lorg/eclipse/collections/api/map/ImmutableMap;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/collections/impl/multimap/AbstractImmutableMultimap<TK;TV;TC;>;
0 3 1 immutableMap Lorg/eclipse/collections/api/map/ImmutableMap<TK;TC;>;
Signature: (Lorg/eclipse/collections/api/map/ImmutableMap<TK;TC;>;)V
MethodParameters:
Name Flags
immutableMap
protected org.eclipse.collections.api.map.ImmutableMap<K, C> getMap();
descriptor: ()Lorg/eclipse/collections/api/map/ImmutableMap;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.collections.impl.multimap.AbstractImmutableMultimap.map:Lorg/eclipse/collections/api/map/ImmutableMap;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/collections/impl/multimap/AbstractImmutableMultimap<TK;TV;TC;>;
Signature: ()Lorg/eclipse/collections/api/map/ImmutableMap<TK;TC;>;
public int size();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: new org.eclipse.collections.impl.multimap.AbstractImmutableMultimap$1CountProcedure
dup
aload 0
invokespecial org.eclipse.collections.impl.multimap.AbstractImmutableMultimap$1CountProcedure.<init>:(Lorg/eclipse/collections/impl/multimap/AbstractImmutableMultimap;)V
astore 1
start local 1 1: aload 0
getfield org.eclipse.collections.impl.multimap.AbstractImmutableMultimap.map:Lorg/eclipse/collections/api/map/ImmutableMap;
aload 1
invokeinterface org.eclipse.collections.api.map.ImmutableMap.forEachValue:(Lorg/eclipse/collections/api/block/procedure/Procedure;)V
2: aload 1
invokevirtual org.eclipse.collections.impl.multimap.AbstractImmutableMultimap$1CountProcedure.getTotalSize:()I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/collections/impl/multimap/AbstractImmutableMultimap<TK;TV;TC;>;
1 3 1 procedure Lorg/eclipse/collections/impl/multimap/AbstractImmutableMultimap$1CountProcedure;
public int sizeDistinct();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.collections.impl.multimap.AbstractImmutableMultimap.map:Lorg/eclipse/collections/api/map/ImmutableMap;
invokeinterface org.eclipse.collections.api.map.ImmutableMap.size:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/collections/impl/multimap/AbstractImmutableMultimap<TK;TV;TC;>;
public boolean isEmpty();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.collections.impl.multimap.AbstractImmutableMultimap.map:Lorg/eclipse/collections/api/map/ImmutableMap;
invokeinterface org.eclipse.collections.api.map.ImmutableMap.isEmpty:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/collections/impl/multimap/AbstractImmutableMultimap<TK;TV;TC;>;
public org.eclipse.collections.api.set.SetIterable<K> keySet();
descriptor: ()Lorg/eclipse/collections/api/set/SetIterable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.eclipse.collections.impl.multimap.AbstractImmutableMultimap.getMap:()Lorg/eclipse/collections/api/map/ImmutableMap;
invokeinterface org.eclipse.collections.api.map.ImmutableMap.castToMap:()Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokestatic org.eclipse.collections.impl.set.mutable.UnmodifiableMutableSet.of:(Ljava/util/Set;)Lorg/eclipse/collections/impl/set/mutable/UnmodifiableMutableSet;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/collections/impl/multimap/AbstractImmutableMultimap<TK;TV;TC;>;
Signature: ()Lorg/eclipse/collections/api/set/SetIterable<TK;>;
public C get();
descriptor: (Ljava/lang/Object;)Lorg/eclipse/collections/api/collection/ImmutableCollection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.collections.impl.multimap.AbstractImmutableMultimap.map:Lorg/eclipse/collections/api/map/ImmutableMap;
aload 1
aload 0
invokevirtual org.eclipse.collections.impl.multimap.AbstractImmutableMultimap.createCollectionBlock:()Lorg/eclipse/collections/api/block/function/Function;
aload 0
invokeinterface org.eclipse.collections.api.map.ImmutableMap.getIfAbsentWith:(Ljava/lang/Object;Lorg/eclipse/collections/api/block/function/Function;Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.eclipse.collections.api.collection.ImmutableCollection
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/collections/impl/multimap/AbstractImmutableMultimap<TK;TV;TC;>;
0 1 1 key TK;
Signature: (TK;)TC;
MethodParameters:
Name Flags
key
public org.eclipse.collections.api.map.MutableMap<K, org.eclipse.collections.api.RichIterable<V>> toMap();
descriptor: ()Lorg/eclipse/collections/api/map/MutableMap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.collections.impl.multimap.AbstractImmutableMultimap.map:Lorg/eclipse/collections/api/map/ImmutableMap;
invokeinterface org.eclipse.collections.api.map.ImmutableMap.toMap:()Lorg/eclipse/collections/api/map/MutableMap;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/collections/impl/multimap/AbstractImmutableMultimap<TK;TV;TC;>;
Signature: ()Lorg/eclipse/collections/api/map/MutableMap<TK;Lorg/eclipse/collections/api/RichIterable<TV;>;>;
public <R extends java.util.Collection<V>> org.eclipse.collections.api.map.MutableMap<K, R> toMap(org.eclipse.collections.api.block.function.Function0<R>);
descriptor: (Lorg/eclipse/collections/api/block/function/Function0;)Lorg/eclipse/collections/api/map/MutableMap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: invokestatic org.eclipse.collections.impl.map.mutable.UnifiedMap.newMap:()Lorg/eclipse/collections/impl/map/mutable/UnifiedMap;
astore 2
start local 2 1: aload 0
getfield org.eclipse.collections.impl.multimap.AbstractImmutableMultimap.map:Lorg/eclipse/collections/api/map/ImmutableMap;
aload 1
aload 2
invokedynamic value(Lorg/eclipse/collections/api/block/function/Function0;Lorg/eclipse/collections/api/map/MutableMap;)Lorg/eclipse/collections/api/block/procedure/Procedure2;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.altMetafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;Ljava/lang/Object;)V
org/eclipse/collections/impl/multimap/AbstractImmutableMultimap.lambda$0(Lorg/eclipse/collections/api/block/function/Function0;Lorg/eclipse/collections/api/map/MutableMap;Ljava/lang/Object;Lorg/eclipse/collections/api/collection/ImmutableCollection;)V (6)
(Ljava/lang/Object;Lorg/eclipse/collections/api/collection/ImmutableCollection;)V
1
invokeinterface org.eclipse.collections.api.map.ImmutableMap.forEachKeyValue:(Lorg/eclipse/collections/api/block/procedure/Procedure2;)V
2: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/collections/impl/multimap/AbstractImmutableMultimap<TK;TV;TC;>;
0 3 1 collectionFactory Lorg/eclipse/collections/api/block/function/Function0<TR;>;
1 3 2 result Lorg/eclipse/collections/api/map/MutableMap<TK;TR;>;
Signature: <R::Ljava/util/Collection<TV;>;>(Lorg/eclipse/collections/api/block/function/Function0<TR;>;)Lorg/eclipse/collections/api/map/MutableMap<TK;TR;>;
MethodParameters:
Name Flags
collectionFactory
public org.eclipse.collections.api.multimap.ImmutableMultimap<K, V> toImmutable();
descriptor: ()Lorg/eclipse/collections/api/multimap/ImmutableMultimap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/collections/impl/multimap/AbstractImmutableMultimap<TK;TV;TC;>;
Signature: ()Lorg/eclipse/collections/api/multimap/ImmutableMultimap<TK;TV;>;
protected java.lang.Object readResolve();
descriptor: ()Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.io.InvalidClassException
dup
ldc "You should be using the proxy for serialization of ImmutableMultimaps"
invokespecial java.io.InvalidClassException.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/collections/impl/multimap/AbstractImmutableMultimap<TK;TV;TC;>;
Exceptions:
throws java.io.ObjectStreamException
protected org.eclipse.collections.api.map.MapIterable getMap();
descriptor: ()Lorg/eclipse/collections/api/map/MapIterable;
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual org.eclipse.collections.impl.multimap.AbstractImmutableMultimap.getMap:()Lorg/eclipse/collections/api/map/ImmutableMap;
areturn
LocalVariableTable:
Start End Slot Name Signature
public org.eclipse.collections.api.RichIterable get(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lorg/eclipse/collections/api/RichIterable;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast java.lang.Object
invokevirtual org.eclipse.collections.impl.multimap.AbstractImmutableMultimap.get:(Ljava/lang/Object;)Lorg/eclipse/collections/api/collection/ImmutableCollection;
areturn
LocalVariableTable:
Start End Slot Name Signature
private static void lambda$0(org.eclipse.collections.api.block.function.Function0, org.eclipse.collections.api.map.MutableMap, java.lang.Object, org.eclipse.collections.api.collection.ImmutableCollection);
descriptor: (Lorg/eclipse/collections/api/block/function/Function0;Lorg/eclipse/collections/api/map/MutableMap;Ljava/lang/Object;Lorg/eclipse/collections/api/collection/ImmutableCollection;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=5, args_size=4
start local 2 start local 3 0: aload 0
invokeinterface org.eclipse.collections.api.block.function.Function0.value:()Ljava/lang/Object;
checkcast java.util.Collection
astore 4
start local 4 1: aload 3
aload 4
invokestatic org.eclipse.collections.impl.utility.Iterate.addAllTo:(Ljava/lang/Iterable;Ljava/util/Collection;)Ljava/util/Collection;
pop
2: aload 1
aload 2
aload 4
invokeinterface org.eclipse.collections.api.map.MutableMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 4 3: return
end local 3 end local 2 LocalVariableTable:
Start End Slot Name Signature
0 4 2 key TK;
0 4 3 iterable TC;
1 3 4 newCollection TR;
private static java.lang.Object $deserializeLambda$(java.lang.invoke.SerializedLambda);
descriptor: (Ljava/lang/invoke/SerializedLambda;)Ljava/lang/Object;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=5, locals=3, args_size=1
0: aload 0
invokevirtual java.lang.invoke.SerializedLambda.getImplMethodName:()Ljava/lang/String;
astore 1
iconst_m1
istore 2
aload 1
invokevirtual java.lang.String.hashCode:()I
lookupswitch { // 1
-1647345005: 1
default: 2
}
StackMap locals: java.lang.String int
StackMap stack:
1: aload 1
ldc "lambda$0"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 2
iconst_0
istore 2
StackMap locals:
StackMap stack:
2: iload 2
lookupswitch { // 1
0: 3
default: 4
}
StackMap locals:
StackMap stack:
3: aload 0
invokevirtual java.lang.invoke.SerializedLambda.getImplMethodKind:()I
bipush 6
if_icmpne 4
aload 0
invokevirtual java.lang.invoke.SerializedLambda.getFunctionalInterfaceClass:()Ljava/lang/String;
ldc "org/eclipse/collections/api/block/procedure/Procedure2"
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 4
aload 0
invokevirtual java.lang.invoke.SerializedLambda.getFunctionalInterfaceMethodName:()Ljava/lang/String;
ldc "value"
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 4
aload 0
invokevirtual java.lang.invoke.SerializedLambda.getFunctionalInterfaceMethodSignature:()Ljava/lang/String;
ldc "(Ljava/lang/Object;Ljava/lang/Object;)V"
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 4
aload 0
invokevirtual java.lang.invoke.SerializedLambda.getImplClass:()Ljava/lang/String;
ldc "org/eclipse/collections/impl/multimap/AbstractImmutableMultimap"
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 4
aload 0
invokevirtual java.lang.invoke.SerializedLambda.getImplMethodSignature:()Ljava/lang/String;
ldc "(Lorg/eclipse/collections/api/block/function/Function0;Lorg/eclipse/collections/api/map/MutableMap;Ljava/lang/Object;Lorg/eclipse/collections/api/collection/ImmutableCollection;)V"
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 4
aload 0
iconst_0
invokevirtual java.lang.invoke.SerializedLambda.getCapturedArg:(I)Ljava/lang/Object;
checkcast org.eclipse.collections.api.block.function.Function0
aload 0
iconst_1
invokevirtual java.lang.invoke.SerializedLambda.getCapturedArg:(I)Ljava/lang/Object;
checkcast org.eclipse.collections.api.map.MutableMap
invokedynamic value(Lorg/eclipse/collections/api/block/function/Function0;Lorg/eclipse/collections/api/map/MutableMap;)Lorg/eclipse/collections/api/block/procedure/Procedure2;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.altMetafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;Ljava/lang/Object;)V
org/eclipse/collections/impl/multimap/AbstractImmutableMultimap.lambda$0(Lorg/eclipse/collections/api/block/function/Function0;Lorg/eclipse/collections/api/map/MutableMap;Ljava/lang/Object;Lorg/eclipse/collections/api/collection/ImmutableCollection;)V (6)
(Ljava/lang/Object;Lorg/eclipse/collections/api/collection/ImmutableCollection;)V
1
areturn
StackMap locals:
StackMap stack:
4: new java.lang.IllegalArgumentException
dup
ldc "Invalid lambda deserialization"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
LocalVariableTable:
Start End Slot Name Signature
}
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;C::Lorg/eclipse/collections/api/collection/ImmutableCollection<TV;>;>Lorg/eclipse/collections/impl/multimap/AbstractMultimap<TK;TV;TC;>;Lorg/eclipse/collections/api/multimap/ImmutableMultimap<TK;TV;>;
SourceFile: "AbstractImmutableMultimap.java"
NestMembers:
org.eclipse.collections.impl.multimap.AbstractImmutableMultimap$1CountProcedure
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
CountProcedure = org.eclipse.collections.impl.multimap.AbstractImmutableMultimap$1CountProcedure