tmap/smali_classes3/com/google/common/graph/NetworkBuilder.smali
2022-06-10 21:38:30 +09:00

387 lines
11 KiB
Smali

.class public final Lcom/google/common/graph/NetworkBuilder;
.super Lcom/google/common/graph/AbstractGraphBuilder;
.source "NetworkBuilder.java"
# annotations
.annotation build Lcom/google/common/annotations/Beta;
.end annotation
.annotation runtime Lcom/google/common/graph/ElementTypesAreNonnullByDefault;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<N:",
"Ljava/lang/Object;",
"E:",
"Ljava/lang/Object;",
">",
"Lcom/google/common/graph/AbstractGraphBuilder<",
"TN;>;"
}
.end annotation
# instance fields
.field public allowsParallelEdges:Z
.field public edgeOrder:Lcom/google/common/graph/ElementOrder;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/google/common/graph/ElementOrder<",
"-TE;>;"
}
.end annotation
.end field
.field public expectedEdgeCount:Lcom/google/common/base/Optional;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/google/common/base/Optional<",
"Ljava/lang/Integer;",
">;"
}
.end annotation
.end field
# direct methods
.method private constructor <init>(Z)V
.locals 0
.line 1
invoke-direct {p0, p1}, Lcom/google/common/graph/AbstractGraphBuilder;-><init>(Z)V
const/4 p1, 0x0
.line 2
iput-boolean p1, p0, Lcom/google/common/graph/NetworkBuilder;->allowsParallelEdges:Z
.line 3
invoke-static {}, Lcom/google/common/graph/ElementOrder;->insertion()Lcom/google/common/graph/ElementOrder;
move-result-object p1
iput-object p1, p0, Lcom/google/common/graph/NetworkBuilder;->edgeOrder:Lcom/google/common/graph/ElementOrder;
.line 4
invoke-static {}, Lcom/google/common/base/Optional;->absent()Lcom/google/common/base/Optional;
move-result-object p1
iput-object p1, p0, Lcom/google/common/graph/NetworkBuilder;->expectedEdgeCount:Lcom/google/common/base/Optional;
return-void
.end method
.method private cast()Lcom/google/common/graph/NetworkBuilder;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"<N1:TN;E1:TE;>()",
"Lcom/google/common/graph/NetworkBuilder<",
"TN1;TE1;>;"
}
.end annotation
return-object p0
.end method
.method public static directed()Lcom/google/common/graph/NetworkBuilder;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Lcom/google/common/graph/NetworkBuilder<",
"Ljava/lang/Object;",
"Ljava/lang/Object;",
">;"
}
.end annotation
.line 1
new-instance v0, Lcom/google/common/graph/NetworkBuilder;
const/4 v1, 0x1
invoke-direct {v0, v1}, Lcom/google/common/graph/NetworkBuilder;-><init>(Z)V
return-object v0
.end method
.method public static from(Lcom/google/common/graph/Network;)Lcom/google/common/graph/NetworkBuilder;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"<N:",
"Ljava/lang/Object;",
"E:",
"Ljava/lang/Object;",
">(",
"Lcom/google/common/graph/Network<",
"TN;TE;>;)",
"Lcom/google/common/graph/NetworkBuilder<",
"TN;TE;>;"
}
.end annotation
.line 1
new-instance v0, Lcom/google/common/graph/NetworkBuilder;
invoke-interface {p0}, Lcom/google/common/graph/Network;->isDirected()Z
move-result v1
invoke-direct {v0, v1}, Lcom/google/common/graph/NetworkBuilder;-><init>(Z)V
.line 2
invoke-interface {p0}, Lcom/google/common/graph/Network;->allowsParallelEdges()Z
move-result v1
invoke-virtual {v0, v1}, Lcom/google/common/graph/NetworkBuilder;->allowsParallelEdges(Z)Lcom/google/common/graph/NetworkBuilder;
move-result-object v0
.line 3
invoke-interface {p0}, Lcom/google/common/graph/Network;->allowsSelfLoops()Z
move-result v1
invoke-virtual {v0, v1}, Lcom/google/common/graph/NetworkBuilder;->allowsSelfLoops(Z)Lcom/google/common/graph/NetworkBuilder;
move-result-object v0
.line 4
invoke-interface {p0}, Lcom/google/common/graph/Network;->nodeOrder()Lcom/google/common/graph/ElementOrder;
move-result-object v1
invoke-virtual {v0, v1}, Lcom/google/common/graph/NetworkBuilder;->nodeOrder(Lcom/google/common/graph/ElementOrder;)Lcom/google/common/graph/NetworkBuilder;
move-result-object v0
.line 5
invoke-interface {p0}, Lcom/google/common/graph/Network;->edgeOrder()Lcom/google/common/graph/ElementOrder;
move-result-object p0
invoke-virtual {v0, p0}, Lcom/google/common/graph/NetworkBuilder;->edgeOrder(Lcom/google/common/graph/ElementOrder;)Lcom/google/common/graph/NetworkBuilder;
move-result-object p0
return-object p0
.end method
.method public static undirected()Lcom/google/common/graph/NetworkBuilder;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Lcom/google/common/graph/NetworkBuilder<",
"Ljava/lang/Object;",
"Ljava/lang/Object;",
">;"
}
.end annotation
.line 1
new-instance v0, Lcom/google/common/graph/NetworkBuilder;
const/4 v1, 0x0
invoke-direct {v0, v1}, Lcom/google/common/graph/NetworkBuilder;-><init>(Z)V
return-object v0
.end method
# virtual methods
.method public allowsParallelEdges(Z)Lcom/google/common/graph/NetworkBuilder;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(Z)",
"Lcom/google/common/graph/NetworkBuilder<",
"TN;TE;>;"
}
.end annotation
.line 1
iput-boolean p1, p0, Lcom/google/common/graph/NetworkBuilder;->allowsParallelEdges:Z
return-object p0
.end method
.method public allowsSelfLoops(Z)Lcom/google/common/graph/NetworkBuilder;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(Z)",
"Lcom/google/common/graph/NetworkBuilder<",
"TN;TE;>;"
}
.end annotation
.line 1
iput-boolean p1, p0, Lcom/google/common/graph/AbstractGraphBuilder;->allowsSelfLoops:Z
return-object p0
.end method
.method public build()Lcom/google/common/graph/MutableNetwork;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"<N1:TN;E1:TE;>()",
"Lcom/google/common/graph/MutableNetwork<",
"TN1;TE1;>;"
}
.end annotation
.line 1
new-instance v0, Lcom/google/common/graph/StandardMutableNetwork;
invoke-direct {v0, p0}, Lcom/google/common/graph/StandardMutableNetwork;-><init>(Lcom/google/common/graph/NetworkBuilder;)V
return-object v0
.end method
.method public edgeOrder(Lcom/google/common/graph/ElementOrder;)Lcom/google/common/graph/NetworkBuilder;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"<E1:TE;>(",
"Lcom/google/common/graph/ElementOrder<",
"TE1;>;)",
"Lcom/google/common/graph/NetworkBuilder<",
"TN;TE1;>;"
}
.end annotation
.line 1
invoke-direct {p0}, Lcom/google/common/graph/NetworkBuilder;->cast()Lcom/google/common/graph/NetworkBuilder;
move-result-object v0
.line 2
invoke-static {p1}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Lcom/google/common/graph/ElementOrder;
iput-object p1, v0, Lcom/google/common/graph/NetworkBuilder;->edgeOrder:Lcom/google/common/graph/ElementOrder;
return-object v0
.end method
.method public expectedEdgeCount(I)Lcom/google/common/graph/NetworkBuilder;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(I)",
"Lcom/google/common/graph/NetworkBuilder<",
"TN;TE;>;"
}
.end annotation
.line 1
invoke-static {p1}, Lcom/google/common/graph/Graphs;->checkNonNegative(I)I
move-result p1
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
invoke-static {p1}, Lcom/google/common/base/Optional;->of(Ljava/lang/Object;)Lcom/google/common/base/Optional;
move-result-object p1
iput-object p1, p0, Lcom/google/common/graph/NetworkBuilder;->expectedEdgeCount:Lcom/google/common/base/Optional;
return-object p0
.end method
.method public expectedNodeCount(I)Lcom/google/common/graph/NetworkBuilder;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(I)",
"Lcom/google/common/graph/NetworkBuilder<",
"TN;TE;>;"
}
.end annotation
.line 1
invoke-static {p1}, Lcom/google/common/graph/Graphs;->checkNonNegative(I)I
move-result p1
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
invoke-static {p1}, Lcom/google/common/base/Optional;->of(Ljava/lang/Object;)Lcom/google/common/base/Optional;
move-result-object p1
iput-object p1, p0, Lcom/google/common/graph/AbstractGraphBuilder;->expectedNodeCount:Lcom/google/common/base/Optional;
return-object p0
.end method
.method public immutable()Lcom/google/common/graph/ImmutableNetwork$Builder;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"<N1:TN;E1:TE;>()",
"Lcom/google/common/graph/ImmutableNetwork$Builder<",
"TN1;TE1;>;"
}
.end annotation
.line 1
invoke-direct {p0}, Lcom/google/common/graph/NetworkBuilder;->cast()Lcom/google/common/graph/NetworkBuilder;
move-result-object v0
.line 2
new-instance v1, Lcom/google/common/graph/ImmutableNetwork$Builder;
invoke-direct {v1, v0}, Lcom/google/common/graph/ImmutableNetwork$Builder;-><init>(Lcom/google/common/graph/NetworkBuilder;)V
return-object v1
.end method
.method public nodeOrder(Lcom/google/common/graph/ElementOrder;)Lcom/google/common/graph/NetworkBuilder;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"<N1:TN;>(",
"Lcom/google/common/graph/ElementOrder<",
"TN1;>;)",
"Lcom/google/common/graph/NetworkBuilder<",
"TN1;TE;>;"
}
.end annotation
.line 1
invoke-direct {p0}, Lcom/google/common/graph/NetworkBuilder;->cast()Lcom/google/common/graph/NetworkBuilder;
move-result-object v0
.line 2
invoke-static {p1}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Lcom/google/common/graph/ElementOrder;
iput-object p1, v0, Lcom/google/common/graph/AbstractGraphBuilder;->nodeOrder:Lcom/google/common/graph/ElementOrder;
return-object v0
.end method