public class com.google.common.graph.ImmutableGraph<N> extends com.google.common.graph.ForwardingGraph<N>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.google.common.graph.ImmutableGraph
super_class: com.google.common.graph.ForwardingGraph
{
private final com.google.common.graph.BaseGraph<N> backingGraph;
descriptor: Lcom/google/common/graph/BaseGraph;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lcom/google/common/graph/BaseGraph<TN;>;
void <init>(com.google.common.graph.BaseGraph<N>);
descriptor: (Lcom/google/common/graph/BaseGraph;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial com.google.common.graph.ForwardingGraph.<init>:()V
1: aload 0
aload 1
putfield com.google.common.graph.ImmutableGraph.backingGraph:Lcom/google/common/graph/BaseGraph;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/common/graph/ImmutableGraph<TN;>;
0 3 1 backingGraph Lcom/google/common/graph/BaseGraph<TN;>;
Signature: (Lcom/google/common/graph/BaseGraph<TN;>;)V
MethodParameters:
Name Flags
backingGraph
public static <N> com.google.common.graph.ImmutableGraph<N> copyOf(com.google.common.graph.Graph<N>);
descriptor: (Lcom/google/common/graph/Graph;)Lcom/google/common/graph/ImmutableGraph;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=1, args_size=1
start local 0 0: aload 0
instanceof com.google.common.graph.ImmutableGraph
ifeq 2
1: aload 0
checkcast com.google.common.graph.ImmutableGraph
goto 7
2: StackMap locals:
StackMap stack:
new com.google.common.graph.ImmutableGraph
dup
3: new com.google.common.graph.ConfigurableValueGraph
dup
4: aload 0
invokestatic com.google.common.graph.GraphBuilder.from:(Lcom/google/common/graph/Graph;)Lcom/google/common/graph/GraphBuilder;
aload 0
invokestatic com.google.common.graph.ImmutableGraph.getNodeConnections:(Lcom/google/common/graph/Graph;)Lcom/google/common/collect/ImmutableMap;
aload 0
invokeinterface com.google.common.graph.Graph.edges:()Ljava/util/Set;
invokeinterface java.util.Set.size:()I
i2l
5: invokespecial com.google.common.graph.ConfigurableValueGraph.<init>:(Lcom/google/common/graph/AbstractGraphBuilder;Ljava/util/Map;J)V
6: invokespecial com.google.common.graph.ImmutableGraph.<init>:(Lcom/google/common/graph/BaseGraph;)V
7: StackMap locals:
StackMap stack: com.google.common.graph.ImmutableGraph
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 graph Lcom/google/common/graph/Graph<TN;>;
Signature: <N:Ljava/lang/Object;>(Lcom/google/common/graph/Graph<TN;>;)Lcom/google/common/graph/ImmutableGraph<TN;>;
MethodParameters:
Name Flags
graph
public static <N> com.google.common.graph.ImmutableGraph<N> copyOf(com.google.common.graph.ImmutableGraph<N>);
descriptor: (Lcom/google/common/graph/ImmutableGraph;)Lcom/google/common/graph/ImmutableGraph;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.google.common.graph.ImmutableGraph
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 graph Lcom/google/common/graph/ImmutableGraph<TN;>;
Signature: <N:Ljava/lang/Object;>(Lcom/google/common/graph/ImmutableGraph<TN;>;)Lcom/google/common/graph/ImmutableGraph<TN;>;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
graph
private static <N> com.google.common.collect.ImmutableMap<N, com.google.common.graph.GraphConnections<N, com.google.common.graph.GraphConstants$Presence>> getNodeConnections(com.google.common.graph.Graph<N>);
descriptor: (Lcom/google/common/graph/Graph;)Lcom/google/common/collect/ImmutableMap;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: invokestatic com.google.common.collect.ImmutableMap.builder:()Lcom/google/common/collect/ImmutableMap$Builder;
astore 1
start local 1 1: aload 0
invokeinterface com.google.common.graph.Graph.nodes:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 3
goto 4
StackMap locals: com.google.common.graph.Graph com.google.common.collect.ImmutableMap$Builder top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Object
astore 2
start local 2 3: aload 1
aload 2
aload 0
aload 2
invokestatic com.google.common.graph.ImmutableGraph.connectionsOf:(Lcom/google/common/graph/Graph;Ljava/lang/Object;)Lcom/google/common/graph/GraphConnections;
invokevirtual com.google.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMap$Builder;
pop
end local 2 4: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 1
invokevirtual com.google.common.collect.ImmutableMap$Builder.build:()Lcom/google/common/collect/ImmutableMap;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 graph Lcom/google/common/graph/Graph<TN;>;
1 6 1 nodeConnections Lcom/google/common/collect/ImmutableMap$Builder<TN;Lcom/google/common/graph/GraphConnections<TN;Lcom/google/common/graph/GraphConstants$Presence;>;>;
3 4 2 node TN;
Signature: <N:Ljava/lang/Object;>(Lcom/google/common/graph/Graph<TN;>;)Lcom/google/common/collect/ImmutableMap<TN;Lcom/google/common/graph/GraphConnections<TN;Lcom/google/common/graph/GraphConstants$Presence;>;>;
MethodParameters:
Name Flags
graph
private static <N> com.google.common.graph.GraphConnections<N, com.google.common.graph.GraphConstants$Presence> connectionsOf(com.google.common.graph.Graph<N>, N);
descriptor: (Lcom/google/common/graph/Graph;Ljava/lang/Object;)Lcom/google/common/graph/GraphConnections;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: getstatic com.google.common.graph.GraphConstants$Presence.EDGE_EXISTS:Lcom/google/common/graph/GraphConstants$Presence;
invokestatic com.google.common.base.Functions.constant:(Ljava/lang/Object;)Lcom/google/common/base/Function;
astore 2
start local 2 1: aload 0
invokeinterface com.google.common.graph.Graph.isDirected:()Z
ifeq 5
2: aload 0
aload 1
invokeinterface com.google.common.graph.Graph.predecessors:(Ljava/lang/Object;)Ljava/util/Set;
aload 0
aload 1
invokeinterface com.google.common.graph.Graph.successors:(Ljava/lang/Object;)Ljava/util/Set;
aload 2
invokestatic com.google.common.collect.Maps.asMap:(Ljava/util/Set;Lcom/google/common/base/Function;)Ljava/util/Map;
3: invokestatic com.google.common.graph.DirectedGraphConnections.ofImmutable:(Ljava/util/Set;Ljava/util/Map;)Lcom/google/common/graph/DirectedGraphConnections;
4: goto 7
5: StackMap locals: com.google.common.base.Function
StackMap stack:
aload 0
aload 1
invokeinterface com.google.common.graph.Graph.adjacentNodes:(Ljava/lang/Object;)Ljava/util/Set;
aload 2
invokestatic com.google.common.collect.Maps.asMap:(Ljava/util/Set;Lcom/google/common/base/Function;)Ljava/util/Map;
6: invokestatic com.google.common.graph.UndirectedGraphConnections.ofImmutable:(Ljava/util/Map;)Lcom/google/common/graph/UndirectedGraphConnections;
7: StackMap locals:
StackMap stack: com.google.common.graph.GraphConnections
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 graph Lcom/google/common/graph/Graph<TN;>;
0 8 1 node TN;
1 8 2 edgeValueFn Lcom/google/common/base/Function<Ljava/lang/Object;Lcom/google/common/graph/GraphConstants$Presence;>;
Signature: <N:Ljava/lang/Object;>(Lcom/google/common/graph/Graph<TN;>;TN;)Lcom/google/common/graph/GraphConnections<TN;Lcom/google/common/graph/GraphConstants$Presence;>;
MethodParameters:
Name Flags
graph
node
protected com.google.common.graph.BaseGraph<N> delegate();
descriptor: ()Lcom/google/common/graph/BaseGraph;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.google.common.graph.ImmutableGraph.backingGraph:Lcom/google/common/graph/BaseGraph;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/common/graph/ImmutableGraph<TN;>;
Signature: ()Lcom/google/common/graph/BaseGraph<TN;>;
public int inDegree(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokespecial com.google.common.graph.ForwardingGraph.inDegree:(Ljava/lang/Object;)I
ireturn
LocalVariableTable:
Start End Slot Name Signature
public int outDegree(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokespecial com.google.common.graph.ForwardingGraph.outDegree:(Ljava/lang/Object;)I
ireturn
LocalVariableTable:
Start End Slot Name Signature
public java.util.Set nodes();
descriptor: ()Ljava/util/Set;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial com.google.common.graph.ForwardingGraph.nodes:()Ljava/util/Set;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.util.Set predecessors(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/util/Set;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokespecial com.google.common.graph.ForwardingGraph.predecessors:(Ljava/lang/Object;)Ljava/util/Set;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.util.Set successors(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/util/Set;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokespecial com.google.common.graph.ForwardingGraph.successors:(Ljava/lang/Object;)Ljava/util/Set;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.util.Set incidentEdges(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/util/Set;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokespecial com.google.common.graph.ForwardingGraph.incidentEdges:(Ljava/lang/Object;)Ljava/util/Set;
areturn
LocalVariableTable:
Start End Slot Name Signature
public int degree(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokespecial com.google.common.graph.ForwardingGraph.degree:(Ljava/lang/Object;)I
ireturn
LocalVariableTable:
Start End Slot Name Signature
public com.google.common.graph.ElementOrder nodeOrder();
descriptor: ()Lcom/google/common/graph/ElementOrder;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial com.google.common.graph.ForwardingGraph.nodeOrder:()Lcom/google/common/graph/ElementOrder;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.util.Set edges();
descriptor: ()Ljava/util/Set;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial com.google.common.graph.ForwardingGraph.edges:()Ljava/util/Set;
areturn
LocalVariableTable:
Start End Slot Name Signature
public boolean hasEdgeConnecting(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
invokespecial com.google.common.graph.ForwardingGraph.hasEdgeConnecting:(Ljava/lang/Object;Ljava/lang/Object;)Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
public boolean allowsSelfLoops();
descriptor: ()Z
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial com.google.common.graph.ForwardingGraph.allowsSelfLoops:()Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
public boolean isDirected();
descriptor: ()Z
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial com.google.common.graph.ForwardingGraph.isDirected:()Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
public java.util.Set adjacentNodes(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/util/Set;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokespecial com.google.common.graph.ForwardingGraph.adjacentNodes:(Ljava/lang/Object;)Ljava/util/Set;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: <N:Ljava/lang/Object;>Lcom/google/common/graph/ForwardingGraph<TN;>;
SourceFile: "ImmutableGraph.java"
InnerClasses:
public Builder = com.google.common.collect.ImmutableMap$Builder of com.google.common.collect.ImmutableMap
final Presence = com.google.common.graph.GraphConstants$Presence of com.google.common.graph.GraphConstants
RuntimeVisibleAnnotations:
com.google.errorprone.annotations.Immutable(containerOf = {"N"})
RuntimeInvisibleAnnotations:
com.google.common.annotations.Beta()