public abstract class oadd.com.google.common.graph.AbstractNetwork extends java.lang.Object implements oadd.com.google.common.graph.Network
{
public void <init>()
{
oadd.com.google.common.graph.AbstractNetwork v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public oadd.com.google.common.graph.Graph asGraph()
{
oadd.com.google.common.graph.AbstractNetwork v;
oadd.com.google.common.graph.AbstractNetwork$1 v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v = new oadd.com.google.common.graph.AbstractNetwork$1;
specialinvoke v.<oadd.com.google.common.graph.AbstractNetwork$1: void <init>(oadd.com.google.common.graph.AbstractNetwork)>(v);
return v;
}
public int degree(java.lang.Object)
{
oadd.com.google.common.graph.AbstractNetwork v;
java.util.Set v, v, v, v;
int v, v, v, v, v, v;
java.lang.Object v;
boolean v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: boolean isDirected()>();
if v == 0 goto label;
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.util.Set inEdges(java.lang.Object)>(v);
v = interfaceinvoke v.<java.util.Set: int size()>();
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.util.Set outEdges(java.lang.Object)>(v);
v = interfaceinvoke v.<java.util.Set: int size()>();
v = staticinvoke <oadd.com.google.common.math.IntMath: int saturatedAdd(int,int)>(v, v);
return v;
label:
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.util.Set incidentEdges(java.lang.Object)>(v);
v = interfaceinvoke v.<java.util.Set: int size()>();
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.util.Set edgesConnecting(java.lang.Object,java.lang.Object)>(v, v);
v = interfaceinvoke v.<java.util.Set: int size()>();
v = staticinvoke <oadd.com.google.common.math.IntMath: int saturatedAdd(int,int)>(v, v);
return v;
}
public int inDegree(java.lang.Object)
{
oadd.com.google.common.graph.AbstractNetwork v;
int v;
java.util.Set v;
java.lang.Object v;
boolean v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: boolean isDirected()>();
if v == 0 goto label;
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.util.Set inEdges(java.lang.Object)>(v);
v = interfaceinvoke v.<java.util.Set: int size()>();
goto label;
label:
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: int degree(java.lang.Object)>(v);
label:
return v;
}
public int outDegree(java.lang.Object)
{
oadd.com.google.common.graph.AbstractNetwork v;
int v;
java.util.Set v;
java.lang.Object v;
boolean v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: boolean isDirected()>();
if v == 0 goto label;
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.util.Set outEdges(java.lang.Object)>(v);
v = interfaceinvoke v.<java.util.Set: int size()>();
goto label;
label:
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: int degree(java.lang.Object)>(v);
label:
return v;
}
public java.util.Set adjacentEdges(java.lang.Object)
{
oadd.com.google.common.graph.AbstractNetwork v;
java.util.Set v, v;
oadd.com.google.common.collect.Sets$SetView v, v;
java.lang.Object v, v, v;
oadd.com.google.common.graph.EndpointPair v;
oadd.com.google.common.collect.ImmutableSet v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: oadd.com.google.common.graph.EndpointPair incidentNodes(java.lang.Object)>(v);
v = virtualinvoke v.<oadd.com.google.common.graph.EndpointPair: java.lang.Object nodeU()>();
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.util.Set incidentEdges(java.lang.Object)>(v);
v = virtualinvoke v.<oadd.com.google.common.graph.EndpointPair: java.lang.Object nodeV()>();
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.util.Set incidentEdges(java.lang.Object)>(v);
v = staticinvoke <oadd.com.google.common.collect.Sets: oadd.com.google.common.collect.Sets$SetView union(java.util.Set,java.util.Set)>(v, v);
v = staticinvoke <oadd.com.google.common.collect.ImmutableSet: oadd.com.google.common.collect.ImmutableSet of(java.lang.Object)>(v);
v = staticinvoke <oadd.com.google.common.collect.Sets: oadd.com.google.common.collect.Sets$SetView difference(java.util.Set,java.util.Set)>(v, v);
return v;
}
public java.util.Set edgesConnecting(java.lang.Object, java.lang.Object)
{
oadd.com.google.common.graph.AbstractNetwork v;
oadd.com.google.common.base.Predicate v, v;
java.util.Set v, v, v, v, v;
int v, v;
java.lang.Object v, v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.util.Set outEdges(java.lang.Object)>(v);
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.util.Set inEdges(java.lang.Object)>(v);
v = interfaceinvoke v.<java.util.Set: int size()>();
v = interfaceinvoke v.<java.util.Set: int size()>();
if v > v goto label;
v = specialinvoke v.<oadd.com.google.common.graph.AbstractNetwork: oadd.com.google.common.base.Predicate connectedPredicate(java.lang.Object,java.lang.Object)>(v, v);
v = staticinvoke <oadd.com.google.common.collect.Sets: java.util.Set filter(java.util.Set,oadd.com.google.common.base.Predicate)>(v, v);
v = staticinvoke <java.util.Collections: java.util.Set unmodifiableSet(java.util.Set)>(v);
goto label;
label:
v = specialinvoke v.<oadd.com.google.common.graph.AbstractNetwork: oadd.com.google.common.base.Predicate connectedPredicate(java.lang.Object,java.lang.Object)>(v, v);
v = staticinvoke <oadd.com.google.common.collect.Sets: java.util.Set filter(java.util.Set,oadd.com.google.common.base.Predicate)>(v, v);
v = staticinvoke <java.util.Collections: java.util.Set unmodifiableSet(java.util.Set)>(v);
label:
return v;
}
public java.util.Set edgesConnecting(oadd.com.google.common.graph.EndpointPair)
{
oadd.com.google.common.graph.AbstractNetwork v;
java.util.Set v;
java.lang.Object v, v;
oadd.com.google.common.graph.EndpointPair v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v := @parameter: oadd.com.google.common.graph.EndpointPair;
virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: void validateEndpoints(oadd.com.google.common.graph.EndpointPair)>(v);
v = virtualinvoke v.<oadd.com.google.common.graph.EndpointPair: java.lang.Object nodeU()>();
v = virtualinvoke v.<oadd.com.google.common.graph.EndpointPair: java.lang.Object nodeV()>();
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.util.Set edgesConnecting(java.lang.Object,java.lang.Object)>(v, v);
return v;
}
private oadd.com.google.common.base.Predicate connectedPredicate(java.lang.Object, java.lang.Object)
{
oadd.com.google.common.graph.AbstractNetwork v;
java.lang.Object v, v;
oadd.com.google.common.graph.AbstractNetwork$2 v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v = new oadd.com.google.common.graph.AbstractNetwork$2;
specialinvoke v.<oadd.com.google.common.graph.AbstractNetwork$2: void <init>(oadd.com.google.common.graph.AbstractNetwork,java.lang.Object,java.lang.Object)>(v, v, v);
return v;
}
public java.util.Optional edgeConnecting(java.lang.Object, java.lang.Object)
{
oadd.com.google.common.graph.AbstractNetwork v;
java.util.Optional v;
java.lang.Object v, v, v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.lang.Object edgeConnectingOrNull(java.lang.Object,java.lang.Object)>(v, v);
v = staticinvoke <java.util.Optional: java.util.Optional ofNullable(java.lang.Object)>(v);
return v;
}
public java.util.Optional edgeConnecting(oadd.com.google.common.graph.EndpointPair)
{
oadd.com.google.common.graph.AbstractNetwork v;
java.util.Optional v;
java.lang.Object v, v;
oadd.com.google.common.graph.EndpointPair v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v := @parameter: oadd.com.google.common.graph.EndpointPair;
virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: void validateEndpoints(oadd.com.google.common.graph.EndpointPair)>(v);
v = virtualinvoke v.<oadd.com.google.common.graph.EndpointPair: java.lang.Object nodeU()>();
v = virtualinvoke v.<oadd.com.google.common.graph.EndpointPair: java.lang.Object nodeV()>();
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.util.Optional edgeConnecting(java.lang.Object,java.lang.Object)>(v, v);
return v;
}
public java.lang.Object edgeConnectingOrNull(java.lang.Object, java.lang.Object)
{
oadd.com.google.common.graph.AbstractNetwork v;
java.lang.Object[] v;
java.util.Iterator v;
java.util.Set v;
java.lang.IllegalArgumentException v;
int v;
java.lang.Object v, v, v;
java.lang.String v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.util.Set edgesConnecting(java.lang.Object,java.lang.Object)>(v, v);
v = interfaceinvoke v.<java.util.Set: int size()>();
lookupswitch(v)
{
case 0: goto label;
case 1: goto label;
default: goto label;
};
label:
return null;
label:
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
return v;
label:
v = new java.lang.IllegalArgumentException;
v = newarray (java.lang.Object)[2];
v[0] = v;
v[1] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("Cannot call edgeConnecting() when parallel edges exist between %s and %s. Consider calling edgesConnecting() instead.", v);
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
}
public java.lang.Object edgeConnectingOrNull(oadd.com.google.common.graph.EndpointPair)
{
oadd.com.google.common.graph.AbstractNetwork v;
java.lang.Object v, v, v;
oadd.com.google.common.graph.EndpointPair v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v := @parameter: oadd.com.google.common.graph.EndpointPair;
virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: void validateEndpoints(oadd.com.google.common.graph.EndpointPair)>(v);
v = virtualinvoke v.<oadd.com.google.common.graph.EndpointPair: java.lang.Object nodeU()>();
v = virtualinvoke v.<oadd.com.google.common.graph.EndpointPair: java.lang.Object nodeV()>();
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.lang.Object edgeConnectingOrNull(java.lang.Object,java.lang.Object)>(v, v);
return v;
}
public boolean hasEdgeConnecting(java.lang.Object, java.lang.Object)
{
oadd.com.google.common.graph.AbstractNetwork v;
java.util.Set v, v;
java.lang.Object v, v;
boolean v, v, v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
staticinvoke <oadd.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
staticinvoke <oadd.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.util.Set nodes()>();
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
if v == 0 goto label;
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.util.Set successors(java.lang.Object)>(v);
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public boolean hasEdgeConnecting(oadd.com.google.common.graph.EndpointPair)
{
oadd.com.google.common.graph.AbstractNetwork v;
java.lang.Object v, v;
oadd.com.google.common.graph.EndpointPair v;
boolean v, v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v := @parameter: oadd.com.google.common.graph.EndpointPair;
staticinvoke <oadd.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: boolean isOrderingCompatible(oadd.com.google.common.graph.EndpointPair)>(v);
if v != 0 goto label;
return 0;
label:
v = virtualinvoke v.<oadd.com.google.common.graph.EndpointPair: java.lang.Object nodeU()>();
v = virtualinvoke v.<oadd.com.google.common.graph.EndpointPair: java.lang.Object nodeV()>();
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: boolean hasEdgeConnecting(java.lang.Object,java.lang.Object)>(v, v);
return v;
}
protected final void validateEndpoints(oadd.com.google.common.graph.EndpointPair)
{
oadd.com.google.common.graph.AbstractNetwork v;
oadd.com.google.common.graph.EndpointPair v;
boolean v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v := @parameter: oadd.com.google.common.graph.EndpointPair;
staticinvoke <oadd.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: boolean isOrderingCompatible(oadd.com.google.common.graph.EndpointPair)>(v);
staticinvoke <oadd.com.google.common.base.Preconditions: void checkArgument(boolean,java.lang.Object)>(v, "Mismatch: unordered endpoints cannot be used with directed graphs");
return;
}
protected final boolean isOrderingCompatible(oadd.com.google.common.graph.EndpointPair)
{
oadd.com.google.common.graph.AbstractNetwork v;
oadd.com.google.common.graph.EndpointPair v;
boolean v, v, v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v := @parameter: oadd.com.google.common.graph.EndpointPair;
v = virtualinvoke v.<oadd.com.google.common.graph.EndpointPair: boolean isOrdered()>();
if v != 0 goto label;
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: boolean isDirected()>();
if v != 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public final boolean equals(java.lang.Object)
{
oadd.com.google.common.graph.AbstractNetwork v;
java.util.Set v, v;
java.util.Map v, v;
java.lang.Object v;
boolean v, v, v, v, v, v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v := @parameter: java.lang.Object;
if v != v goto label;
return 1;
label:
v = v instanceof oadd.com.google.common.graph.Network;
if v != 0 goto label;
return 0;
label:
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: boolean isDirected()>();
v = interfaceinvoke v.<oadd.com.google.common.graph.Network: boolean isDirected()>();
if v != v goto label;
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.util.Set nodes()>();
v = interfaceinvoke v.<oadd.com.google.common.graph.Network: java.util.Set nodes()>();
v = interfaceinvoke v.<java.util.Set: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = staticinvoke <oadd.com.google.common.graph.AbstractNetwork: java.util.Map edgeIncidentNodesMap(oadd.com.google.common.graph.Network)>(v);
v = staticinvoke <oadd.com.google.common.graph.AbstractNetwork: java.util.Map edgeIncidentNodesMap(oadd.com.google.common.graph.Network)>(v);
v = interfaceinvoke v.<java.util.Map: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public final int hashCode()
{
int v;
oadd.com.google.common.graph.AbstractNetwork v;
java.util.Map v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v = staticinvoke <oadd.com.google.common.graph.AbstractNetwork: java.util.Map edgeIncidentNodesMap(oadd.com.google.common.graph.Network)>(v);
v = interfaceinvoke v.<java.util.Map: int hashCode()>();
return v;
}
public java.lang.String toString()
{
oadd.com.google.common.graph.AbstractNetwork v;
java.util.Map v;
int v, v, v, v;
java.lang.String v, v, v, v, v;
boolean v, v, v;
java.util.Set v;
java.lang.StringBuilder v;
v := @this: oadd.com.google.common.graph.AbstractNetwork;
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: boolean isDirected()>();
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: boolean allowsParallelEdges()>();
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: boolean allowsSelfLoops()>();
v = virtualinvoke v.<oadd.com.google.common.graph.AbstractNetwork: java.util.Set nodes()>();
v = staticinvoke <java.lang.String: java.lang.String valueOf(java.lang.Object)>(v);
v = staticinvoke <oadd.com.google.common.graph.AbstractNetwork: java.util.Map edgeIncidentNodesMap(oadd.com.google.common.graph.Network)>(v);
v = staticinvoke <java.lang.String: java.lang.String valueOf(java.lang.Object)>(v);
v = staticinvoke <java.lang.String: java.lang.String valueOf(java.lang.Object)>(v);
v = virtualinvoke v.<java.lang.String: int length()>();
v = 87 + v;
v = staticinvoke <java.lang.String: java.lang.String valueOf(java.lang.Object)>(v);
v = virtualinvoke v.<java.lang.String: int length()>();
v = v + v;
specialinvoke v.<java.lang.StringBuilder: void <init>(int)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (boolean,boolean,boolean,java.lang.String,java.lang.String)>(v, v, v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("isDirected: \u, allowsParallelEdges: \u, allowsSelfLoops: \u, nodes: \u, edges: \u0001");
return v;
}
private static java.util.Map edgeIncidentNodesMap(oadd.com.google.common.graph.Network)
{
oadd.com.google.common.graph.Network v;
java.util.Map v;
java.util.Set v;
oadd.com.google.common.graph.AbstractNetwork$3 v;
v := @parameter: oadd.com.google.common.graph.Network;
v = new oadd.com.google.common.graph.AbstractNetwork$3;
specialinvoke v.<oadd.com.google.common.graph.AbstractNetwork$3: void <init>(oadd.com.google.common.graph.Network)>(v);
v = interfaceinvoke v.<oadd.com.google.common.graph.Network: java.util.Set edges()>();
v = staticinvoke <oadd.com.google.common.collect.Maps: java.util.Map asMap(java.util.Set,oadd.com.google.common.base.Function)>(v, v);
return v;
}
}